/* Generated by Cython 3.0.7 */

/* BEGIN: Cython Metadata
{
    "distutils": {
        "depends": [
            "/io/cuda/include/cuda",
            "/io/cuda/include/cuda.h",
            "/io/cuda/include/cudaProfiler.h",
            "cuda/_cuda/loader.h"
        ],
        "extra_compile_args": [
            "-std=c++14",
            "-fpermissive",
            "-Wno-deprecated-declarations",
            "-D _GLIBCXX_ASSERTIONS",
            "-fno-var-tracking-assignments",
            "-O3"
        ],
        "include_dirs": [
            "cuda",
            "cuda/_cuda",
            "/opt/conda/conda-bld/cuda-python_1705509865348/_h_env_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_p/include",
            "/io/cuda/include"
        ],
        "language": "c++",
        "library_dirs": [
            "/opt/conda/conda-bld/cuda-python_1705509865348/_h_env_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_p/lib/python3.9/site-packages",
            "/opt/conda/conda-bld/cuda-python_1705509865348/_h_env_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_p/lib"
        ],
        "name": "cuda._cuda.ccuda",
        "sources": [
            "cuda/_cuda/ccuda.pyx",
            "cuda/_cuda/loader.cpp"
        ]
    },
    "module_name": "cuda._cuda.ccuda"
}
END: Cython Metadata */

#ifndef PY_SSIZE_T_CLEAN
#define PY_SSIZE_T_CLEAN
#endif /* PY_SSIZE_T_CLEAN */
#if defined(CYTHON_LIMITED_API) && 0
  #ifndef Py_LIMITED_API
    #if CYTHON_LIMITED_API+0 > 0x03030000
      #define Py_LIMITED_API CYTHON_LIMITED_API
    #else
      #define Py_LIMITED_API 0x03030000
    #endif
  #endif
#endif

#include "Python.h"
#ifndef Py_PYTHON_H
    #error Python headers needed to compile C extensions, please install development version of Python.
#elif PY_VERSION_HEX < 0x02070000 || (0x03000000 <= PY_VERSION_HEX && PY_VERSION_HEX < 0x03030000)
    #error Cython requires Python 2.7+ or Python 3.3+.
#else
#if defined(CYTHON_LIMITED_API) && CYTHON_LIMITED_API
#define __PYX_EXTRA_ABI_MODULE_NAME "limited"
#else
#define __PYX_EXTRA_ABI_MODULE_NAME ""
#endif
#define CYTHON_ABI "3_0_7" __PYX_EXTRA_ABI_MODULE_NAME
#define __PYX_ABI_MODULE_NAME "_cython_" CYTHON_ABI
#define __PYX_TYPE_MODULE_PREFIX __PYX_ABI_MODULE_NAME "."
#define CYTHON_HEX_VERSION 0x030007F0
#define CYTHON_FUTURE_DIVISION 1
#include <stddef.h>
#ifndef offsetof
  #define offsetof(type, member) ( (size_t) & ((type*)0) -> member )
#endif
#if !defined(_WIN32) && !defined(WIN32) && !defined(MS_WINDOWS)
  #ifndef __stdcall
    #define __stdcall
  #endif
  #ifndef __cdecl
    #define __cdecl
  #endif
  #ifndef __fastcall
    #define __fastcall
  #endif
#endif
#ifndef DL_IMPORT
  #define DL_IMPORT(t) t
#endif
#ifndef DL_EXPORT
  #define DL_EXPORT(t) t
#endif
#define __PYX_COMMA ,
#ifndef HAVE_LONG_LONG
  #define HAVE_LONG_LONG
#endif
#ifndef PY_LONG_LONG
  #define PY_LONG_LONG LONG_LONG
#endif
#ifndef Py_HUGE_VAL
  #define Py_HUGE_VAL HUGE_VAL
#endif
#define __PYX_LIMITED_VERSION_HEX PY_VERSION_HEX
#if defined(GRAALVM_PYTHON)
  /* For very preliminary testing purposes. Most variables are set the same as PyPy.
     The existence of this section does not imply that anything works or is even tested */
  #define CYTHON_COMPILING_IN_PYPY 0
  #define CYTHON_COMPILING_IN_CPYTHON 0
  #define CYTHON_COMPILING_IN_LIMITED_API 0
  #define CYTHON_COMPILING_IN_GRAAL 1
  #define CYTHON_COMPILING_IN_NOGIL 0
  #undef CYTHON_USE_TYPE_SLOTS
  #define CYTHON_USE_TYPE_SLOTS 0
  #undef CYTHON_USE_TYPE_SPECS
  #define CYTHON_USE_TYPE_SPECS 0
  #undef CYTHON_USE_PYTYPE_LOOKUP
  #define CYTHON_USE_PYTYPE_LOOKUP 0
  #if PY_VERSION_HEX < 0x03050000
    #undef CYTHON_USE_ASYNC_SLOTS
    #define CYTHON_USE_ASYNC_SLOTS 0
  #elif !defined(CYTHON_USE_ASYNC_SLOTS)
    #define CYTHON_USE_ASYNC_SLOTS 1
  #endif
  #undef CYTHON_USE_PYLIST_INTERNALS
  #define CYTHON_USE_PYLIST_INTERNALS 0
  #undef CYTHON_USE_UNICODE_INTERNALS
  #define CYTHON_USE_UNICODE_INTERNALS 0
  #undef CYTHON_USE_UNICODE_WRITER
  #define CYTHON_USE_UNICODE_WRITER 0
  #undef CYTHON_USE_PYLONG_INTERNALS
  #define CYTHON_USE_PYLONG_INTERNALS 0
  #undef CYTHON_AVOID_BORROWED_REFS
  #define CYTHON_AVOID_BORROWED_REFS 1
  #undef CYTHON_ASSUME_SAFE_MACROS
  #define CYTHON_ASSUME_SAFE_MACROS 0
  #undef CYTHON_UNPACK_METHODS
  #define CYTHON_UNPACK_METHODS 0
  #undef CYTHON_FAST_THREAD_STATE
  #define CYTHON_FAST_THREAD_STATE 0
  #undef CYTHON_FAST_GIL
  #define CYTHON_FAST_GIL 0
  #undef CYTHON_METH_FASTCALL
  #define CYTHON_METH_FASTCALL 0
  #undef CYTHON_FAST_PYCALL
  #define CYTHON_FAST_PYCALL 0
  #ifndef CYTHON_PEP487_INIT_SUBCLASS
    #define CYTHON_PEP487_INIT_SUBCLASS (PY_MAJOR_VERSION >= 3)
  #endif
  #undef CYTHON_PEP489_MULTI_PHASE_INIT
  #define CYTHON_PEP489_MULTI_PHASE_INIT 1
  #undef CYTHON_USE_MODULE_STATE
  #define CYTHON_USE_MODULE_STATE 0
  #undef CYTHON_USE_TP_FINALIZE
  #define CYTHON_USE_TP_FINALIZE 0
  #undef CYTHON_USE_DICT_VERSIONS
  #define CYTHON_USE_DICT_VERSIONS 0
  #undef CYTHON_USE_EXC_INFO_STACK
  #define CYTHON_USE_EXC_INFO_STACK 0
  #ifndef CYTHON_UPDATE_DESCRIPTOR_DOC
    #define CYTHON_UPDATE_DESCRIPTOR_DOC 0
  #endif
#elif defined(PYPY_VERSION)
  #define CYTHON_COMPILING_IN_PYPY 1
  #define CYTHON_COMPILING_IN_CPYTHON 0
  #define CYTHON_COMPILING_IN_LIMITED_API 0
  #define CYTHON_COMPILING_IN_GRAAL 0
  #define CYTHON_COMPILING_IN_NOGIL 0
  #undef CYTHON_USE_TYPE_SLOTS
  #define CYTHON_USE_TYPE_SLOTS 0
  #ifndef CYTHON_USE_TYPE_SPECS
    #define CYTHON_USE_TYPE_SPECS 0
  #endif
  #undef CYTHON_USE_PYTYPE_LOOKUP
  #define CYTHON_USE_PYTYPE_LOOKUP 0
  #if PY_VERSION_HEX < 0x03050000
    #undef CYTHON_USE_ASYNC_SLOTS
    #define CYTHON_USE_ASYNC_SLOTS 0
  #elif !defined(CYTHON_USE_ASYNC_SLOTS)
    #define CYTHON_USE_ASYNC_SLOTS 1
  #endif
  #undef CYTHON_USE_PYLIST_INTERNALS
  #define CYTHON_USE_PYLIST_INTERNALS 0
  #undef CYTHON_USE_UNICODE_INTERNALS
  #define CYTHON_USE_UNICODE_INTERNALS 0
  #undef CYTHON_USE_UNICODE_WRITER
  #define CYTHON_USE_UNICODE_WRITER 0
  #undef CYTHON_USE_PYLONG_INTERNALS
  #define CYTHON_USE_PYLONG_INTERNALS 0
  #undef CYTHON_AVOID_BORROWED_REFS
  #define CYTHON_AVOID_BORROWED_REFS 1
  #undef CYTHON_ASSUME_SAFE_MACROS
  #define CYTHON_ASSUME_SAFE_MACROS 0
  #undef CYTHON_UNPACK_METHODS
  #define CYTHON_UNPACK_METHODS 0
  #undef CYTHON_FAST_THREAD_STATE
  #define CYTHON_FAST_THREAD_STATE 0
  #undef CYTHON_FAST_GIL
  #define CYTHON_FAST_GIL 0
  #undef CYTHON_METH_FASTCALL
  #define CYTHON_METH_FASTCALL 0
  #undef CYTHON_FAST_PYCALL
  #define CYTHON_FAST_PYCALL 0
  #ifndef CYTHON_PEP487_INIT_SUBCLASS
    #define CYTHON_PEP487_INIT_SUBCLASS (PY_MAJOR_VERSION >= 3)
  #endif
  #if PY_VERSION_HEX < 0x03090000
    #undef CYTHON_PEP489_MULTI_PHASE_INIT
    #define CYTHON_PEP489_MULTI_PHASE_INIT 0
  #elif !defined(CYTHON_PEP489_MULTI_PHASE_INIT)
    #define CYTHON_PEP489_MULTI_PHASE_INIT 1
  #endif
  #undef CYTHON_USE_MODULE_STATE
  #define CYTHON_USE_MODULE_STATE 0
  #undef CYTHON_USE_TP_FINALIZE
  #define CYTHON_USE_TP_FINALIZE (PY_VERSION_HEX >= 0x030400a1 && PYPY_VERSION_NUM >= 0x07030C00)
  #undef CYTHON_USE_DICT_VERSIONS
  #define CYTHON_USE_DICT_VERSIONS 0
  #undef CYTHON_USE_EXC_INFO_STACK
  #define CYTHON_USE_EXC_INFO_STACK 0
  #ifndef CYTHON_UPDATE_DESCRIPTOR_DOC
    #define CYTHON_UPDATE_DESCRIPTOR_DOC 0
  #endif
#elif defined(CYTHON_LIMITED_API)
  #ifdef Py_LIMITED_API
    #undef __PYX_LIMITED_VERSION_HEX
    #define __PYX_LIMITED_VERSION_HEX Py_LIMITED_API
  #endif
  #define CYTHON_COMPILING_IN_PYPY 0
  #define CYTHON_COMPILING_IN_CPYTHON 0
  #define CYTHON_COMPILING_IN_LIMITED_API 1
  #define CYTHON_COMPILING_IN_GRAAL 0
  #define CYTHON_COMPILING_IN_NOGIL 0
  #undef CYTHON_CLINE_IN_TRACEBACK
  #define CYTHON_CLINE_IN_TRACEBACK 0
  #undef CYTHON_USE_TYPE_SLOTS
  #define CYTHON_USE_TYPE_SLOTS 0
  #undef CYTHON_USE_TYPE_SPECS
  #define CYTHON_USE_TYPE_SPECS 1
  #undef CYTHON_USE_PYTYPE_LOOKUP
  #define CYTHON_USE_PYTYPE_LOOKUP 0
  #undef CYTHON_USE_ASYNC_SLOTS
  #define CYTHON_USE_ASYNC_SLOTS 0
  #undef CYTHON_USE_PYLIST_INTERNALS
  #define CYTHON_USE_PYLIST_INTERNALS 0
  #undef CYTHON_USE_UNICODE_INTERNALS
  #define CYTHON_USE_UNICODE_INTERNALS 0
  #ifndef CYTHON_USE_UNICODE_WRITER
    #define CYTHON_USE_UNICODE_WRITER 0
  #endif
  #undef CYTHON_USE_PYLONG_INTERNALS
  #define CYTHON_USE_PYLONG_INTERNALS 0
  #ifndef CYTHON_AVOID_BORROWED_REFS
    #define CYTHON_AVOID_BORROWED_REFS 0
  #endif
  #undef CYTHON_ASSUME_SAFE_MACROS
  #define CYTHON_ASSUME_SAFE_MACROS 0
  #undef CYTHON_UNPACK_METHODS
  #define CYTHON_UNPACK_METHODS 0
  #undef CYTHON_FAST_THREAD_STATE
  #define CYTHON_FAST_THREAD_STATE 0
  #undef CYTHON_FAST_GIL
  #define CYTHON_FAST_GIL 0
  #undef CYTHON_METH_FASTCALL
  #define CYTHON_METH_FASTCALL 0
  #undef CYTHON_FAST_PYCALL
  #define CYTHON_FAST_PYCALL 0
  #ifndef CYTHON_PEP487_INIT_SUBCLASS
    #define CYTHON_PEP487_INIT_SUBCLASS 1
  #endif
  #undef CYTHON_PEP489_MULTI_PHASE_INIT
  #define CYTHON_PEP489_MULTI_PHASE_INIT 0
  #undef CYTHON_USE_MODULE_STATE
  #define CYTHON_USE_MODULE_STATE 1
  #ifndef CYTHON_USE_TP_FINALIZE
    #define CYTHON_USE_TP_FINALIZE 0
  #endif
  #undef CYTHON_USE_DICT_VERSIONS
  #define CYTHON_USE_DICT_VERSIONS 0
  #undef CYTHON_USE_EXC_INFO_STACK
  #define CYTHON_USE_EXC_INFO_STACK 0
  #ifndef CYTHON_UPDATE_DESCRIPTOR_DOC
    #define CYTHON_UPDATE_DESCRIPTOR_DOC 0
  #endif
#elif defined(Py_GIL_DISABLED) || defined(Py_NOGIL)
  #define CYTHON_COMPILING_IN_PYPY 0
  #define CYTHON_COMPILING_IN_CPYTHON 0
  #define CYTHON_COMPILING_IN_LIMITED_API 0
  #define CYTHON_COMPILING_IN_GRAAL 0
  #define CYTHON_COMPILING_IN_NOGIL 1
  #ifndef CYTHON_USE_TYPE_SLOTS
    #define CYTHON_USE_TYPE_SLOTS 1
  #endif
  #undef CYTHON_USE_PYTYPE_LOOKUP
  #define CYTHON_USE_PYTYPE_LOOKUP 0
  #ifndef CYTHON_USE_ASYNC_SLOTS
    #define CYTHON_USE_ASYNC_SLOTS 1
  #endif
  #undef CYTHON_USE_PYLIST_INTERNALS
  #define CYTHON_USE_PYLIST_INTERNALS 0
  #ifndef CYTHON_USE_UNICODE_INTERNALS
    #define CYTHON_USE_UNICODE_INTERNALS 1
  #endif
  #undef CYTHON_USE_UNICODE_WRITER
  #define CYTHON_USE_UNICODE_WRITER 0
  #undef CYTHON_USE_PYLONG_INTERNALS
  #define CYTHON_USE_PYLONG_INTERNALS 0
  #ifndef CYTHON_AVOID_BORROWED_REFS
    #define CYTHON_AVOID_BORROWED_REFS 0
  #endif
  #ifndef CYTHON_ASSUME_SAFE_MACROS
    #define CYTHON_ASSUME_SAFE_MACROS 1
  #endif
  #ifndef CYTHON_UNPACK_METHODS
    #define CYTHON_UNPACK_METHODS 1
  #endif
  #undef CYTHON_FAST_THREAD_STATE
  #define CYTHON_FAST_THREAD_STATE 0
  #undef CYTHON_FAST_PYCALL
  #define CYTHON_FAST_PYCALL 0
  #ifndef CYTHON_PEP489_MULTI_PHASE_INIT
    #define CYTHON_PEP489_MULTI_PHASE_INIT 1
  #endif
  #ifndef CYTHON_USE_TP_FINALIZE
    #define CYTHON_USE_TP_FINALIZE 1
  #endif
  #undef CYTHON_USE_DICT_VERSIONS
  #define CYTHON_USE_DICT_VERSIONS 0
  #undef CYTHON_USE_EXC_INFO_STACK
  #define CYTHON_USE_EXC_INFO_STACK 0
#else
  #define CYTHON_COMPILING_IN_PYPY 0
  #define CYTHON_COMPILING_IN_CPYTHON 1
  #define CYTHON_COMPILING_IN_LIMITED_API 0
  #define CYTHON_COMPILING_IN_GRAAL 0
  #define CYTHON_COMPILING_IN_NOGIL 0
  #ifndef CYTHON_USE_TYPE_SLOTS
    #define CYTHON_USE_TYPE_SLOTS 1
  #endif
  #ifndef CYTHON_USE_TYPE_SPECS
    #define CYTHON_USE_TYPE_SPECS 0
  #endif
  #ifndef CYTHON_USE_PYTYPE_LOOKUP
    #define CYTHON_USE_PYTYPE_LOOKUP 1
  #endif
  #if PY_MAJOR_VERSION < 3
    #undef CYTHON_USE_ASYNC_SLOTS
    #define CYTHON_USE_ASYNC_SLOTS 0
  #elif !defined(CYTHON_USE_ASYNC_SLOTS)
    #define CYTHON_USE_ASYNC_SLOTS 1
  #endif
  #ifndef CYTHON_USE_PYLONG_INTERNALS
    #define CYTHON_USE_PYLONG_INTERNALS 1
  #endif
  #ifndef CYTHON_USE_PYLIST_INTERNALS
    #define CYTHON_USE_PYLIST_INTERNALS 1
  #endif
  #ifndef CYTHON_USE_UNICODE_INTERNALS
    #define CYTHON_USE_UNICODE_INTERNALS 1
  #endif
  #if PY_VERSION_HEX < 0x030300F0 || PY_VERSION_HEX >= 0x030B00A2
    #undef CYTHON_USE_UNICODE_WRITER
    #define CYTHON_USE_UNICODE_WRITER 0
  #elif !defined(CYTHON_USE_UNICODE_WRITER)
    #define CYTHON_USE_UNICODE_WRITER 1
  #endif
  #ifndef CYTHON_AVOID_BORROWED_REFS
    #define CYTHON_AVOID_BORROWED_REFS 0
  #endif
  #ifndef CYTHON_ASSUME_SAFE_MACROS
    #define CYTHON_ASSUME_SAFE_MACROS 1
  #endif
  #ifndef CYTHON_UNPACK_METHODS
    #define CYTHON_UNPACK_METHODS 1
  #endif
  #ifndef CYTHON_FAST_THREAD_STATE
    #define CYTHON_FAST_THREAD_STATE 1
  #endif
  #ifndef CYTHON_FAST_GIL
    #define CYTHON_FAST_GIL (PY_MAJOR_VERSION < 3 || PY_VERSION_HEX >= 0x03060000 && PY_VERSION_HEX < 0x030C00A6)
  #endif
  #ifndef CYTHON_METH_FASTCALL
    #define CYTHON_METH_FASTCALL (PY_VERSION_HEX >= 0x030700A1)
  #endif
  #ifndef CYTHON_FAST_PYCALL
    #define CYTHON_FAST_PYCALL 1
  #endif
  #ifndef CYTHON_PEP487_INIT_SUBCLASS
    #define CYTHON_PEP487_INIT_SUBCLASS 1
  #endif
  #if PY_VERSION_HEX < 0x03050000
    #undef CYTHON_PEP489_MULTI_PHASE_INIT
    #define CYTHON_PEP489_MULTI_PHASE_INIT 0
  #elif !defined(CYTHON_PEP489_MULTI_PHASE_INIT)
    #define CYTHON_PEP489_MULTI_PHASE_INIT 1
  #endif
  #ifndef CYTHON_USE_MODULE_STATE
    #define CYTHON_USE_MODULE_STATE 0
  #endif
  #if PY_VERSION_HEX < 0x030400a1
    #undef CYTHON_USE_TP_FINALIZE
    #define CYTHON_USE_TP_FINALIZE 0
  #elif !defined(CYTHON_USE_TP_FINALIZE)
    #define CYTHON_USE_TP_FINALIZE 1
  #endif
  #if PY_VERSION_HEX < 0x030600B1
    #undef CYTHON_USE_DICT_VERSIONS
    #define CYTHON_USE_DICT_VERSIONS 0
  #elif !defined(CYTHON_USE_DICT_VERSIONS)
    #define CYTHON_USE_DICT_VERSIONS  (PY_VERSION_HEX < 0x030C00A5)
  #endif
  #if PY_VERSION_HEX < 0x030700A3
    #undef CYTHON_USE_EXC_INFO_STACK
    #define CYTHON_USE_EXC_INFO_STACK 0
  #elif !defined(CYTHON_USE_EXC_INFO_STACK)
    #define CYTHON_USE_EXC_INFO_STACK 1
  #endif
  #ifndef CYTHON_UPDATE_DESCRIPTOR_DOC
    #define CYTHON_UPDATE_DESCRIPTOR_DOC 1
  #endif
#endif
#if !defined(CYTHON_FAST_PYCCALL)
#define CYTHON_FAST_PYCCALL  (CYTHON_FAST_PYCALL && PY_VERSION_HEX >= 0x030600B1)
#endif
#if !defined(CYTHON_VECTORCALL)
#define CYTHON_VECTORCALL  (CYTHON_FAST_PYCCALL && PY_VERSION_HEX >= 0x030800B1)
#endif
#define CYTHON_BACKPORT_VECTORCALL (CYTHON_METH_FASTCALL && PY_VERSION_HEX < 0x030800B1)
#if CYTHON_USE_PYLONG_INTERNALS
  #if PY_MAJOR_VERSION < 3
    #include "longintrepr.h"
  #endif
  #undef SHIFT
  #undef BASE
  #undef MASK
  #ifdef SIZEOF_VOID_P
    enum { __pyx_check_sizeof_voidp = 1 / (int)(SIZEOF_VOID_P == sizeof(void*)) };
  #endif
#endif
#ifndef __has_attribute
  #define __has_attribute(x) 0
#endif
#ifndef __has_cpp_attribute
  #define __has_cpp_attribute(x) 0
#endif
#ifndef CYTHON_RESTRICT
  #if defined(__GNUC__)
    #define CYTHON_RESTRICT __restrict__
  #elif defined(_MSC_VER) && _MSC_VER >= 1400
    #define CYTHON_RESTRICT __restrict
  #elif defined (__STDC_VERSION__) && __STDC_VERSION__ >= 199901L
    #define CYTHON_RESTRICT restrict
  #else
    #define CYTHON_RESTRICT
  #endif
#endif
#ifndef CYTHON_UNUSED
  #if defined(__cplusplus)
    /* for clang __has_cpp_attribute(maybe_unused) is true even before C++17
     * but leads to warnings with -pedantic, since it is a C++17 feature */
    #if ((defined(_MSVC_LANG) && _MSVC_LANG >= 201703L) || __cplusplus >= 201703L)
      #if __has_cpp_attribute(maybe_unused)
        #define CYTHON_UNUSED [[maybe_unused]]
      #endif
    #endif
  #endif
#endif
#ifndef CYTHON_UNUSED
# if defined(__GNUC__)
#   if !(defined(__cplusplus)) || (__GNUC__ > 3 || (__GNUC__ == 3 && __GNUC_MINOR__ >= 4))
#     define CYTHON_UNUSED __attribute__ ((__unused__))
#   else
#     define CYTHON_UNUSED
#   endif
# elif defined(__ICC) || (defined(__INTEL_COMPILER) && !defined(_MSC_VER))
#   define CYTHON_UNUSED __attribute__ ((__unused__))
# else
#   define CYTHON_UNUSED
# endif
#endif
#ifndef CYTHON_UNUSED_VAR
#  if defined(__cplusplus)
     template<class T> void CYTHON_UNUSED_VAR( const T& ) { }
#  else
#    define CYTHON_UNUSED_VAR(x) (void)(x)
#  endif
#endif
#ifndef CYTHON_MAYBE_UNUSED_VAR
  #define CYTHON_MAYBE_UNUSED_VAR(x) CYTHON_UNUSED_VAR(x)
#endif
#ifndef CYTHON_NCP_UNUSED
# if CYTHON_COMPILING_IN_CPYTHON
#  define CYTHON_NCP_UNUSED
# else
#  define CYTHON_NCP_UNUSED CYTHON_UNUSED
# endif
#endif
#ifndef CYTHON_USE_CPP_STD_MOVE
  #if defined(__cplusplus) && (\
    __cplusplus >= 201103L || (defined(_MSC_VER) && _MSC_VER >= 1600))
    #define CYTHON_USE_CPP_STD_MOVE 1
  #else
    #define CYTHON_USE_CPP_STD_MOVE 0
  #endif
#endif
#define __Pyx_void_to_None(void_result) ((void)(void_result), Py_INCREF(Py_None), Py_None)
#ifdef _MSC_VER
    #ifndef _MSC_STDINT_H_
        #if _MSC_VER < 1300
            typedef unsigned char     uint8_t;
            typedef unsigned short    uint16_t;
            typedef unsigned int      uint32_t;
        #else
            typedef unsigned __int8   uint8_t;
            typedef unsigned __int16  uint16_t;
            typedef unsigned __int32  uint32_t;
        #endif
    #endif
    #if _MSC_VER < 1300
        #ifdef _WIN64
            typedef unsigned long long  __pyx_uintptr_t;
        #else
            typedef unsigned int        __pyx_uintptr_t;
        #endif
    #else
        #ifdef _WIN64
            typedef unsigned __int64    __pyx_uintptr_t;
        #else
            typedef unsigned __int32    __pyx_uintptr_t;
        #endif
    #endif
#else
    #include <stdint.h>
    typedef uintptr_t  __pyx_uintptr_t;
#endif
#ifndef CYTHON_FALLTHROUGH
  #if defined(__cplusplus)
    /* for clang __has_cpp_attribute(fallthrough) is true even before C++17
     * but leads to warnings with -pedantic, since it is a C++17 feature */
    #if ((defined(_MSVC_LANG) && _MSVC_LANG >= 201703L) || __cplusplus >= 201703L)
      #if __has_cpp_attribute(fallthrough)
        #define CYTHON_FALLTHROUGH [[fallthrough]]
      #endif
    #endif
    #ifndef CYTHON_FALLTHROUGH
      #if __has_cpp_attribute(clang::fallthrough)
        #define CYTHON_FALLTHROUGH [[clang::fallthrough]]
      #elif __has_cpp_attribute(gnu::fallthrough)
        #define CYTHON_FALLTHROUGH [[gnu::fallthrough]]
      #endif
    #endif
  #endif
  #ifndef CYTHON_FALLTHROUGH
    #if __has_attribute(fallthrough)
      #define CYTHON_FALLTHROUGH __attribute__((fallthrough))
    #else
      #define CYTHON_FALLTHROUGH
    #endif
  #endif
  #if defined(__clang__) && defined(__apple_build_version__)
    #if __apple_build_version__ < 7000000
      #undef  CYTHON_FALLTHROUGH
      #define CYTHON_FALLTHROUGH
    #endif
  #endif
#endif
#ifdef __cplusplus
  template <typename T>
  struct __PYX_IS_UNSIGNED_IMPL {static const bool value = T(0) < T(-1);};
  #define __PYX_IS_UNSIGNED(type) (__PYX_IS_UNSIGNED_IMPL<type>::value)
#else
  #define __PYX_IS_UNSIGNED(type) (((type)-1) > 0)
#endif
#if CYTHON_COMPILING_IN_PYPY == 1
  #define __PYX_NEED_TP_PRINT_SLOT  (PY_VERSION_HEX >= 0x030800b4 && PY_VERSION_HEX < 0x030A0000)
#else
  #define __PYX_NEED_TP_PRINT_SLOT  (PY_VERSION_HEX >= 0x030800b4 && PY_VERSION_HEX < 0x03090000)
#endif
#define __PYX_REINTERPRET_FUNCION(func_pointer, other_pointer) ((func_pointer)(void(*)(void))(other_pointer))

#ifndef __cplusplus
  #error "Cython files generated with the C++ option must be compiled with a C++ compiler."
#endif
#ifndef CYTHON_INLINE
  #if defined(__clang__)
    #define CYTHON_INLINE __inline__ __attribute__ ((__unused__))
  #else
    #define CYTHON_INLINE inline
  #endif
#endif
template<typename T>
void __Pyx_call_destructor(T& x) {
    x.~T();
}
template<typename T>
class __Pyx_FakeReference {
  public:
    __Pyx_FakeReference() : ptr(NULL) { }
    __Pyx_FakeReference(const T& ref) : ptr(const_cast<T*>(&ref)) { }
    T *operator->() { return ptr; }
    T *operator&() { return ptr; }
    operator T&() { return *ptr; }
    template<typename U> bool operator ==(const U& other) const { return *ptr == other; }
    template<typename U> bool operator !=(const U& other) const { return *ptr != other; }
    template<typename U> bool operator==(const __Pyx_FakeReference<U>& other) const { return *ptr == *other.ptr; }
    template<typename U> bool operator!=(const __Pyx_FakeReference<U>& other) const { return *ptr != *other.ptr; }
  private:
    T *ptr;
};

#define __PYX_BUILD_PY_SSIZE_T "n"
#define CYTHON_FORMAT_SSIZE_T "z"
#if PY_MAJOR_VERSION < 3
  #define __Pyx_BUILTIN_MODULE_NAME "__builtin__"
  #define __Pyx_DefaultClassType PyClass_Type
  #define __Pyx_PyCode_New(a, p, k, l, s, f, code, c, n, v, fv, cell, fn, name, fline, lnos)\
          PyCode_New(a+k, l, s, f, code, c, n, v, fv, cell, fn, name, fline, lnos)
#else
  #define __Pyx_BUILTIN_MODULE_NAME "builtins"
  #define __Pyx_DefaultClassType PyType_Type
#if CYTHON_COMPILING_IN_LIMITED_API
    static CYTHON_INLINE PyObject* __Pyx_PyCode_New(int a, int p, int k, int l, int s, int f,
                                                    PyObject *code, PyObject *c, PyObject* n, PyObject *v,
                                                    PyObject *fv, PyObject *cell, PyObject* fn,
                                                    PyObject *name, int fline, PyObject *lnos) {
        PyObject *exception_table = NULL;
        PyObject *types_module=NULL, *code_type=NULL, *result=NULL;
        #if __PYX_LIMITED_VERSION_HEX < 0x030B0000
        PyObject *version_info; // borrowed
        PyObject *py_minor_version = NULL;
        #endif
        long minor_version = 0;
        PyObject *type, *value, *traceback;
        PyErr_Fetch(&type, &value, &traceback);
        #if __PYX_LIMITED_VERSION_HEX >= 0x030B0000
        minor_version = 11; // we don't yet need to distinguish between versions > 11
        #else
        if (!(version_info = PySys_GetObject("version_info"))) goto end;
        if (!(py_minor_version = PySequence_GetItem(version_info, 1))) goto end;
        minor_version = PyLong_AsLong(py_minor_version);
        Py_DECREF(py_minor_version);
        if (minor_version == -1 && PyErr_Occurred()) goto end;
        #endif
        if (!(types_module = PyImport_ImportModule("types"))) goto end;
        if (!(code_type = PyObject_GetAttrString(types_module, "CodeType"))) goto end;
        if (minor_version <= 7) {
            (void)p;
            result = PyObject_CallFunction(code_type, "iiiiiOOOOOOiOO", a, k, l, s, f, code,
                          c, n, v, fn, name, fline, lnos, fv, cell);
        } else if (minor_version <= 10) {
            result = PyObject_CallFunction(code_type, "iiiiiiOOOOOOiOO", a,p, k, l, s, f, code,
                          c, n, v, fn, name, fline, lnos, fv, cell);
        } else {
            if (!(exception_table = PyBytes_FromStringAndSize(NULL, 0))) goto end;
            result = PyObject_CallFunction(code_type, "iiiiiiOOOOOOOiOO", a,p, k, l, s, f, code,
                          c, n, v, fn, name, name, fline, lnos, exception_table, fv, cell);
        }
    end:
        Py_XDECREF(code_type);
        Py_XDECREF(exception_table);
        Py_XDECREF(types_module);
        if (type) {
            PyErr_Restore(type, value, traceback);
        }
        return result;
    }
    #ifndef CO_OPTIMIZED
    #define CO_OPTIMIZED 0x0001
    #endif
    #ifndef CO_NEWLOCALS
    #define CO_NEWLOCALS 0x0002
    #endif
    #ifndef CO_VARARGS
    #define CO_VARARGS 0x0004
    #endif
    #ifndef CO_VARKEYWORDS
    #define CO_VARKEYWORDS 0x0008
    #endif
    #ifndef CO_ASYNC_GENERATOR
    #define CO_ASYNC_GENERATOR 0x0200
    #endif
    #ifndef CO_GENERATOR
    #define CO_GENERATOR 0x0020
    #endif
    #ifndef CO_COROUTINE
    #define CO_COROUTINE 0x0080
    #endif
#elif PY_VERSION_HEX >= 0x030B0000
  static CYTHON_INLINE PyCodeObject* __Pyx_PyCode_New(int a, int p, int k, int l, int s, int f,
                                                    PyObject *code, PyObject *c, PyObject* n, PyObject *v,
                                                    PyObject *fv, PyObject *cell, PyObject* fn,
                                                    PyObject *name, int fline, PyObject *lnos) {
    PyCodeObject *result;
    PyObject *empty_bytes = PyBytes_FromStringAndSize("", 0);  // we don't have access to __pyx_empty_bytes here
    if (!empty_bytes) return NULL;
    result =
      #if PY_VERSION_HEX >= 0x030C0000
        PyUnstable_Code_NewWithPosOnlyArgs
      #else
        PyCode_NewWithPosOnlyArgs
      #endif
        (a, p, k, l, s, f, code, c, n, v, fv, cell, fn, name, name, fline, lnos, empty_bytes);
    Py_DECREF(empty_bytes);
    return result;
  }
#elif PY_VERSION_HEX >= 0x030800B2 && !CYTHON_COMPILING_IN_PYPY
  #define __Pyx_PyCode_New(a, p, k, l, s, f, code, c, n, v, fv, cell, fn, name, fline, lnos)\
          PyCode_NewWithPosOnlyArgs(a, p, k, l, s, f, code, c, n, v, fv, cell, fn, name, fline, lnos)
#else
  #define __Pyx_PyCode_New(a, p, k, l, s, f, code, c, n, v, fv, cell, fn, name, fline, lnos)\
          PyCode_New(a, k, l, s, f, code, c, n, v, fv, cell, fn, name, fline, lnos)
#endif
#endif
#if PY_VERSION_HEX >= 0x030900A4 || defined(Py_IS_TYPE)
  #define __Pyx_IS_TYPE(ob, type) Py_IS_TYPE(ob, type)
#else
  #define __Pyx_IS_TYPE(ob, type) (((const PyObject*)ob)->ob_type == (type))
#endif
#if PY_VERSION_HEX >= 0x030A00B1 || defined(Py_Is)
  #define __Pyx_Py_Is(x, y)  Py_Is(x, y)
#else
  #define __Pyx_Py_Is(x, y) ((x) == (y))
#endif
#if PY_VERSION_HEX >= 0x030A00B1 || defined(Py_IsNone)
  #define __Pyx_Py_IsNone(ob) Py_IsNone(ob)
#else
  #define __Pyx_Py_IsNone(ob) __Pyx_Py_Is((ob), Py_None)
#endif
#if PY_VERSION_HEX >= 0x030A00B1 || defined(Py_IsTrue)
  #define __Pyx_Py_IsTrue(ob) Py_IsTrue(ob)
#else
  #define __Pyx_Py_IsTrue(ob) __Pyx_Py_Is((ob), Py_True)
#endif
#if PY_VERSION_HEX >= 0x030A00B1 || defined(Py_IsFalse)
  #define __Pyx_Py_IsFalse(ob) Py_IsFalse(ob)
#else
  #define __Pyx_Py_IsFalse(ob) __Pyx_Py_Is((ob), Py_False)
#endif
#define __Pyx_NoneAsNull(obj)  (__Pyx_Py_IsNone(obj) ? NULL : (obj))
#if PY_VERSION_HEX >= 0x030900F0 && !CYTHON_COMPILING_IN_PYPY
  #define __Pyx_PyObject_GC_IsFinalized(o) PyObject_GC_IsFinalized(o)
#else
  #define __Pyx_PyObject_GC_IsFinalized(o) _PyGC_FINALIZED(o)
#endif
#ifndef CO_COROUTINE
  #define CO_COROUTINE 0x80
#endif
#ifndef CO_ASYNC_GENERATOR
  #define CO_ASYNC_GENERATOR 0x200
#endif
#ifndef Py_TPFLAGS_CHECKTYPES
  #define Py_TPFLAGS_CHECKTYPES 0
#endif
#ifndef Py_TPFLAGS_HAVE_INDEX
  #define Py_TPFLAGS_HAVE_INDEX 0
#endif
#ifndef Py_TPFLAGS_HAVE_NEWBUFFER
  #define Py_TPFLAGS_HAVE_NEWBUFFER 0
#endif
#ifndef Py_TPFLAGS_HAVE_FINALIZE
  #define Py_TPFLAGS_HAVE_FINALIZE 0
#endif
#ifndef Py_TPFLAGS_SEQUENCE
  #define Py_TPFLAGS_SEQUENCE 0
#endif
#ifndef Py_TPFLAGS_MAPPING
  #define Py_TPFLAGS_MAPPING 0
#endif
#ifndef METH_STACKLESS
  #define METH_STACKLESS 0
#endif
#if PY_VERSION_HEX <= 0x030700A3 || !defined(METH_FASTCALL)
  #ifndef METH_FASTCALL
     #define METH_FASTCALL 0x80
  #endif
  typedef PyObject *(*__Pyx_PyCFunctionFast) (PyObject *self, PyObject *const *args, Py_ssize_t nargs);
  typedef PyObject *(*__Pyx_PyCFunctionFastWithKeywords) (PyObject *self, PyObject *const *args,
                                                          Py_ssize_t nargs, PyObject *kwnames);
#else
  #define __Pyx_PyCFunctionFast _PyCFunctionFast
  #define __Pyx_PyCFunctionFastWithKeywords _PyCFunctionFastWithKeywords
#endif
#if CYTHON_METH_FASTCALL
  #define __Pyx_METH_FASTCALL METH_FASTCALL
  #define __Pyx_PyCFunction_FastCall __Pyx_PyCFunctionFast
  #define __Pyx_PyCFunction_FastCallWithKeywords __Pyx_PyCFunctionFastWithKeywords
#else
  #define __Pyx_METH_FASTCALL METH_VARARGS
  #define __Pyx_PyCFunction_FastCall PyCFunction
  #define __Pyx_PyCFunction_FastCallWithKeywords PyCFunctionWithKeywords
#endif
#if CYTHON_VECTORCALL
  #define __pyx_vectorcallfunc vectorcallfunc
  #define __Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET  PY_VECTORCALL_ARGUMENTS_OFFSET
  #define __Pyx_PyVectorcall_NARGS(n)  PyVectorcall_NARGS((size_t)(n))
#elif CYTHON_BACKPORT_VECTORCALL
  typedef PyObject *(*__pyx_vectorcallfunc)(PyObject *callable, PyObject *const *args,
                                            size_t nargsf, PyObject *kwnames);
  #define __Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET  ((size_t)1 << (8 * sizeof(size_t) - 1))
  #define __Pyx_PyVectorcall_NARGS(n)  ((Py_ssize_t)(((size_t)(n)) & ~__Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET))
#else
  #define __Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET  0
  #define __Pyx_PyVectorcall_NARGS(n)  ((Py_ssize_t)(n))
#endif
#if PY_MAJOR_VERSION >= 0x030900B1
#define __Pyx_PyCFunction_CheckExact(func)  PyCFunction_CheckExact(func)
#else
#define __Pyx_PyCFunction_CheckExact(func)  PyCFunction_Check(func)
#endif
#define __Pyx_CyOrPyCFunction_Check(func)  PyCFunction_Check(func)
#if CYTHON_COMPILING_IN_CPYTHON
#define __Pyx_CyOrPyCFunction_GET_FUNCTION(func)  (((PyCFunctionObject*)(func))->m_ml->ml_meth)
#elif !CYTHON_COMPILING_IN_LIMITED_API
#define __Pyx_CyOrPyCFunction_GET_FUNCTION(func)  PyCFunction_GET_FUNCTION(func)
#endif
#if CYTHON_COMPILING_IN_CPYTHON
#define __Pyx_CyOrPyCFunction_GET_FLAGS(func)  (((PyCFunctionObject*)(func))->m_ml->ml_flags)
static CYTHON_INLINE PyObject* __Pyx_CyOrPyCFunction_GET_SELF(PyObject *func) {
    return (__Pyx_CyOrPyCFunction_GET_FLAGS(func) & METH_STATIC) ? NULL : ((PyCFunctionObject*)func)->m_self;
}
#endif
static CYTHON_INLINE int __Pyx__IsSameCFunction(PyObject *func, void *cfunc) {
#if CYTHON_COMPILING_IN_LIMITED_API
    return PyCFunction_Check(func) && PyCFunction_GetFunction(func) == (PyCFunction) cfunc;
#else
    return PyCFunction_Check(func) && PyCFunction_GET_FUNCTION(func) == (PyCFunction) cfunc;
#endif
}
#define __Pyx_IsSameCFunction(func, cfunc)   __Pyx__IsSameCFunction(func, cfunc)
#if __PYX_LIMITED_VERSION_HEX < 0x030900B1
  #define __Pyx_PyType_FromModuleAndSpec(m, s, b)  ((void)m, PyType_FromSpecWithBases(s, b))
  typedef PyObject *(*__Pyx_PyCMethod)(PyObject *, PyTypeObject *, PyObject *const *, size_t, PyObject *);
#else
  #define __Pyx_PyType_FromModuleAndSpec(m, s, b)  PyType_FromModuleAndSpec(m, s, b)
  #define __Pyx_PyCMethod  PyCMethod
#endif
#ifndef METH_METHOD
  #define METH_METHOD 0x200
#endif
#if CYTHON_COMPILING_IN_PYPY && !defined(PyObject_Malloc)
  #define PyObject_Malloc(s)   PyMem_Malloc(s)
  #define PyObject_Free(p)     PyMem_Free(p)
  #define PyObject_Realloc(p)  PyMem_Realloc(p)
#endif
#if CYTHON_COMPILING_IN_LIMITED_API
  #define __Pyx_PyCode_HasFreeVars(co)  (PyCode_GetNumFree(co) > 0)
  #define __Pyx_PyFrame_SetLineNumber(frame, lineno)
#else
  #define __Pyx_PyCode_HasFreeVars(co)  (PyCode_GetNumFree(co) > 0)
  #define __Pyx_PyFrame_SetLineNumber(frame, lineno)  (frame)->f_lineno = (lineno)
#endif
#if CYTHON_COMPILING_IN_LIMITED_API
  #define __Pyx_PyThreadState_Current PyThreadState_Get()
#elif !CYTHON_FAST_THREAD_STATE
  #define __Pyx_PyThreadState_Current PyThreadState_GET()
#elif PY_VERSION_HEX >= 0x030d00A1
  #define __Pyx_PyThreadState_Current PyThreadState_GetUnchecked()
#elif PY_VERSION_HEX >= 0x03060000
  #define __Pyx_PyThreadState_Current _PyThreadState_UncheckedGet()
#elif PY_VERSION_HEX >= 0x03000000
  #define __Pyx_PyThreadState_Current PyThreadState_GET()
#else
  #define __Pyx_PyThreadState_Current _PyThreadState_Current
#endif
#if CYTHON_COMPILING_IN_LIMITED_API
static CYTHON_INLINE void *__Pyx_PyModule_GetState(PyObject *op)
{
    void *result;
    result = PyModule_GetState(op);
    if (!result)
        Py_FatalError("Couldn't find the module state");
    return result;
}
#endif
#define __Pyx_PyObject_GetSlot(obj, name, func_ctype)  __Pyx_PyType_GetSlot(Py_TYPE(obj), name, func_ctype)
#if CYTHON_COMPILING_IN_LIMITED_API
  #define __Pyx_PyType_GetSlot(type, name, func_ctype)  ((func_ctype) PyType_GetSlot((type), Py_##name))
#else
  #define __Pyx_PyType_GetSlot(type, name, func_ctype)  ((type)->name)
#endif
#if PY_VERSION_HEX < 0x030700A2 && !defined(PyThread_tss_create) && !defined(Py_tss_NEEDS_INIT)
#include "pythread.h"
#define Py_tss_NEEDS_INIT 0
typedef int Py_tss_t;
static CYTHON_INLINE int PyThread_tss_create(Py_tss_t *key) {
  *key = PyThread_create_key();
  return 0;
}
static CYTHON_INLINE Py_tss_t * PyThread_tss_alloc(void) {
  Py_tss_t *key = (Py_tss_t *)PyObject_Malloc(sizeof(Py_tss_t));
  *key = Py_tss_NEEDS_INIT;
  return key;
}
static CYTHON_INLINE void PyThread_tss_free(Py_tss_t *key) {
  PyObject_Free(key);
}
static CYTHON_INLINE int PyThread_tss_is_created(Py_tss_t *key) {
  return *key != Py_tss_NEEDS_INIT;
}
static CYTHON_INLINE void PyThread_tss_delete(Py_tss_t *key) {
  PyThread_delete_key(*key);
  *key = Py_tss_NEEDS_INIT;
}
static CYTHON_INLINE int PyThread_tss_set(Py_tss_t *key, void *value) {
  return PyThread_set_key_value(*key, value);
}
static CYTHON_INLINE void * PyThread_tss_get(Py_tss_t *key) {
  return PyThread_get_key_value(*key);
}
#endif
#if PY_MAJOR_VERSION < 3
    #if CYTHON_COMPILING_IN_PYPY
        #if PYPY_VERSION_NUM < 0x07030600
            #if defined(__cplusplus) && __cplusplus >= 201402L
                [[deprecated("`with nogil:` inside a nogil function will not release the GIL in PyPy2 < 7.3.6")]]
            #elif defined(__GNUC__) || defined(__clang__)
                __attribute__ ((__deprecated__("`with nogil:` inside a nogil function will not release the GIL in PyPy2 < 7.3.6")))
            #elif defined(_MSC_VER)
                __declspec(deprecated("`with nogil:` inside a nogil function will not release the GIL in PyPy2 < 7.3.6"))
            #endif
            static CYTHON_INLINE int PyGILState_Check(void) {
                return 0;
            }
        #else  // PYPY_VERSION_NUM < 0x07030600
        #endif  // PYPY_VERSION_NUM < 0x07030600
    #else
        static CYTHON_INLINE int PyGILState_Check(void) {
            PyThreadState * tstate = _PyThreadState_Current;
            return tstate && (tstate == PyGILState_GetThisThreadState());
        }
    #endif
#endif
#if CYTHON_COMPILING_IN_CPYTHON && PY_VERSION_HEX < 0x030d0000 || defined(_PyDict_NewPresized)
#define __Pyx_PyDict_NewPresized(n)  ((n <= 8) ? PyDict_New() : _PyDict_NewPresized(n))
#else
#define __Pyx_PyDict_NewPresized(n)  PyDict_New()
#endif
#if PY_MAJOR_VERSION >= 3 || CYTHON_FUTURE_DIVISION
  #define __Pyx_PyNumber_Divide(x,y)         PyNumber_TrueDivide(x,y)
  #define __Pyx_PyNumber_InPlaceDivide(x,y)  PyNumber_InPlaceTrueDivide(x,y)
#else
  #define __Pyx_PyNumber_Divide(x,y)         PyNumber_Divide(x,y)
  #define __Pyx_PyNumber_InPlaceDivide(x,y)  PyNumber_InPlaceDivide(x,y)
#endif
#if CYTHON_COMPILING_IN_CPYTHON && PY_VERSION_HEX > 0x030600B4 && PY_VERSION_HEX < 0x030d0000 && CYTHON_USE_UNICODE_INTERNALS
#define __Pyx_PyDict_GetItemStrWithError(dict, name)  _PyDict_GetItem_KnownHash(dict, name, ((PyASCIIObject *) name)->hash)
static CYTHON_INLINE PyObject * __Pyx_PyDict_GetItemStr(PyObject *dict, PyObject *name) {
    PyObject *res = __Pyx_PyDict_GetItemStrWithError(dict, name);
    if (res == NULL) PyErr_Clear();
    return res;
}
#elif PY_MAJOR_VERSION >= 3 && (!CYTHON_COMPILING_IN_PYPY || PYPY_VERSION_NUM >= 0x07020000)
#define __Pyx_PyDict_GetItemStrWithError  PyDict_GetItemWithError
#define __Pyx_PyDict_GetItemStr           PyDict_GetItem
#else
static CYTHON_INLINE PyObject * __Pyx_PyDict_GetItemStrWithError(PyObject *dict, PyObject *name) {
#if CYTHON_COMPILING_IN_PYPY
    return PyDict_GetItem(dict, name);
#else
    PyDictEntry *ep;
    PyDictObject *mp = (PyDictObject*) dict;
    long hash = ((PyStringObject *) name)->ob_shash;
    assert(hash != -1);
    ep = (mp->ma_lookup)(mp, name, hash);
    if (ep == NULL) {
        return NULL;
    }
    return ep->me_value;
#endif
}
#define __Pyx_PyDict_GetItemStr           PyDict_GetItem
#endif
#if CYTHON_USE_TYPE_SLOTS
  #define __Pyx_PyType_GetFlags(tp)   (((PyTypeObject *)tp)->tp_flags)
  #define __Pyx_PyType_HasFeature(type, feature)  ((__Pyx_PyType_GetFlags(type) & (feature)) != 0)
  #define __Pyx_PyObject_GetIterNextFunc(obj)  (Py_TYPE(obj)->tp_iternext)
#else
  #define __Pyx_PyType_GetFlags(tp)   (PyType_GetFlags((PyTypeObject *)tp))
  #define __Pyx_PyType_HasFeature(type, feature)  PyType_HasFeature(type, feature)
  #define __Pyx_PyObject_GetIterNextFunc(obj)  PyIter_Next
#endif
#if CYTHON_COMPILING_IN_LIMITED_API
  #define __Pyx_SetItemOnTypeDict(tp, k, v) PyObject_GenericSetAttr((PyObject*)tp, k, v)
#else
  #define __Pyx_SetItemOnTypeDict(tp, k, v) PyDict_SetItem(tp->tp_dict, k, v)
#endif
#if CYTHON_USE_TYPE_SPECS && PY_VERSION_HEX >= 0x03080000
#define __Pyx_PyHeapTypeObject_GC_Del(obj)  {\
    PyTypeObject *type = Py_TYPE((PyObject*)obj);\
    assert(__Pyx_PyType_HasFeature(type, Py_TPFLAGS_HEAPTYPE));\
    PyObject_GC_Del(obj);\
    Py_DECREF(type);\
}
#else
#define __Pyx_PyHeapTypeObject_GC_Del(obj)  PyObject_GC_Del(obj)
#endif
#if CYTHON_COMPILING_IN_LIMITED_API
  #define CYTHON_PEP393_ENABLED 1
  #define __Pyx_PyUnicode_READY(op)       (0)
  #define __Pyx_PyUnicode_GET_LENGTH(u)   PyUnicode_GetLength(u)
  #define __Pyx_PyUnicode_READ_CHAR(u, i) PyUnicode_ReadChar(u, i)
  #define __Pyx_PyUnicode_MAX_CHAR_VALUE(u)   ((void)u, 1114111U)
  #define __Pyx_PyUnicode_KIND(u)         ((void)u, (0))
  #define __Pyx_PyUnicode_DATA(u)         ((void*)u)
  #define __Pyx_PyUnicode_READ(k, d, i)   ((void)k, PyUnicode_ReadChar((PyObject*)(d), i))
  #define __Pyx_PyUnicode_IS_TRUE(u)      (0 != PyUnicode_GetLength(u))
#elif PY_VERSION_HEX > 0x03030000 && defined(PyUnicode_KIND)
  #define CYTHON_PEP393_ENABLED 1
  #if PY_VERSION_HEX >= 0x030C0000
    #define __Pyx_PyUnicode_READY(op)       (0)
  #else
    #define __Pyx_PyUnicode_READY(op)       (likely(PyUnicode_IS_READY(op)) ?\
                                                0 : _PyUnicode_Ready((PyObject *)(op)))
  #endif
  #define __Pyx_PyUnicode_GET_LENGTH(u)   PyUnicode_GET_LENGTH(u)
  #define __Pyx_PyUnicode_READ_CHAR(u, i) PyUnicode_READ_CHAR(u, i)
  #define __Pyx_PyUnicode_MAX_CHAR_VALUE(u)   PyUnicode_MAX_CHAR_VALUE(u)
  #define __Pyx_PyUnicode_KIND(u)         ((int)PyUnicode_KIND(u))
  #define __Pyx_PyUnicode_DATA(u)         PyUnicode_DATA(u)
  #define __Pyx_PyUnicode_READ(k, d, i)   PyUnicode_READ(k, d, i)
  #define __Pyx_PyUnicode_WRITE(k, d, i, ch)  PyUnicode_WRITE(k, d, i, (Py_UCS4) ch)
  #if PY_VERSION_HEX >= 0x030C0000
    #define __Pyx_PyUnicode_IS_TRUE(u)      (0 != PyUnicode_GET_LENGTH(u))
  #else
    #if CYTHON_COMPILING_IN_CPYTHON && PY_VERSION_HEX >= 0x03090000
    #define __Pyx_PyUnicode_IS_TRUE(u)      (0 != (likely(PyUnicode_IS_READY(u)) ? PyUnicode_GET_LENGTH(u) : ((PyCompactUnicodeObject *)(u))->wstr_length))
    #else
    #define __Pyx_PyUnicode_IS_TRUE(u)      (0 != (likely(PyUnicode_IS_READY(u)) ? PyUnicode_GET_LENGTH(u) : PyUnicode_GET_SIZE(u)))
    #endif
  #endif
#else
  #define CYTHON_PEP393_ENABLED 0
  #define PyUnicode_1BYTE_KIND  1
  #define PyUnicode_2BYTE_KIND  2
  #define PyUnicode_4BYTE_KIND  4
  #define __Pyx_PyUnicode_READY(op)       (0)
  #define __Pyx_PyUnicode_GET_LENGTH(u)   PyUnicode_GET_SIZE(u)
  #define __Pyx_PyUnicode_READ_CHAR(u, i) ((Py_UCS4)(PyUnicode_AS_UNICODE(u)[i]))
  #define __Pyx_PyUnicode_MAX_CHAR_VALUE(u)   ((sizeof(Py_UNICODE) == 2) ? 65535U : 1114111U)
  #define __Pyx_PyUnicode_KIND(u)         ((int)sizeof(Py_UNICODE))
  #define __Pyx_PyUnicode_DATA(u)         ((void*)PyUnicode_AS_UNICODE(u))
  #define __Pyx_PyUnicode_READ(k, d, i)   ((void)(k), (Py_UCS4)(((Py_UNICODE*)d)[i]))
  #define __Pyx_PyUnicode_WRITE(k, d, i, ch)  (((void)(k)), ((Py_UNICODE*)d)[i] = (Py_UNICODE) ch)
  #define __Pyx_PyUnicode_IS_TRUE(u)      (0 != PyUnicode_GET_SIZE(u))
#endif
#if CYTHON_COMPILING_IN_PYPY
  #define __Pyx_PyUnicode_Concat(a, b)      PyNumber_Add(a, b)
  #define __Pyx_PyUnicode_ConcatSafe(a, b)  PyNumber_Add(a, b)
#else
  #define __Pyx_PyUnicode_Concat(a, b)      PyUnicode_Concat(a, b)
  #define __Pyx_PyUnicode_ConcatSafe(a, b)  ((unlikely((a) == Py_None) || unlikely((b) == Py_None)) ?\
      PyNumber_Add(a, b) : __Pyx_PyUnicode_Concat(a, b))
#endif
#if CYTHON_COMPILING_IN_PYPY
  #if !defined(PyUnicode_DecodeUnicodeEscape)
    #define PyUnicode_DecodeUnicodeEscape(s, size, errors)  PyUnicode_Decode(s, size, "unicode_escape", errors)
  #endif
  #if !defined(PyUnicode_Contains) || (PY_MAJOR_VERSION == 2 && PYPY_VERSION_NUM < 0x07030500)
    #undef PyUnicode_Contains
    #define PyUnicode_Contains(u, s)  PySequence_Contains(u, s)
  #endif
  #if !defined(PyByteArray_Check)
    #define PyByteArray_Check(obj)  PyObject_TypeCheck(obj, &PyByteArray_Type)
  #endif
  #if !defined(PyObject_Format)
    #define PyObject_Format(obj, fmt)  PyObject_CallMethod(obj, "__format__", "O", fmt)
  #endif
#endif
#define __Pyx_PyString_FormatSafe(a, b)   ((unlikely((a) == Py_None || (PyString_Check(b) && !PyString_CheckExact(b)))) ? PyNumber_Remainder(a, b) : __Pyx_PyString_Format(a, b))
#define __Pyx_PyUnicode_FormatSafe(a, b)  ((unlikely((a) == Py_None || (PyUnicode_Check(b) && !PyUnicode_CheckExact(b)))) ? PyNumber_Remainder(a, b) : PyUnicode_Format(a, b))
#if PY_MAJOR_VERSION >= 3
  #define __Pyx_PyString_Format(a, b)  PyUnicode_Format(a, b)
#else
  #define __Pyx_PyString_Format(a, b)  PyString_Format(a, b)
#endif
#if PY_MAJOR_VERSION < 3 && !defined(PyObject_ASCII)
  #define PyObject_ASCII(o)            PyObject_Repr(o)
#endif
#if PY_MAJOR_VERSION >= 3
  #define PyBaseString_Type            PyUnicode_Type
  #define PyStringObject               PyUnicodeObject
  #define PyString_Type                PyUnicode_Type
  #define PyString_Check               PyUnicode_Check
  #define PyString_CheckExact          PyUnicode_CheckExact
#ifndef PyObject_Unicode
  #define PyObject_Unicode             PyObject_Str
#endif
#endif
#if PY_MAJOR_VERSION >= 3
  #define __Pyx_PyBaseString_Check(obj) PyUnicode_Check(obj)
  #define __Pyx_PyBaseString_CheckExact(obj) PyUnicode_CheckExact(obj)
#else
  #define __Pyx_PyBaseString_Check(obj) (PyString_Check(obj) || PyUnicode_Check(obj))
  #define __Pyx_PyBaseString_CheckExact(obj) (PyString_CheckExact(obj) || PyUnicode_CheckExact(obj))
#endif
#if CYTHON_COMPILING_IN_CPYTHON
  #define __Pyx_PySequence_ListKeepNew(obj)\
    (likely(PyList_CheckExact(obj) && Py_REFCNT(obj) == 1) ? __Pyx_NewRef(obj) : PySequence_List(obj))
#else
  #define __Pyx_PySequence_ListKeepNew(obj)  PySequence_List(obj)
#endif
#ifndef PySet_CheckExact
  #define PySet_CheckExact(obj)        __Pyx_IS_TYPE(obj, &PySet_Type)
#endif
#if PY_VERSION_HEX >= 0x030900A4
  #define __Pyx_SET_REFCNT(obj, refcnt) Py_SET_REFCNT(obj, refcnt)
  #define __Pyx_SET_SIZE(obj, size) Py_SET_SIZE(obj, size)
#else
  #define __Pyx_SET_REFCNT(obj, refcnt) Py_REFCNT(obj) = (refcnt)
  #define __Pyx_SET_SIZE(obj, size) Py_SIZE(obj) = (size)
#endif
#if CYTHON_ASSUME_SAFE_MACROS
  #define __Pyx_PySequence_ITEM(o, i) PySequence_ITEM(o, i)
  #define __Pyx_PySequence_SIZE(seq)  Py_SIZE(seq)
  #define __Pyx_PyTuple_SET_ITEM(o, i, v) (PyTuple_SET_ITEM(o, i, v), (0))
  #define __Pyx_PyList_SET_ITEM(o, i, v) (PyList_SET_ITEM(o, i, v), (0))
  #define __Pyx_PyTuple_GET_SIZE(o) PyTuple_GET_SIZE(o)
  #define __Pyx_PyList_GET_SIZE(o) PyList_GET_SIZE(o)
  #define __Pyx_PySet_GET_SIZE(o) PySet_GET_SIZE(o)
  #define __Pyx_PyBytes_GET_SIZE(o) PyBytes_GET_SIZE(o)
  #define __Pyx_PyByteArray_GET_SIZE(o) PyByteArray_GET_SIZE(o)
#else
  #define __Pyx_PySequence_ITEM(o, i) PySequence_GetItem(o, i)
  #define __Pyx_PySequence_SIZE(seq)  PySequence_Size(seq)
  #define __Pyx_PyTuple_SET_ITEM(o, i, v) PyTuple_SetItem(o, i, v)
  #define __Pyx_PyList_SET_ITEM(o, i, v) PyList_SetItem(o, i, v)
  #define __Pyx_PyTuple_GET_SIZE(o) PyTuple_Size(o)
  #define __Pyx_PyList_GET_SIZE(o) PyList_Size(o)
  #define __Pyx_PySet_GET_SIZE(o) PySet_Size(o)
  #define __Pyx_PyBytes_GET_SIZE(o) PyBytes_Size(o)
  #define __Pyx_PyByteArray_GET_SIZE(o) PyByteArray_Size(o)
#endif
#if PY_VERSION_HEX >= 0x030d00A1
  #define __Pyx_PyImport_AddModuleRef(name) PyImport_AddModuleRef(name)
#else
  static CYTHON_INLINE PyObject *__Pyx_PyImport_AddModuleRef(const char *name) {
      PyObject *module = PyImport_AddModule(name);
      Py_XINCREF(module);
      return module;
  }
#endif
#if PY_MAJOR_VERSION >= 3
  #define PyIntObject                  PyLongObject
  #define PyInt_Type                   PyLong_Type
  #define PyInt_Check(op)              PyLong_Check(op)
  #define PyInt_CheckExact(op)         PyLong_CheckExact(op)
  #define __Pyx_Py3Int_Check(op)       PyLong_Check(op)
  #define __Pyx_Py3Int_CheckExact(op)  PyLong_CheckExact(op)
  #define PyInt_FromString             PyLong_FromString
  #define PyInt_FromUnicode            PyLong_FromUnicode
  #define PyInt_FromLong               PyLong_FromLong
  #define PyInt_FromSize_t             PyLong_FromSize_t
  #define PyInt_FromSsize_t            PyLong_FromSsize_t
  #define PyInt_AsLong                 PyLong_AsLong
  #define PyInt_AS_LONG                PyLong_AS_LONG
  #define PyInt_AsSsize_t              PyLong_AsSsize_t
  #define PyInt_AsUnsignedLongMask     PyLong_AsUnsignedLongMask
  #define PyInt_AsUnsignedLongLongMask PyLong_AsUnsignedLongLongMask
  #define PyNumber_Int                 PyNumber_Long
#else
  #define __Pyx_Py3Int_Check(op)       (PyLong_Check(op) || PyInt_Check(op))
  #define __Pyx_Py3Int_CheckExact(op)  (PyLong_CheckExact(op) || PyInt_CheckExact(op))
#endif
#if PY_MAJOR_VERSION >= 3
  #define PyBoolObject                 PyLongObject
#endif
#if PY_MAJOR_VERSION >= 3 && CYTHON_COMPILING_IN_PYPY
  #ifndef PyUnicode_InternFromString
    #define PyUnicode_InternFromString(s) PyUnicode_FromString(s)
  #endif
#endif
#if PY_VERSION_HEX < 0x030200A4
  typedef long Py_hash_t;
  #define __Pyx_PyInt_FromHash_t PyInt_FromLong
  #define __Pyx_PyInt_AsHash_t   __Pyx_PyIndex_AsHash_t
#else
  #define __Pyx_PyInt_FromHash_t PyInt_FromSsize_t
  #define __Pyx_PyInt_AsHash_t   __Pyx_PyIndex_AsSsize_t
#endif
#if CYTHON_USE_ASYNC_SLOTS
  #if PY_VERSION_HEX >= 0x030500B1
    #define __Pyx_PyAsyncMethodsStruct PyAsyncMethods
    #define __Pyx_PyType_AsAsync(obj) (Py_TYPE(obj)->tp_as_async)
  #else
    #define __Pyx_PyType_AsAsync(obj) ((__Pyx_PyAsyncMethodsStruct*) (Py_TYPE(obj)->tp_reserved))
  #endif
#else
  #define __Pyx_PyType_AsAsync(obj) NULL
#endif
#ifndef __Pyx_PyAsyncMethodsStruct
    typedef struct {
        unaryfunc am_await;
        unaryfunc am_aiter;
        unaryfunc am_anext;
    } __Pyx_PyAsyncMethodsStruct;
#endif

#if defined(_WIN32) || defined(WIN32) || defined(MS_WINDOWS)
  #if !defined(_USE_MATH_DEFINES)
    #define _USE_MATH_DEFINES
  #endif
#endif
#include <math.h>
#ifdef NAN
#define __PYX_NAN() ((float) NAN)
#else
static CYTHON_INLINE float __PYX_NAN() {
  float value;
  memset(&value, 0xFF, sizeof(value));
  return value;
}
#endif
#if defined(__CYGWIN__) && defined(_LDBL_EQ_DBL)
#define __Pyx_truncl trunc
#else
#define __Pyx_truncl truncl
#endif

#define __PYX_MARK_ERR_POS(f_index, lineno) \
    { __pyx_filename = __pyx_f[f_index]; (void)__pyx_filename; __pyx_lineno = lineno; (void)__pyx_lineno; __pyx_clineno = __LINE__; (void)__pyx_clineno; }
#define __PYX_ERR(f_index, lineno, Ln_error) \
    { __PYX_MARK_ERR_POS(f_index, lineno) goto Ln_error; }

#ifdef CYTHON_EXTERN_C
    #undef __PYX_EXTERN_C
    #define __PYX_EXTERN_C CYTHON_EXTERN_C
#elif defined(__PYX_EXTERN_C)
    #ifdef _MSC_VER
    #pragma message ("Please do not define the '__PYX_EXTERN_C' macro externally. Use 'CYTHON_EXTERN_C' instead.")
    #else
    #warning Please do not define the '__PYX_EXTERN_C' macro externally. Use 'CYTHON_EXTERN_C' instead.
    #endif
#else
    #define __PYX_EXTERN_C extern "C++"
#endif

#define __PYX_HAVE__cuda___cuda__ccuda
#define __PYX_HAVE_API__cuda___cuda__ccuda
/* Early includes */
#include <stdint.h>
#include "cuda.h"
#include "cudaProfiler.h"
#include <dlfcn.h>
#include "loader.h"
#ifdef _OPENMP
#include <omp.h>
#endif /* _OPENMP */

#if defined(PYREX_WITHOUT_ASSERTIONS) && !defined(CYTHON_WITHOUT_ASSERTIONS)
#define CYTHON_WITHOUT_ASSERTIONS
#endif

typedef struct {PyObject **p; const char *s; const Py_ssize_t n; const char* encoding;
                const char is_unicode; const char is_str; const char intern; } __Pyx_StringTabEntry;

#define __PYX_DEFAULT_STRING_ENCODING_IS_ASCII 0
#define __PYX_DEFAULT_STRING_ENCODING_IS_UTF8 0
#define __PYX_DEFAULT_STRING_ENCODING_IS_DEFAULT (PY_MAJOR_VERSION >= 3 && __PYX_DEFAULT_STRING_ENCODING_IS_UTF8)
#define __PYX_DEFAULT_STRING_ENCODING ""
#define __Pyx_PyObject_FromString __Pyx_PyBytes_FromString
#define __Pyx_PyObject_FromStringAndSize __Pyx_PyBytes_FromStringAndSize
#define __Pyx_uchar_cast(c) ((unsigned char)c)
#define __Pyx_long_cast(x) ((long)x)
#define __Pyx_fits_Py_ssize_t(v, type, is_signed)  (\
    (sizeof(type) < sizeof(Py_ssize_t))  ||\
    (sizeof(type) > sizeof(Py_ssize_t) &&\
          likely(v < (type)PY_SSIZE_T_MAX ||\
                 v == (type)PY_SSIZE_T_MAX)  &&\
          (!is_signed || likely(v > (type)PY_SSIZE_T_MIN ||\
                                v == (type)PY_SSIZE_T_MIN)))  ||\
    (sizeof(type) == sizeof(Py_ssize_t) &&\
          (is_signed || likely(v < (type)PY_SSIZE_T_MAX ||\
                               v == (type)PY_SSIZE_T_MAX)))  )
static CYTHON_INLINE int __Pyx_is_valid_index(Py_ssize_t i, Py_ssize_t limit) {
    return (size_t) i < (size_t) limit;
}
#if defined (__cplusplus) && __cplusplus >= 201103L
    #include <cstdlib>
    #define __Pyx_sst_abs(value) std::abs(value)
#elif SIZEOF_INT >= SIZEOF_SIZE_T
    #define __Pyx_sst_abs(value) abs(value)
#elif SIZEOF_LONG >= SIZEOF_SIZE_T
    #define __Pyx_sst_abs(value) labs(value)
#elif defined (_MSC_VER)
    #define __Pyx_sst_abs(value) ((Py_ssize_t)_abs64(value))
#elif defined (__STDC_VERSION__) && __STDC_VERSION__ >= 199901L
    #define __Pyx_sst_abs(value) llabs(value)
#elif defined (__GNUC__)
    #define __Pyx_sst_abs(value) __builtin_llabs(value)
#else
    #define __Pyx_sst_abs(value) ((value<0) ? -value : value)
#endif
static CYTHON_INLINE Py_ssize_t __Pyx_ssize_strlen(const char *s);
static CYTHON_INLINE const char* __Pyx_PyObject_AsString(PyObject*);
static CYTHON_INLINE const char* __Pyx_PyObject_AsStringAndSize(PyObject*, Py_ssize_t* length);
static CYTHON_INLINE PyObject* __Pyx_PyByteArray_FromString(const char*);
#define __Pyx_PyByteArray_FromStringAndSize(s, l) PyByteArray_FromStringAndSize((const char*)s, l)
#define __Pyx_PyBytes_FromString        PyBytes_FromString
#define __Pyx_PyBytes_FromStringAndSize PyBytes_FromStringAndSize
static CYTHON_INLINE PyObject* __Pyx_PyUnicode_FromString(const char*);
#if PY_MAJOR_VERSION < 3
    #define __Pyx_PyStr_FromString        __Pyx_PyBytes_FromString
    #define __Pyx_PyStr_FromStringAndSize __Pyx_PyBytes_FromStringAndSize
#else
    #define __Pyx_PyStr_FromString        __Pyx_PyUnicode_FromString
    #define __Pyx_PyStr_FromStringAndSize __Pyx_PyUnicode_FromStringAndSize
#endif
#define __Pyx_PyBytes_AsWritableString(s)     ((char*) PyBytes_AS_STRING(s))
#define __Pyx_PyBytes_AsWritableSString(s)    ((signed char*) PyBytes_AS_STRING(s))
#define __Pyx_PyBytes_AsWritableUString(s)    ((unsigned char*) PyBytes_AS_STRING(s))
#define __Pyx_PyBytes_AsString(s)     ((const char*) PyBytes_AS_STRING(s))
#define __Pyx_PyBytes_AsSString(s)    ((const signed char*) PyBytes_AS_STRING(s))
#define __Pyx_PyBytes_AsUString(s)    ((const unsigned char*) PyBytes_AS_STRING(s))
#define __Pyx_PyObject_AsWritableString(s)    ((char*)(__pyx_uintptr_t) __Pyx_PyObject_AsString(s))
#define __Pyx_PyObject_AsWritableSString(s)    ((signed char*)(__pyx_uintptr_t) __Pyx_PyObject_AsString(s))
#define __Pyx_PyObject_AsWritableUString(s)    ((unsigned char*)(__pyx_uintptr_t) __Pyx_PyObject_AsString(s))
#define __Pyx_PyObject_AsSString(s)    ((const signed char*) __Pyx_PyObject_AsString(s))
#define __Pyx_PyObject_AsUString(s)    ((const unsigned char*) __Pyx_PyObject_AsString(s))
#define __Pyx_PyObject_FromCString(s)  __Pyx_PyObject_FromString((const char*)s)
#define __Pyx_PyBytes_FromCString(s)   __Pyx_PyBytes_FromString((const char*)s)
#define __Pyx_PyByteArray_FromCString(s)   __Pyx_PyByteArray_FromString((const char*)s)
#define __Pyx_PyStr_FromCString(s)     __Pyx_PyStr_FromString((const char*)s)
#define __Pyx_PyUnicode_FromCString(s) __Pyx_PyUnicode_FromString((const char*)s)
#if CYTHON_COMPILING_IN_LIMITED_API
static CYTHON_INLINE size_t __Pyx_Py_UNICODE_strlen(const wchar_t *u)
{
    const wchar_t *u_end = u;
    while (*u_end++) ;
    return (size_t)(u_end - u - 1);
}
#else
static CYTHON_INLINE size_t __Pyx_Py_UNICODE_strlen(const Py_UNICODE *u)
{
    const Py_UNICODE *u_end = u;
    while (*u_end++) ;
    return (size_t)(u_end - u - 1);
}
#endif
#define __Pyx_PyUnicode_FromOrdinal(o)       PyUnicode_FromOrdinal((int)o)
#define __Pyx_PyUnicode_FromUnicode(u)       PyUnicode_FromUnicode(u, __Pyx_Py_UNICODE_strlen(u))
#define __Pyx_PyUnicode_FromUnicodeAndLength PyUnicode_FromUnicode
#define __Pyx_PyUnicode_AsUnicode            PyUnicode_AsUnicode
#define __Pyx_NewRef(obj) (Py_INCREF(obj), obj)
#define __Pyx_Owned_Py_None(b) __Pyx_NewRef(Py_None)
static CYTHON_INLINE PyObject * __Pyx_PyBool_FromLong(long b);
static CYTHON_INLINE int __Pyx_PyObject_IsTrue(PyObject*);
static CYTHON_INLINE int __Pyx_PyObject_IsTrueAndDecref(PyObject*);
static CYTHON_INLINE PyObject* __Pyx_PyNumber_IntOrLong(PyObject* x);
#define __Pyx_PySequence_Tuple(obj)\
    (likely(PyTuple_CheckExact(obj)) ? __Pyx_NewRef(obj) : PySequence_Tuple(obj))
static CYTHON_INLINE Py_ssize_t __Pyx_PyIndex_AsSsize_t(PyObject*);
static CYTHON_INLINE PyObject * __Pyx_PyInt_FromSize_t(size_t);
static CYTHON_INLINE Py_hash_t __Pyx_PyIndex_AsHash_t(PyObject*);
#if CYTHON_ASSUME_SAFE_MACROS
#define __pyx_PyFloat_AsDouble(x) (PyFloat_CheckExact(x) ? PyFloat_AS_DOUBLE(x) : PyFloat_AsDouble(x))
#else
#define __pyx_PyFloat_AsDouble(x) PyFloat_AsDouble(x)
#endif
#define __pyx_PyFloat_AsFloat(x) ((float) __pyx_PyFloat_AsDouble(x))
#if PY_MAJOR_VERSION >= 3
#define __Pyx_PyNumber_Int(x) (PyLong_CheckExact(x) ? __Pyx_NewRef(x) : PyNumber_Long(x))
#else
#define __Pyx_PyNumber_Int(x) (PyInt_CheckExact(x) ? __Pyx_NewRef(x) : PyNumber_Int(x))
#endif
#if CYTHON_USE_PYLONG_INTERNALS
  #if PY_VERSION_HEX >= 0x030C00A7
  #ifndef _PyLong_SIGN_MASK
    #define _PyLong_SIGN_MASK 3
  #endif
  #ifndef _PyLong_NON_SIZE_BITS
    #define _PyLong_NON_SIZE_BITS 3
  #endif
  #define __Pyx_PyLong_Sign(x)  (((PyLongObject*)x)->long_value.lv_tag & _PyLong_SIGN_MASK)
  #define __Pyx_PyLong_IsNeg(x)  ((__Pyx_PyLong_Sign(x) & 2) != 0)
  #define __Pyx_PyLong_IsNonNeg(x)  (!__Pyx_PyLong_IsNeg(x))
  #define __Pyx_PyLong_IsZero(x)  (__Pyx_PyLong_Sign(x) & 1)
  #define __Pyx_PyLong_IsPos(x)  (__Pyx_PyLong_Sign(x) == 0)
  #define __Pyx_PyLong_CompactValueUnsigned(x)  (__Pyx_PyLong_Digits(x)[0])
  #define __Pyx_PyLong_DigitCount(x)  ((Py_ssize_t) (((PyLongObject*)x)->long_value.lv_tag >> _PyLong_NON_SIZE_BITS))
  #define __Pyx_PyLong_SignedDigitCount(x)\
        ((1 - (Py_ssize_t) __Pyx_PyLong_Sign(x)) * __Pyx_PyLong_DigitCount(x))
  #if defined(PyUnstable_Long_IsCompact) && defined(PyUnstable_Long_CompactValue)
    #define __Pyx_PyLong_IsCompact(x)     PyUnstable_Long_IsCompact((PyLongObject*) x)
    #define __Pyx_PyLong_CompactValue(x)  PyUnstable_Long_CompactValue((PyLongObject*) x)
  #else
    #define __Pyx_PyLong_IsCompact(x)     (((PyLongObject*)x)->long_value.lv_tag < (2 << _PyLong_NON_SIZE_BITS))
    #define __Pyx_PyLong_CompactValue(x)  ((1 - (Py_ssize_t) __Pyx_PyLong_Sign(x)) * (Py_ssize_t) __Pyx_PyLong_Digits(x)[0])
  #endif
  typedef Py_ssize_t  __Pyx_compact_pylong;
  typedef size_t  __Pyx_compact_upylong;
  #else  // Py < 3.12
  #define __Pyx_PyLong_IsNeg(x)  (Py_SIZE(x) < 0)
  #define __Pyx_PyLong_IsNonNeg(x)  (Py_SIZE(x) >= 0)
  #define __Pyx_PyLong_IsZero(x)  (Py_SIZE(x) == 0)
  #define __Pyx_PyLong_IsPos(x)  (Py_SIZE(x) > 0)
  #define __Pyx_PyLong_CompactValueUnsigned(x)  ((Py_SIZE(x) == 0) ? 0 : __Pyx_PyLong_Digits(x)[0])
  #define __Pyx_PyLong_DigitCount(x)  __Pyx_sst_abs(Py_SIZE(x))
  #define __Pyx_PyLong_SignedDigitCount(x)  Py_SIZE(x)
  #define __Pyx_PyLong_IsCompact(x)  (Py_SIZE(x) == 0 || Py_SIZE(x) == 1 || Py_SIZE(x) == -1)
  #define __Pyx_PyLong_CompactValue(x)\
        ((Py_SIZE(x) == 0) ? (sdigit) 0 : ((Py_SIZE(x) < 0) ? -(sdigit)__Pyx_PyLong_Digits(x)[0] : (sdigit)__Pyx_PyLong_Digits(x)[0]))
  typedef sdigit  __Pyx_compact_pylong;
  typedef digit  __Pyx_compact_upylong;
  #endif
  #if PY_VERSION_HEX >= 0x030C00A5
  #define __Pyx_PyLong_Digits(x)  (((PyLongObject*)x)->long_value.ob_digit)
  #else
  #define __Pyx_PyLong_Digits(x)  (((PyLongObject*)x)->ob_digit)
  #endif
#endif
#if PY_MAJOR_VERSION < 3 && __PYX_DEFAULT_STRING_ENCODING_IS_ASCII
#include <string.h>
static int __Pyx_sys_getdefaultencoding_not_ascii;
static int __Pyx_init_sys_getdefaultencoding_params(void) {
    PyObject* sys;
    PyObject* default_encoding = NULL;
    PyObject* ascii_chars_u = NULL;
    PyObject* ascii_chars_b = NULL;
    const char* default_encoding_c;
    sys = PyImport_ImportModule("sys");
    if (!sys) goto bad;
    default_encoding = PyObject_CallMethod(sys, (char*) "getdefaultencoding", NULL);
    Py_DECREF(sys);
    if (!default_encoding) goto bad;
    default_encoding_c = PyBytes_AsString(default_encoding);
    if (!default_encoding_c) goto bad;
    if (strcmp(default_encoding_c, "ascii") == 0) {
        __Pyx_sys_getdefaultencoding_not_ascii = 0;
    } else {
        char ascii_chars[128];
        int c;
        for (c = 0; c < 128; c++) {
            ascii_chars[c] = (char) c;
        }
        __Pyx_sys_getdefaultencoding_not_ascii = 1;
        ascii_chars_u = PyUnicode_DecodeASCII(ascii_chars, 128, NULL);
        if (!ascii_chars_u) goto bad;
        ascii_chars_b = PyUnicode_AsEncodedString(ascii_chars_u, default_encoding_c, NULL);
        if (!ascii_chars_b || !PyBytes_Check(ascii_chars_b) || memcmp(ascii_chars, PyBytes_AS_STRING(ascii_chars_b), 128) != 0) {
            PyErr_Format(
                PyExc_ValueError,
                "This module compiled with c_string_encoding=ascii, but default encoding '%.200s' is not a superset of ascii.",
                default_encoding_c);
            goto bad;
        }
        Py_DECREF(ascii_chars_u);
        Py_DECREF(ascii_chars_b);
    }
    Py_DECREF(default_encoding);
    return 0;
bad:
    Py_XDECREF(default_encoding);
    Py_XDECREF(ascii_chars_u);
    Py_XDECREF(ascii_chars_b);
    return -1;
}
#endif
#if __PYX_DEFAULT_STRING_ENCODING_IS_DEFAULT && PY_MAJOR_VERSION >= 3
#define __Pyx_PyUnicode_FromStringAndSize(c_str, size) PyUnicode_DecodeUTF8(c_str, size, NULL)
#else
#define __Pyx_PyUnicode_FromStringAndSize(c_str, size) PyUnicode_Decode(c_str, size, __PYX_DEFAULT_STRING_ENCODING, NULL)
#if __PYX_DEFAULT_STRING_ENCODING_IS_DEFAULT
#include <string.h>
static char* __PYX_DEFAULT_STRING_ENCODING;
static int __Pyx_init_sys_getdefaultencoding_params(void) {
    PyObject* sys;
    PyObject* default_encoding = NULL;
    char* default_encoding_c;
    sys = PyImport_ImportModule("sys");
    if (!sys) goto bad;
    default_encoding = PyObject_CallMethod(sys, (char*) (const char*) "getdefaultencoding", NULL);
    Py_DECREF(sys);
    if (!default_encoding) goto bad;
    default_encoding_c = PyBytes_AsString(default_encoding);
    if (!default_encoding_c) goto bad;
    __PYX_DEFAULT_STRING_ENCODING = (char*) malloc(strlen(default_encoding_c) + 1);
    if (!__PYX_DEFAULT_STRING_ENCODING) goto bad;
    strcpy(__PYX_DEFAULT_STRING_ENCODING, default_encoding_c);
    Py_DECREF(default_encoding);
    return 0;
bad:
    Py_XDECREF(default_encoding);
    return -1;
}
#endif
#endif


/* Test for GCC > 2.95 */
#if defined(__GNUC__)     && (__GNUC__ > 2 || (__GNUC__ == 2 && (__GNUC_MINOR__ > 95)))
  #define likely(x)   __builtin_expect(!!(x), 1)
  #define unlikely(x) __builtin_expect(!!(x), 0)
#else /* !__GNUC__ or GCC < 2.95 */
  #define likely(x)   (x)
  #define unlikely(x) (x)
#endif /* __GNUC__ */
static CYTHON_INLINE void __Pyx_pretend_to_initialize(void* ptr) { (void)ptr; }

#if !CYTHON_USE_MODULE_STATE
static PyObject *__pyx_m = NULL;
#endif
static int __pyx_lineno;
static int __pyx_clineno = 0;
static const char * __pyx_cfilenm = __FILE__;
static const char *__pyx_filename;

/* #### Code section: filename_table ### */

static const char *__pyx_f[] = {
  "cuda/_cuda/ccuda.pyx",
};
/* #### Code section: utility_code_proto_before_types ### */
/* ForceInitThreads.proto */
#ifndef __PYX_FORCE_INIT_THREADS
  #define __PYX_FORCE_INIT_THREADS 0
#endif

/* NoFastGil.proto */
#define __Pyx_PyGILState_Ensure PyGILState_Ensure
#define __Pyx_PyGILState_Release PyGILState_Release
#define __Pyx_FastGIL_Remember()
#define __Pyx_FastGIL_Forget()
#define __Pyx_FastGilFuncInit()

/* #### Code section: numeric_typedefs ### */

/* "cuda/ccuda.pxd":2338
 * ctypedef CUGLmap_flags_enum CUGLmap_flags
 * 
 * ctypedef unsigned int GLenum             # <<<<<<<<<<<<<<
 * 
 * ctypedef unsigned int GLuint
 */
typedef unsigned int __pyx_t_4cuda_5ccuda_GLenum;

/* "cuda/ccuda.pxd":2340
 * ctypedef unsigned int GLenum
 * 
 * ctypedef unsigned int GLuint             # <<<<<<<<<<<<<<
 * 
 * cdef extern from "":
 */
typedef unsigned int __pyx_t_4cuda_5ccuda_GLuint;

/* "cuda/ccuda.pxd":2352
 * ctypedef void* EGLStreamKHR
 * 
 * ctypedef unsigned int EGLint             # <<<<<<<<<<<<<<
 * 
 * cdef extern from "":
 */
typedef unsigned int __pyx_t_4cuda_5ccuda_EGLint;

/* "cuda/ccuda.pxd":2359
 * ctypedef void* EGLSyncKHR
 * 
 * ctypedef uint32_t VdpDevice             # <<<<<<<<<<<<<<
 * 
 * ctypedef unsigned long long VdpGetProcAddress
 */
typedef uint32_t __pyx_t_4cuda_5ccuda_VdpDevice;

/* "cuda/ccuda.pxd":2361
 * ctypedef uint32_t VdpDevice
 * 
 * ctypedef unsigned long long VdpGetProcAddress             # <<<<<<<<<<<<<<
 * 
 * ctypedef uint32_t VdpVideoSurface
 */
typedef unsigned PY_LONG_LONG __pyx_t_4cuda_5ccuda_VdpGetProcAddress;

/* "cuda/ccuda.pxd":2363
 * ctypedef unsigned long long VdpGetProcAddress
 * 
 * ctypedef uint32_t VdpVideoSurface             # <<<<<<<<<<<<<<
 * 
 * ctypedef uint32_t VdpOutputSurface
 */
typedef uint32_t __pyx_t_4cuda_5ccuda_VdpVideoSurface;

/* "cuda/ccuda.pxd":2365
 * ctypedef uint32_t VdpVideoSurface
 * 
 * ctypedef uint32_t VdpOutputSurface             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult cuGetErrorString(CUresult error, const char** pStr) except ?CUDA_ERROR_NOT_FOUND nogil
 */
typedef uint32_t __pyx_t_4cuda_5ccuda_VdpOutputSurface;
/* #### Code section: complex_type_declarations ### */
/* #### Code section: type_declarations ### */

/*--- Type declarations ---*/
union __pyx_t_4cuda_5ccuda_anon_union14;
struct __pyx_t_4cuda_5ccuda_CUeglFrame_st;

/* "cuda/ccuda.pxd":2168
 *     ctypedef CUoutput_mode_enum CUoutput_mode
 * 
 * cdef enum CUeglFrameType_enum:             # <<<<<<<<<<<<<<
 *     CU_EGL_FRAME_TYPE_ARRAY = 0
 *     CU_EGL_FRAME_TYPE_PITCH = 1
 */
enum __pyx_t_4cuda_5ccuda_CUeglFrameType_enum {
  __pyx_e_4cuda_5ccuda_CU_EGL_FRAME_TYPE_ARRAY = 0,
  __pyx_e_4cuda_5ccuda_CU_EGL_FRAME_TYPE_PITCH = 1
};

/* "cuda/ccuda.pxd":2174
 * ctypedef CUeglFrameType_enum CUeglFrameType
 * 
 * cdef enum CUeglResourceLocationFlags_enum:             # <<<<<<<<<<<<<<
 *     CU_EGL_RESOURCE_LOCATION_SYSMEM = 0
 *     CU_EGL_RESOURCE_LOCATION_VIDMEM = 1
 */
enum __pyx_t_4cuda_5ccuda_CUeglResourceLocationFlags_enum {
  __pyx_e_4cuda_5ccuda_CU_EGL_RESOURCE_LOCATION_SYSMEM = 0,
  __pyx_e_4cuda_5ccuda_CU_EGL_RESOURCE_LOCATION_VIDMEM = 1
};

/* "cuda/ccuda.pxd":2180
 * ctypedef CUeglResourceLocationFlags_enum CUeglResourceLocationFlags
 * 
 * cdef enum CUeglColorFormat_enum:             # <<<<<<<<<<<<<<
 *     CU_EGL_COLOR_FORMAT_YUV420_PLANAR = 0
 *     CU_EGL_COLOR_FORMAT_YUV420_SEMIPLANAR = 1
 */
enum __pyx_t_4cuda_5ccuda_CUeglColorFormat_enum {
  __pyx_e_4cuda_5ccuda_CU_EGL_COLOR_FORMAT_YUV420_PLANAR = 0,
  __pyx_e_4cuda_5ccuda_CU_EGL_COLOR_FORMAT_YUV420_SEMIPLANAR = 1,
  __pyx_e_4cuda_5ccuda_CU_EGL_COLOR_FORMAT_YUV422_PLANAR = 2,
  __pyx_e_4cuda_5ccuda_CU_EGL_COLOR_FORMAT_YUV422_SEMIPLANAR = 3,
  __pyx_e_4cuda_5ccuda_CU_EGL_COLOR_FORMAT_RGB = 4,
  __pyx_e_4cuda_5ccuda_CU_EGL_COLOR_FORMAT_BGR = 5,
  __pyx_e_4cuda_5ccuda_CU_EGL_COLOR_FORMAT_ARGB = 6,
  __pyx_e_4cuda_5ccuda_CU_EGL_COLOR_FORMAT_RGBA = 7,
  __pyx_e_4cuda_5ccuda_CU_EGL_COLOR_FORMAT_L = 8,
  __pyx_e_4cuda_5ccuda_CU_EGL_COLOR_FORMAT_R = 9,
  __pyx_e_4cuda_5ccuda_CU_EGL_COLOR_FORMAT_YUV444_PLANAR = 10,
  __pyx_e_4cuda_5ccuda_CU_EGL_COLOR_FORMAT_YUV444_SEMIPLANAR = 11,
  __pyx_e_4cuda_5ccuda_CU_EGL_COLOR_FORMAT_YUYV_422 = 12,
  __pyx_e_4cuda_5ccuda_CU_EGL_COLOR_FORMAT_UYVY_422 = 13,
  __pyx_e_4cuda_5ccuda_CU_EGL_COLOR_FORMAT_ABGR = 14,
  __pyx_e_4cuda_5ccuda_CU_EGL_COLOR_FORMAT_BGRA = 15,
  __pyx_e_4cuda_5ccuda_CU_EGL_COLOR_FORMAT_A = 16,
  __pyx_e_4cuda_5ccuda_CU_EGL_COLOR_FORMAT_RG = 17,
  __pyx_e_4cuda_5ccuda_CU_EGL_COLOR_FORMAT_AYUV = 18,
  __pyx_e_4cuda_5ccuda_CU_EGL_COLOR_FORMAT_YVU444_SEMIPLANAR = 19,
  __pyx_e_4cuda_5ccuda_CU_EGL_COLOR_FORMAT_YVU422_SEMIPLANAR = 20,
  __pyx_e_4cuda_5ccuda_CU_EGL_COLOR_FORMAT_YVU420_SEMIPLANAR = 21,
  __pyx_e_4cuda_5ccuda_CU_EGL_COLOR_FORMAT_Y10V10U10_444_SEMIPLANAR = 22,
  __pyx_e_4cuda_5ccuda_CU_EGL_COLOR_FORMAT_Y10V10U10_420_SEMIPLANAR = 23,
  __pyx_e_4cuda_5ccuda_CU_EGL_COLOR_FORMAT_Y12V12U12_444_SEMIPLANAR = 24,
  __pyx_e_4cuda_5ccuda_CU_EGL_COLOR_FORMAT_Y12V12U12_420_SEMIPLANAR = 25,
  __pyx_e_4cuda_5ccuda_CU_EGL_COLOR_FORMAT_VYUY_ER = 26,
  __pyx_e_4cuda_5ccuda_CU_EGL_COLOR_FORMAT_UYVY_ER = 27,
  __pyx_e_4cuda_5ccuda_CU_EGL_COLOR_FORMAT_YUYV_ER = 28,
  __pyx_e_4cuda_5ccuda_CU_EGL_COLOR_FORMAT_YVYU_ER = 29,
  __pyx_e_4cuda_5ccuda_CU_EGL_COLOR_FORMAT_YUV_ER = 30,
  __pyx_e_4cuda_5ccuda_CU_EGL_COLOR_FORMAT_YUVA_ER = 31,
  __pyx_e_4cuda_5ccuda_CU_EGL_COLOR_FORMAT_AYUV_ER = 32,
  __pyx_e_4cuda_5ccuda_CU_EGL_COLOR_FORMAT_YUV444_PLANAR_ER = 33,
  __pyx_e_4cuda_5ccuda_CU_EGL_COLOR_FORMAT_YUV422_PLANAR_ER = 34,
  __pyx_e_4cuda_5ccuda_CU_EGL_COLOR_FORMAT_YUV420_PLANAR_ER = 35,
  __pyx_e_4cuda_5ccuda_CU_EGL_COLOR_FORMAT_YUV444_SEMIPLANAR_ER = 36,
  __pyx_e_4cuda_5ccuda_CU_EGL_COLOR_FORMAT_YUV422_SEMIPLANAR_ER = 37,
  __pyx_e_4cuda_5ccuda_CU_EGL_COLOR_FORMAT_YUV420_SEMIPLANAR_ER = 38,
  __pyx_e_4cuda_5ccuda_CU_EGL_COLOR_FORMAT_YVU444_PLANAR_ER = 39,
  __pyx_e_4cuda_5ccuda_CU_EGL_COLOR_FORMAT_YVU422_PLANAR_ER = 40,
  __pyx_e_4cuda_5ccuda_CU_EGL_COLOR_FORMAT_YVU420_PLANAR_ER = 41,
  __pyx_e_4cuda_5ccuda_CU_EGL_COLOR_FORMAT_YVU444_SEMIPLANAR_ER = 42,
  __pyx_e_4cuda_5ccuda_CU_EGL_COLOR_FORMAT_YVU422_SEMIPLANAR_ER = 43,
  __pyx_e_4cuda_5ccuda_CU_EGL_COLOR_FORMAT_YVU420_SEMIPLANAR_ER = 44,
  __pyx_e_4cuda_5ccuda_CU_EGL_COLOR_FORMAT_BAYER_RGGB = 45,
  __pyx_e_4cuda_5ccuda_CU_EGL_COLOR_FORMAT_BAYER_BGGR = 46,
  __pyx_e_4cuda_5ccuda_CU_EGL_COLOR_FORMAT_BAYER_GRBG = 47,
  __pyx_e_4cuda_5ccuda_CU_EGL_COLOR_FORMAT_BAYER_GBRG = 48,
  __pyx_e_4cuda_5ccuda_CU_EGL_COLOR_FORMAT_BAYER10_RGGB = 49,
  __pyx_e_4cuda_5ccuda_CU_EGL_COLOR_FORMAT_BAYER10_BGGR = 50,
  __pyx_e_4cuda_5ccuda_CU_EGL_COLOR_FORMAT_BAYER10_GRBG = 51,
  __pyx_e_4cuda_5ccuda_CU_EGL_COLOR_FORMAT_BAYER10_GBRG = 52,
  __pyx_e_4cuda_5ccuda_CU_EGL_COLOR_FORMAT_BAYER12_RGGB = 53,
  __pyx_e_4cuda_5ccuda_CU_EGL_COLOR_FORMAT_BAYER12_BGGR = 54,
  __pyx_e_4cuda_5ccuda_CU_EGL_COLOR_FORMAT_BAYER12_GRBG = 55,
  __pyx_e_4cuda_5ccuda_CU_EGL_COLOR_FORMAT_BAYER12_GBRG = 56,
  __pyx_e_4cuda_5ccuda_CU_EGL_COLOR_FORMAT_BAYER14_RGGB = 57,
  __pyx_e_4cuda_5ccuda_CU_EGL_COLOR_FORMAT_BAYER14_BGGR = 58,
  __pyx_e_4cuda_5ccuda_CU_EGL_COLOR_FORMAT_BAYER14_GRBG = 59,
  __pyx_e_4cuda_5ccuda_CU_EGL_COLOR_FORMAT_BAYER14_GBRG = 60,
  __pyx_e_4cuda_5ccuda_CU_EGL_COLOR_FORMAT_BAYER20_RGGB = 61,
  __pyx_e_4cuda_5ccuda_CU_EGL_COLOR_FORMAT_BAYER20_BGGR = 62,
  __pyx_e_4cuda_5ccuda_CU_EGL_COLOR_FORMAT_BAYER20_GRBG = 63,
  __pyx_e_4cuda_5ccuda_CU_EGL_COLOR_FORMAT_BAYER20_GBRG = 64,
  __pyx_e_4cuda_5ccuda_CU_EGL_COLOR_FORMAT_YVU444_PLANAR = 65,
  __pyx_e_4cuda_5ccuda_CU_EGL_COLOR_FORMAT_YVU422_PLANAR = 66,
  __pyx_e_4cuda_5ccuda_CU_EGL_COLOR_FORMAT_YVU420_PLANAR = 67,
  __pyx_e_4cuda_5ccuda_CU_EGL_COLOR_FORMAT_BAYER_ISP_RGGB = 68,
  __pyx_e_4cuda_5ccuda_CU_EGL_COLOR_FORMAT_BAYER_ISP_BGGR = 69,
  __pyx_e_4cuda_5ccuda_CU_EGL_COLOR_FORMAT_BAYER_ISP_GRBG = 70,
  __pyx_e_4cuda_5ccuda_CU_EGL_COLOR_FORMAT_BAYER_ISP_GBRG = 71,
  __pyx_e_4cuda_5ccuda_CU_EGL_COLOR_FORMAT_BAYER_BCCR = 72,
  __pyx_e_4cuda_5ccuda_CU_EGL_COLOR_FORMAT_BAYER_RCCB = 73,
  __pyx_e_4cuda_5ccuda_CU_EGL_COLOR_FORMAT_BAYER_CRBC = 74,
  __pyx_e_4cuda_5ccuda_CU_EGL_COLOR_FORMAT_BAYER_CBRC = 75,
  __pyx_e_4cuda_5ccuda_CU_EGL_COLOR_FORMAT_BAYER10_CCCC = 76,
  __pyx_e_4cuda_5ccuda_CU_EGL_COLOR_FORMAT_BAYER12_BCCR = 77,
  __pyx_e_4cuda_5ccuda_CU_EGL_COLOR_FORMAT_BAYER12_RCCB = 78,
  __pyx_e_4cuda_5ccuda_CU_EGL_COLOR_FORMAT_BAYER12_CRBC = 79,
  __pyx_e_4cuda_5ccuda_CU_EGL_COLOR_FORMAT_BAYER12_CBRC = 80,
  __pyx_e_4cuda_5ccuda_CU_EGL_COLOR_FORMAT_BAYER12_CCCC = 81,
  __pyx_e_4cuda_5ccuda_CU_EGL_COLOR_FORMAT_Y = 82,
  __pyx_e_4cuda_5ccuda_CU_EGL_COLOR_FORMAT_YUV420_SEMIPLANAR_2020 = 83,
  __pyx_e_4cuda_5ccuda_CU_EGL_COLOR_FORMAT_YVU420_SEMIPLANAR_2020 = 84,
  __pyx_e_4cuda_5ccuda_CU_EGL_COLOR_FORMAT_YUV420_PLANAR_2020 = 85,
  __pyx_e_4cuda_5ccuda_CU_EGL_COLOR_FORMAT_YVU420_PLANAR_2020 = 86,
  __pyx_e_4cuda_5ccuda_CU_EGL_COLOR_FORMAT_YUV420_SEMIPLANAR_709 = 87,
  __pyx_e_4cuda_5ccuda_CU_EGL_COLOR_FORMAT_YVU420_SEMIPLANAR_709 = 88,
  __pyx_e_4cuda_5ccuda_CU_EGL_COLOR_FORMAT_YUV420_PLANAR_709 = 89,
  __pyx_e_4cuda_5ccuda_CU_EGL_COLOR_FORMAT_YVU420_PLANAR_709 = 90,
  __pyx_e_4cuda_5ccuda_CU_EGL_COLOR_FORMAT_Y10V10U10_420_SEMIPLANAR_709 = 91,
  __pyx_e_4cuda_5ccuda_CU_EGL_COLOR_FORMAT_Y10V10U10_420_SEMIPLANAR_2020 = 92,
  __pyx_e_4cuda_5ccuda_CU_EGL_COLOR_FORMAT_Y10V10U10_422_SEMIPLANAR_2020 = 93,
  __pyx_e_4cuda_5ccuda_CU_EGL_COLOR_FORMAT_Y10V10U10_422_SEMIPLANAR = 94,
  __pyx_e_4cuda_5ccuda_CU_EGL_COLOR_FORMAT_Y10V10U10_422_SEMIPLANAR_709 = 95,
  __pyx_e_4cuda_5ccuda_CU_EGL_COLOR_FORMAT_Y_ER = 96,
  __pyx_e_4cuda_5ccuda_CU_EGL_COLOR_FORMAT_Y_709_ER = 97,
  __pyx_e_4cuda_5ccuda_CU_EGL_COLOR_FORMAT_Y10_ER = 98,
  __pyx_e_4cuda_5ccuda_CU_EGL_COLOR_FORMAT_Y10_709_ER = 99,
  __pyx_e_4cuda_5ccuda_CU_EGL_COLOR_FORMAT_Y12_ER = 0x64,
  __pyx_e_4cuda_5ccuda_CU_EGL_COLOR_FORMAT_Y12_709_ER = 0x65,
  __pyx_e_4cuda_5ccuda_CU_EGL_COLOR_FORMAT_YUVA = 0x66,
  __pyx_e_4cuda_5ccuda_CU_EGL_COLOR_FORMAT_YUV = 0x67,
  __pyx_e_4cuda_5ccuda_CU_EGL_COLOR_FORMAT_YVYU = 0x68,
  __pyx_e_4cuda_5ccuda_CU_EGL_COLOR_FORMAT_VYUY = 0x69,
  __pyx_e_4cuda_5ccuda_CU_EGL_COLOR_FORMAT_Y10V10U10_420_SEMIPLANAR_ER = 0x6A,
  __pyx_e_4cuda_5ccuda_CU_EGL_COLOR_FORMAT_Y10V10U10_420_SEMIPLANAR_709_ER = 0x6B,
  __pyx_e_4cuda_5ccuda_CU_EGL_COLOR_FORMAT_Y10V10U10_444_SEMIPLANAR_ER = 0x6C,
  __pyx_e_4cuda_5ccuda_CU_EGL_COLOR_FORMAT_Y10V10U10_444_SEMIPLANAR_709_ER = 0x6D,
  __pyx_e_4cuda_5ccuda_CU_EGL_COLOR_FORMAT_Y12V12U12_420_SEMIPLANAR_ER = 0x6E,
  __pyx_e_4cuda_5ccuda_CU_EGL_COLOR_FORMAT_Y12V12U12_420_SEMIPLANAR_709_ER = 0x6F,
  __pyx_e_4cuda_5ccuda_CU_EGL_COLOR_FORMAT_Y12V12U12_444_SEMIPLANAR_ER = 0x70,
  __pyx_e_4cuda_5ccuda_CU_EGL_COLOR_FORMAT_Y12V12U12_444_SEMIPLANAR_709_ER = 0x71,
  __pyx_e_4cuda_5ccuda_CU_EGL_COLOR_FORMAT_MAX = 0x72
};

/* "cuda/ccuda.pxd":2324
 * ctypedef CUeglStreamConnection_st* CUeglStreamConnection
 * 
 * cdef enum CUGLDeviceList_enum:             # <<<<<<<<<<<<<<
 *     CU_GL_DEVICE_LIST_ALL = 1
 *     CU_GL_DEVICE_LIST_CURRENT_FRAME = 2
 */
enum __pyx_t_4cuda_5ccuda_CUGLDeviceList_enum {
  __pyx_e_4cuda_5ccuda_CU_GL_DEVICE_LIST_ALL = 1,
  __pyx_e_4cuda_5ccuda_CU_GL_DEVICE_LIST_CURRENT_FRAME = 2,
  __pyx_e_4cuda_5ccuda_CU_GL_DEVICE_LIST_NEXT_FRAME = 3
};

/* "cuda/ccuda.pxd":2331
 * ctypedef CUGLDeviceList_enum CUGLDeviceList
 * 
 * cdef enum CUGLmap_flags_enum:             # <<<<<<<<<<<<<<
 *     CU_GL_MAP_RESOURCE_FLAGS_NONE = 0
 *     CU_GL_MAP_RESOURCE_FLAGS_READ_ONLY = 1
 */
enum __pyx_t_4cuda_5ccuda_CUGLmap_flags_enum {
  __pyx_e_4cuda_5ccuda_CU_GL_MAP_RESOURCE_FLAGS_NONE = 0,
  __pyx_e_4cuda_5ccuda_CU_GL_MAP_RESOURCE_FLAGS_READ_ONLY = 1,
  __pyx_e_4cuda_5ccuda_CU_GL_MAP_RESOURCE_FLAGS_WRITE_DISCARD = 2
};

/* "cuda/ccuda.pxd":3267
 * cdef CUresult cuGraphicsVDPAURegisterOutputSurface(CUgraphicsResource* pCudaResource, VdpOutputSurface vdpSurface, unsigned int flags) except ?CUDA_ERROR_NOT_FOUND nogil
 * 
 * cdef enum: CUDA_VERSION = 12040             # <<<<<<<<<<<<<<
 * 
 * cdef enum: CU_IPC_HANDLE_SIZE = 64
 */
enum  {
  __pyx_e_4cuda_5ccuda_CUDA_VERSION = 0x2F08
};

/* "cuda/ccuda.pxd":3269
 * cdef enum: CUDA_VERSION = 12040
 * 
 * cdef enum: CU_IPC_HANDLE_SIZE = 64             # <<<<<<<<<<<<<<
 * 
 * cdef enum: CU_STREAM_LEGACY = 1
 */
enum  {
  __pyx_e_4cuda_5ccuda_CU_IPC_HANDLE_SIZE = 64
};

/* "cuda/ccuda.pxd":3271
 * cdef enum: CU_IPC_HANDLE_SIZE = 64
 * 
 * cdef enum: CU_STREAM_LEGACY = 1             # <<<<<<<<<<<<<<
 * 
 * cdef enum: CU_STREAM_PER_THREAD = 2
 */
enum  {
  __pyx_e_4cuda_5ccuda_CU_STREAM_LEGACY = 1
};

/* "cuda/ccuda.pxd":3273
 * cdef enum: CU_STREAM_LEGACY = 1
 * 
 * cdef enum: CU_STREAM_PER_THREAD = 2             # <<<<<<<<<<<<<<
 * 
 * cdef enum: CU_COMPUTE_ACCELERATED_TARGET_BASE = 65536
 */
enum  {
  __pyx_e_4cuda_5ccuda_CU_STREAM_PER_THREAD = 2
};

/* "cuda/ccuda.pxd":3275
 * cdef enum: CU_STREAM_PER_THREAD = 2
 * 
 * cdef enum: CU_COMPUTE_ACCELERATED_TARGET_BASE = 65536             # <<<<<<<<<<<<<<
 * 
 * cdef enum: CU_GRAPH_COND_ASSIGN_DEFAULT = 1
 */
enum  {
  __pyx_e_4cuda_5ccuda_CU_COMPUTE_ACCELERATED_TARGET_BASE = 0x10000
};

/* "cuda/ccuda.pxd":3277
 * cdef enum: CU_COMPUTE_ACCELERATED_TARGET_BASE = 65536
 * 
 * cdef enum: CU_GRAPH_COND_ASSIGN_DEFAULT = 1             # <<<<<<<<<<<<<<
 * 
 * cdef enum: CU_GRAPH_KERNEL_NODE_PORT_DEFAULT = 0
 */
enum  {
  __pyx_e_4cuda_5ccuda_CU_GRAPH_COND_ASSIGN_DEFAULT = 1
};

/* "cuda/ccuda.pxd":3279
 * cdef enum: CU_GRAPH_COND_ASSIGN_DEFAULT = 1
 * 
 * cdef enum: CU_GRAPH_KERNEL_NODE_PORT_DEFAULT = 0             # <<<<<<<<<<<<<<
 * 
 * cdef enum: CU_GRAPH_KERNEL_NODE_PORT_PROGRAMMATIC = 1
 */
enum  {
  __pyx_e_4cuda_5ccuda_CU_GRAPH_KERNEL_NODE_PORT_DEFAULT = 0
};

/* "cuda/ccuda.pxd":3281
 * cdef enum: CU_GRAPH_KERNEL_NODE_PORT_DEFAULT = 0
 * 
 * cdef enum: CU_GRAPH_KERNEL_NODE_PORT_PROGRAMMATIC = 1             # <<<<<<<<<<<<<<
 * 
 * cdef enum: CU_GRAPH_KERNEL_NODE_PORT_LAUNCH_ORDER = 2
 */
enum  {
  __pyx_e_4cuda_5ccuda_CU_GRAPH_KERNEL_NODE_PORT_PROGRAMMATIC = 1
};

/* "cuda/ccuda.pxd":3283
 * cdef enum: CU_GRAPH_KERNEL_NODE_PORT_PROGRAMMATIC = 1
 * 
 * cdef enum: CU_GRAPH_KERNEL_NODE_PORT_LAUNCH_ORDER = 2             # <<<<<<<<<<<<<<
 * 
 * cdef enum: CU_KERNEL_NODE_ATTRIBUTE_ACCESS_POLICY_WINDOW = 1
 */
enum  {
  __pyx_e_4cuda_5ccuda_CU_GRAPH_KERNEL_NODE_PORT_LAUNCH_ORDER = 2
};

/* "cuda/ccuda.pxd":3285
 * cdef enum: CU_GRAPH_KERNEL_NODE_PORT_LAUNCH_ORDER = 2
 * 
 * cdef enum: CU_KERNEL_NODE_ATTRIBUTE_ACCESS_POLICY_WINDOW = 1             # <<<<<<<<<<<<<<
 * 
 * cdef enum: CU_KERNEL_NODE_ATTRIBUTE_COOPERATIVE = 2
 */
enum  {
  __pyx_e_4cuda_5ccuda_CU_KERNEL_NODE_ATTRIBUTE_ACCESS_POLICY_WINDOW = 1
};

/* "cuda/ccuda.pxd":3287
 * cdef enum: CU_KERNEL_NODE_ATTRIBUTE_ACCESS_POLICY_WINDOW = 1
 * 
 * cdef enum: CU_KERNEL_NODE_ATTRIBUTE_COOPERATIVE = 2             # <<<<<<<<<<<<<<
 * 
 * cdef enum: CU_KERNEL_NODE_ATTRIBUTE_CLUSTER_DIMENSION = 4
 */
enum  {
  __pyx_e_4cuda_5ccuda_CU_KERNEL_NODE_ATTRIBUTE_COOPERATIVE = 2
};

/* "cuda/ccuda.pxd":3289
 * cdef enum: CU_KERNEL_NODE_ATTRIBUTE_COOPERATIVE = 2
 * 
 * cdef enum: CU_KERNEL_NODE_ATTRIBUTE_CLUSTER_DIMENSION = 4             # <<<<<<<<<<<<<<
 * 
 * cdef enum: CU_KERNEL_NODE_ATTRIBUTE_CLUSTER_SCHEDULING_POLICY_PREFERENCE = 5
 */
enum  {
  __pyx_e_4cuda_5ccuda_CU_KERNEL_NODE_ATTRIBUTE_CLUSTER_DIMENSION = 4
};

/* "cuda/ccuda.pxd":3291
 * cdef enum: CU_KERNEL_NODE_ATTRIBUTE_CLUSTER_DIMENSION = 4
 * 
 * cdef enum: CU_KERNEL_NODE_ATTRIBUTE_CLUSTER_SCHEDULING_POLICY_PREFERENCE = 5             # <<<<<<<<<<<<<<
 * 
 * cdef enum: CU_KERNEL_NODE_ATTRIBUTE_PRIORITY = 8
 */
enum  {
  __pyx_e_4cuda_5ccuda_CU_KERNEL_NODE_ATTRIBUTE_CLUSTER_SCHEDULING_POLICY_PREFERENCE = 5
};

/* "cuda/ccuda.pxd":3293
 * cdef enum: CU_KERNEL_NODE_ATTRIBUTE_CLUSTER_SCHEDULING_POLICY_PREFERENCE = 5
 * 
 * cdef enum: CU_KERNEL_NODE_ATTRIBUTE_PRIORITY = 8             # <<<<<<<<<<<<<<
 * 
 * cdef enum: CU_KERNEL_NODE_ATTRIBUTE_MEM_SYNC_DOMAIN_MAP = 9
 */
enum  {
  __pyx_e_4cuda_5ccuda_CU_KERNEL_NODE_ATTRIBUTE_PRIORITY = 8
};

/* "cuda/ccuda.pxd":3295
 * cdef enum: CU_KERNEL_NODE_ATTRIBUTE_PRIORITY = 8
 * 
 * cdef enum: CU_KERNEL_NODE_ATTRIBUTE_MEM_SYNC_DOMAIN_MAP = 9             # <<<<<<<<<<<<<<
 * 
 * cdef enum: CU_KERNEL_NODE_ATTRIBUTE_MEM_SYNC_DOMAIN = 10
 */
enum  {
  __pyx_e_4cuda_5ccuda_CU_KERNEL_NODE_ATTRIBUTE_MEM_SYNC_DOMAIN_MAP = 9
};

/* "cuda/ccuda.pxd":3297
 * cdef enum: CU_KERNEL_NODE_ATTRIBUTE_MEM_SYNC_DOMAIN_MAP = 9
 * 
 * cdef enum: CU_KERNEL_NODE_ATTRIBUTE_MEM_SYNC_DOMAIN = 10             # <<<<<<<<<<<<<<
 * 
 * cdef enum: CU_KERNEL_NODE_ATTRIBUTE_DEVICE_UPDATABLE_KERNEL_NODE = 13
 */
enum  {
  __pyx_e_4cuda_5ccuda_CU_KERNEL_NODE_ATTRIBUTE_MEM_SYNC_DOMAIN = 10
};

/* "cuda/ccuda.pxd":3299
 * cdef enum: CU_KERNEL_NODE_ATTRIBUTE_MEM_SYNC_DOMAIN = 10
 * 
 * cdef enum: CU_KERNEL_NODE_ATTRIBUTE_DEVICE_UPDATABLE_KERNEL_NODE = 13             # <<<<<<<<<<<<<<
 * 
 * cdef enum: CU_STREAM_ATTRIBUTE_ACCESS_POLICY_WINDOW = 1
 */
enum  {
  __pyx_e_4cuda_5ccuda_CU_KERNEL_NODE_ATTRIBUTE_DEVICE_UPDATABLE_KERNEL_NODE = 13
};

/* "cuda/ccuda.pxd":3301
 * cdef enum: CU_KERNEL_NODE_ATTRIBUTE_DEVICE_UPDATABLE_KERNEL_NODE = 13
 * 
 * cdef enum: CU_STREAM_ATTRIBUTE_ACCESS_POLICY_WINDOW = 1             # <<<<<<<<<<<<<<
 * 
 * cdef enum: CU_STREAM_ATTRIBUTE_SYNCHRONIZATION_POLICY = 3
 */
enum  {
  __pyx_e_4cuda_5ccuda_CU_STREAM_ATTRIBUTE_ACCESS_POLICY_WINDOW = 1
};

/* "cuda/ccuda.pxd":3303
 * cdef enum: CU_STREAM_ATTRIBUTE_ACCESS_POLICY_WINDOW = 1
 * 
 * cdef enum: CU_STREAM_ATTRIBUTE_SYNCHRONIZATION_POLICY = 3             # <<<<<<<<<<<<<<
 * 
 * cdef enum: CU_STREAM_ATTRIBUTE_PRIORITY = 8
 */
enum  {
  __pyx_e_4cuda_5ccuda_CU_STREAM_ATTRIBUTE_SYNCHRONIZATION_POLICY = 3
};

/* "cuda/ccuda.pxd":3305
 * cdef enum: CU_STREAM_ATTRIBUTE_SYNCHRONIZATION_POLICY = 3
 * 
 * cdef enum: CU_STREAM_ATTRIBUTE_PRIORITY = 8             # <<<<<<<<<<<<<<
 * 
 * cdef enum: CU_STREAM_ATTRIBUTE_MEM_SYNC_DOMAIN_MAP = 9
 */
enum  {
  __pyx_e_4cuda_5ccuda_CU_STREAM_ATTRIBUTE_PRIORITY = 8
};

/* "cuda/ccuda.pxd":3307
 * cdef enum: CU_STREAM_ATTRIBUTE_PRIORITY = 8
 * 
 * cdef enum: CU_STREAM_ATTRIBUTE_MEM_SYNC_DOMAIN_MAP = 9             # <<<<<<<<<<<<<<
 * 
 * cdef enum: CU_STREAM_ATTRIBUTE_MEM_SYNC_DOMAIN = 10
 */
enum  {
  __pyx_e_4cuda_5ccuda_CU_STREAM_ATTRIBUTE_MEM_SYNC_DOMAIN_MAP = 9
};

/* "cuda/ccuda.pxd":3309
 * cdef enum: CU_STREAM_ATTRIBUTE_MEM_SYNC_DOMAIN_MAP = 9
 * 
 * cdef enum: CU_STREAM_ATTRIBUTE_MEM_SYNC_DOMAIN = 10             # <<<<<<<<<<<<<<
 * 
 * cdef enum: CU_MEMHOSTALLOC_PORTABLE = 1
 */
enum  {
  __pyx_e_4cuda_5ccuda_CU_STREAM_ATTRIBUTE_MEM_SYNC_DOMAIN = 10
};

/* "cuda/ccuda.pxd":3311
 * cdef enum: CU_STREAM_ATTRIBUTE_MEM_SYNC_DOMAIN = 10
 * 
 * cdef enum: CU_MEMHOSTALLOC_PORTABLE = 1             # <<<<<<<<<<<<<<
 * 
 * cdef enum: CU_MEMHOSTALLOC_DEVICEMAP = 2
 */
enum  {
  __pyx_e_4cuda_5ccuda_CU_MEMHOSTALLOC_PORTABLE = 1
};

/* "cuda/ccuda.pxd":3313
 * cdef enum: CU_MEMHOSTALLOC_PORTABLE = 1
 * 
 * cdef enum: CU_MEMHOSTALLOC_DEVICEMAP = 2             # <<<<<<<<<<<<<<
 * 
 * cdef enum: CU_MEMHOSTALLOC_WRITECOMBINED = 4
 */
enum  {
  __pyx_e_4cuda_5ccuda_CU_MEMHOSTALLOC_DEVICEMAP = 2
};

/* "cuda/ccuda.pxd":3315
 * cdef enum: CU_MEMHOSTALLOC_DEVICEMAP = 2
 * 
 * cdef enum: CU_MEMHOSTALLOC_WRITECOMBINED = 4             # <<<<<<<<<<<<<<
 * 
 * cdef enum: CU_MEMHOSTREGISTER_PORTABLE = 1
 */
enum  {
  __pyx_e_4cuda_5ccuda_CU_MEMHOSTALLOC_WRITECOMBINED = 4
};

/* "cuda/ccuda.pxd":3317
 * cdef enum: CU_MEMHOSTALLOC_WRITECOMBINED = 4
 * 
 * cdef enum: CU_MEMHOSTREGISTER_PORTABLE = 1             # <<<<<<<<<<<<<<
 * 
 * cdef enum: CU_MEMHOSTREGISTER_DEVICEMAP = 2
 */
enum  {
  __pyx_e_4cuda_5ccuda_CU_MEMHOSTREGISTER_PORTABLE = 1
};

/* "cuda/ccuda.pxd":3319
 * cdef enum: CU_MEMHOSTREGISTER_PORTABLE = 1
 * 
 * cdef enum: CU_MEMHOSTREGISTER_DEVICEMAP = 2             # <<<<<<<<<<<<<<
 * 
 * cdef enum: CU_MEMHOSTREGISTER_IOMEMORY = 4
 */
enum  {
  __pyx_e_4cuda_5ccuda_CU_MEMHOSTREGISTER_DEVICEMAP = 2
};

/* "cuda/ccuda.pxd":3321
 * cdef enum: CU_MEMHOSTREGISTER_DEVICEMAP = 2
 * 
 * cdef enum: CU_MEMHOSTREGISTER_IOMEMORY = 4             # <<<<<<<<<<<<<<
 * 
 * cdef enum: CU_MEMHOSTREGISTER_READ_ONLY = 8
 */
enum  {
  __pyx_e_4cuda_5ccuda_CU_MEMHOSTREGISTER_IOMEMORY = 4
};

/* "cuda/ccuda.pxd":3323
 * cdef enum: CU_MEMHOSTREGISTER_IOMEMORY = 4
 * 
 * cdef enum: CU_MEMHOSTREGISTER_READ_ONLY = 8             # <<<<<<<<<<<<<<
 * 
 * cdef enum: CU_ARRAY_SPARSE_PROPERTIES_SINGLE_MIPTAIL = 1
 */
enum  {
  __pyx_e_4cuda_5ccuda_CU_MEMHOSTREGISTER_READ_ONLY = 8
};

/* "cuda/ccuda.pxd":3325
 * cdef enum: CU_MEMHOSTREGISTER_READ_ONLY = 8
 * 
 * cdef enum: CU_ARRAY_SPARSE_PROPERTIES_SINGLE_MIPTAIL = 1             # <<<<<<<<<<<<<<
 * 
 * cdef enum: CU_TENSOR_MAP_NUM_QWORDS = 16
 */
enum  {
  __pyx_e_4cuda_5ccuda_CU_ARRAY_SPARSE_PROPERTIES_SINGLE_MIPTAIL = 1
};

/* "cuda/ccuda.pxd":3327
 * cdef enum: CU_ARRAY_SPARSE_PROPERTIES_SINGLE_MIPTAIL = 1
 * 
 * cdef enum: CU_TENSOR_MAP_NUM_QWORDS = 16             # <<<<<<<<<<<<<<
 * 
 * cdef enum: CUDA_EXTERNAL_MEMORY_DEDICATED = 1
 */
enum  {
  __pyx_e_4cuda_5ccuda_CU_TENSOR_MAP_NUM_QWORDS = 16
};

/* "cuda/ccuda.pxd":3329
 * cdef enum: CU_TENSOR_MAP_NUM_QWORDS = 16
 * 
 * cdef enum: CUDA_EXTERNAL_MEMORY_DEDICATED = 1             # <<<<<<<<<<<<<<
 * 
 * cdef enum: CUDA_EXTERNAL_SEMAPHORE_SIGNAL_SKIP_NVSCIBUF_MEMSYNC = 1
 */
enum  {
  __pyx_e_4cuda_5ccuda_CUDA_EXTERNAL_MEMORY_DEDICATED = 1
};

/* "cuda/ccuda.pxd":3331
 * cdef enum: CUDA_EXTERNAL_MEMORY_DEDICATED = 1
 * 
 * cdef enum: CUDA_EXTERNAL_SEMAPHORE_SIGNAL_SKIP_NVSCIBUF_MEMSYNC = 1             # <<<<<<<<<<<<<<
 * 
 * cdef enum: CUDA_EXTERNAL_SEMAPHORE_WAIT_SKIP_NVSCIBUF_MEMSYNC = 2
 */
enum  {
  __pyx_e_4cuda_5ccuda_CUDA_EXTERNAL_SEMAPHORE_SIGNAL_SKIP_NVSCIBUF_MEMSYNC = 1
};

/* "cuda/ccuda.pxd":3333
 * cdef enum: CUDA_EXTERNAL_SEMAPHORE_SIGNAL_SKIP_NVSCIBUF_MEMSYNC = 1
 * 
 * cdef enum: CUDA_EXTERNAL_SEMAPHORE_WAIT_SKIP_NVSCIBUF_MEMSYNC = 2             # <<<<<<<<<<<<<<
 * 
 * cdef enum: CUDA_NVSCISYNC_ATTR_SIGNAL = 1
 */
enum  {
  __pyx_e_4cuda_5ccuda_CUDA_EXTERNAL_SEMAPHORE_WAIT_SKIP_NVSCIBUF_MEMSYNC = 2
};

/* "cuda/ccuda.pxd":3335
 * cdef enum: CUDA_EXTERNAL_SEMAPHORE_WAIT_SKIP_NVSCIBUF_MEMSYNC = 2
 * 
 * cdef enum: CUDA_NVSCISYNC_ATTR_SIGNAL = 1             # <<<<<<<<<<<<<<
 * 
 * cdef enum: CUDA_NVSCISYNC_ATTR_WAIT = 2
 */
enum  {
  __pyx_e_4cuda_5ccuda_CUDA_NVSCISYNC_ATTR_SIGNAL = 1
};

/* "cuda/ccuda.pxd":3337
 * cdef enum: CUDA_NVSCISYNC_ATTR_SIGNAL = 1
 * 
 * cdef enum: CUDA_NVSCISYNC_ATTR_WAIT = 2             # <<<<<<<<<<<<<<
 * 
 * cdef enum: CU_MEM_CREATE_USAGE_TILE_POOL = 1
 */
enum  {
  __pyx_e_4cuda_5ccuda_CUDA_NVSCISYNC_ATTR_WAIT = 2
};

/* "cuda/ccuda.pxd":3339
 * cdef enum: CUDA_NVSCISYNC_ATTR_WAIT = 2
 * 
 * cdef enum: CU_MEM_CREATE_USAGE_TILE_POOL = 1             # <<<<<<<<<<<<<<
 * 
 * cdef enum: CUDA_COOPERATIVE_LAUNCH_MULTI_DEVICE_NO_PRE_LAUNCH_SYNC = 1
 */
enum  {
  __pyx_e_4cuda_5ccuda_CU_MEM_CREATE_USAGE_TILE_POOL = 1
};

/* "cuda/ccuda.pxd":3341
 * cdef enum: CU_MEM_CREATE_USAGE_TILE_POOL = 1
 * 
 * cdef enum: CUDA_COOPERATIVE_LAUNCH_MULTI_DEVICE_NO_PRE_LAUNCH_SYNC = 1             # <<<<<<<<<<<<<<
 * 
 * cdef enum: CUDA_COOPERATIVE_LAUNCH_MULTI_DEVICE_NO_POST_LAUNCH_SYNC = 2
 */
enum  {
  __pyx_e_4cuda_5ccuda_CUDA_COOPERATIVE_LAUNCH_MULTI_DEVICE_NO_PRE_LAUNCH_SYNC = 1
};

/* "cuda/ccuda.pxd":3343
 * cdef enum: CUDA_COOPERATIVE_LAUNCH_MULTI_DEVICE_NO_PRE_LAUNCH_SYNC = 1
 * 
 * cdef enum: CUDA_COOPERATIVE_LAUNCH_MULTI_DEVICE_NO_POST_LAUNCH_SYNC = 2             # <<<<<<<<<<<<<<
 * 
 * cdef enum: CUDA_ARRAY3D_LAYERED = 1
 */
enum  {
  __pyx_e_4cuda_5ccuda_CUDA_COOPERATIVE_LAUNCH_MULTI_DEVICE_NO_POST_LAUNCH_SYNC = 2
};

/* "cuda/ccuda.pxd":3345
 * cdef enum: CUDA_COOPERATIVE_LAUNCH_MULTI_DEVICE_NO_POST_LAUNCH_SYNC = 2
 * 
 * cdef enum: CUDA_ARRAY3D_LAYERED = 1             # <<<<<<<<<<<<<<
 * 
 * cdef enum: CUDA_ARRAY3D_2DARRAY = 1
 */
enum  {
  __pyx_e_4cuda_5ccuda_CUDA_ARRAY3D_LAYERED = 1
};

/* "cuda/ccuda.pxd":3347
 * cdef enum: CUDA_ARRAY3D_LAYERED = 1
 * 
 * cdef enum: CUDA_ARRAY3D_2DARRAY = 1             # <<<<<<<<<<<<<<
 * 
 * cdef enum: CUDA_ARRAY3D_SURFACE_LDST = 2
 */
enum  {
  __pyx_e_4cuda_5ccuda_CUDA_ARRAY3D_2DARRAY = 1
};

/* "cuda/ccuda.pxd":3349
 * cdef enum: CUDA_ARRAY3D_2DARRAY = 1
 * 
 * cdef enum: CUDA_ARRAY3D_SURFACE_LDST = 2             # <<<<<<<<<<<<<<
 * 
 * cdef enum: CUDA_ARRAY3D_CUBEMAP = 4
 */
enum  {
  __pyx_e_4cuda_5ccuda_CUDA_ARRAY3D_SURFACE_LDST = 2
};

/* "cuda/ccuda.pxd":3351
 * cdef enum: CUDA_ARRAY3D_SURFACE_LDST = 2
 * 
 * cdef enum: CUDA_ARRAY3D_CUBEMAP = 4             # <<<<<<<<<<<<<<
 * 
 * cdef enum: CUDA_ARRAY3D_TEXTURE_GATHER = 8
 */
enum  {
  __pyx_e_4cuda_5ccuda_CUDA_ARRAY3D_CUBEMAP = 4
};

/* "cuda/ccuda.pxd":3353
 * cdef enum: CUDA_ARRAY3D_CUBEMAP = 4
 * 
 * cdef enum: CUDA_ARRAY3D_TEXTURE_GATHER = 8             # <<<<<<<<<<<<<<
 * 
 * cdef enum: CUDA_ARRAY3D_DEPTH_TEXTURE = 16
 */
enum  {
  __pyx_e_4cuda_5ccuda_CUDA_ARRAY3D_TEXTURE_GATHER = 8
};

/* "cuda/ccuda.pxd":3355
 * cdef enum: CUDA_ARRAY3D_TEXTURE_GATHER = 8
 * 
 * cdef enum: CUDA_ARRAY3D_DEPTH_TEXTURE = 16             # <<<<<<<<<<<<<<
 * 
 * cdef enum: CUDA_ARRAY3D_COLOR_ATTACHMENT = 32
 */
enum  {
  __pyx_e_4cuda_5ccuda_CUDA_ARRAY3D_DEPTH_TEXTURE = 16
};

/* "cuda/ccuda.pxd":3357
 * cdef enum: CUDA_ARRAY3D_DEPTH_TEXTURE = 16
 * 
 * cdef enum: CUDA_ARRAY3D_COLOR_ATTACHMENT = 32             # <<<<<<<<<<<<<<
 * 
 * cdef enum: CUDA_ARRAY3D_SPARSE = 64
 */
enum  {
  __pyx_e_4cuda_5ccuda_CUDA_ARRAY3D_COLOR_ATTACHMENT = 32
};

/* "cuda/ccuda.pxd":3359
 * cdef enum: CUDA_ARRAY3D_COLOR_ATTACHMENT = 32
 * 
 * cdef enum: CUDA_ARRAY3D_SPARSE = 64             # <<<<<<<<<<<<<<
 * 
 * cdef enum: CUDA_ARRAY3D_DEFERRED_MAPPING = 128
 */
enum  {
  __pyx_e_4cuda_5ccuda_CUDA_ARRAY3D_SPARSE = 64
};

/* "cuda/ccuda.pxd":3361
 * cdef enum: CUDA_ARRAY3D_SPARSE = 64
 * 
 * cdef enum: CUDA_ARRAY3D_DEFERRED_MAPPING = 128             # <<<<<<<<<<<<<<
 * 
 * cdef enum: CU_TRSA_OVERRIDE_FORMAT = 1
 */
enum  {
  __pyx_e_4cuda_5ccuda_CUDA_ARRAY3D_DEFERRED_MAPPING = 0x80
};

/* "cuda/ccuda.pxd":3363
 * cdef enum: CUDA_ARRAY3D_DEFERRED_MAPPING = 128
 * 
 * cdef enum: CU_TRSA_OVERRIDE_FORMAT = 1             # <<<<<<<<<<<<<<
 * 
 * cdef enum: CU_TRSF_READ_AS_INTEGER = 1
 */
enum  {
  __pyx_e_4cuda_5ccuda_CU_TRSA_OVERRIDE_FORMAT = 1
};

/* "cuda/ccuda.pxd":3365
 * cdef enum: CU_TRSA_OVERRIDE_FORMAT = 1
 * 
 * cdef enum: CU_TRSF_READ_AS_INTEGER = 1             # <<<<<<<<<<<<<<
 * 
 * cdef enum: CU_TRSF_NORMALIZED_COORDINATES = 2
 */
enum  {
  __pyx_e_4cuda_5ccuda_CU_TRSF_READ_AS_INTEGER = 1
};

/* "cuda/ccuda.pxd":3367
 * cdef enum: CU_TRSF_READ_AS_INTEGER = 1
 * 
 * cdef enum: CU_TRSF_NORMALIZED_COORDINATES = 2             # <<<<<<<<<<<<<<
 * 
 * cdef enum: CU_TRSF_SRGB = 16
 */
enum  {
  __pyx_e_4cuda_5ccuda_CU_TRSF_NORMALIZED_COORDINATES = 2
};

/* "cuda/ccuda.pxd":3369
 * cdef enum: CU_TRSF_NORMALIZED_COORDINATES = 2
 * 
 * cdef enum: CU_TRSF_SRGB = 16             # <<<<<<<<<<<<<<
 * 
 * cdef enum: CU_TRSF_DISABLE_TRILINEAR_OPTIMIZATION = 32
 */
enum  {
  __pyx_e_4cuda_5ccuda_CU_TRSF_SRGB = 16
};

/* "cuda/ccuda.pxd":3371
 * cdef enum: CU_TRSF_SRGB = 16
 * 
 * cdef enum: CU_TRSF_DISABLE_TRILINEAR_OPTIMIZATION = 32             # <<<<<<<<<<<<<<
 * 
 * cdef enum: CU_TRSF_SEAMLESS_CUBEMAP = 64
 */
enum  {
  __pyx_e_4cuda_5ccuda_CU_TRSF_DISABLE_TRILINEAR_OPTIMIZATION = 32
};

/* "cuda/ccuda.pxd":3373
 * cdef enum: CU_TRSF_DISABLE_TRILINEAR_OPTIMIZATION = 32
 * 
 * cdef enum: CU_TRSF_SEAMLESS_CUBEMAP = 64             # <<<<<<<<<<<<<<
 * 
 * cdef enum: CU_LAUNCH_PARAM_END_AS_INT = 0
 */
enum  {
  __pyx_e_4cuda_5ccuda_CU_TRSF_SEAMLESS_CUBEMAP = 64
};

/* "cuda/ccuda.pxd":3375
 * cdef enum: CU_TRSF_SEAMLESS_CUBEMAP = 64
 * 
 * cdef enum: CU_LAUNCH_PARAM_END_AS_INT = 0             # <<<<<<<<<<<<<<
 * 
 * cdef enum: CU_LAUNCH_PARAM_END = 0
 */
enum  {
  __pyx_e_4cuda_5ccuda_CU_LAUNCH_PARAM_END_AS_INT = 0
};

/* "cuda/ccuda.pxd":3377
 * cdef enum: CU_LAUNCH_PARAM_END_AS_INT = 0
 * 
 * cdef enum: CU_LAUNCH_PARAM_END = 0             # <<<<<<<<<<<<<<
 * 
 * cdef enum: CU_LAUNCH_PARAM_BUFFER_POINTER_AS_INT = 1
 */
enum  {
  __pyx_e_4cuda_5ccuda_CU_LAUNCH_PARAM_END = 0
};

/* "cuda/ccuda.pxd":3379
 * cdef enum: CU_LAUNCH_PARAM_END = 0
 * 
 * cdef enum: CU_LAUNCH_PARAM_BUFFER_POINTER_AS_INT = 1             # <<<<<<<<<<<<<<
 * 
 * cdef enum: CU_LAUNCH_PARAM_BUFFER_POINTER = 1
 */
enum  {
  __pyx_e_4cuda_5ccuda_CU_LAUNCH_PARAM_BUFFER_POINTER_AS_INT = 1
};

/* "cuda/ccuda.pxd":3381
 * cdef enum: CU_LAUNCH_PARAM_BUFFER_POINTER_AS_INT = 1
 * 
 * cdef enum: CU_LAUNCH_PARAM_BUFFER_POINTER = 1             # <<<<<<<<<<<<<<
 * 
 * cdef enum: CU_LAUNCH_PARAM_BUFFER_SIZE_AS_INT = 2
 */
enum  {
  __pyx_e_4cuda_5ccuda_CU_LAUNCH_PARAM_BUFFER_POINTER = 1
};

/* "cuda/ccuda.pxd":3383
 * cdef enum: CU_LAUNCH_PARAM_BUFFER_POINTER = 1
 * 
 * cdef enum: CU_LAUNCH_PARAM_BUFFER_SIZE_AS_INT = 2             # <<<<<<<<<<<<<<
 * 
 * cdef enum: CU_LAUNCH_PARAM_BUFFER_SIZE = 2
 */
enum  {
  __pyx_e_4cuda_5ccuda_CU_LAUNCH_PARAM_BUFFER_SIZE_AS_INT = 2
};

/* "cuda/ccuda.pxd":3385
 * cdef enum: CU_LAUNCH_PARAM_BUFFER_SIZE_AS_INT = 2
 * 
 * cdef enum: CU_LAUNCH_PARAM_BUFFER_SIZE = 2             # <<<<<<<<<<<<<<
 * 
 * cdef enum: CU_PARAM_TR_DEFAULT = -1
 */
enum  {
  __pyx_e_4cuda_5ccuda_CU_LAUNCH_PARAM_BUFFER_SIZE = 2
};

/* "cuda/ccuda.pxd":3387
 * cdef enum: CU_LAUNCH_PARAM_BUFFER_SIZE = 2
 * 
 * cdef enum: CU_PARAM_TR_DEFAULT = -1             # <<<<<<<<<<<<<<
 * 
 * cdef enum: CU_DEVICE_CPU = -1
 */
enum  {
  __pyx_e_4cuda_5ccuda_CU_PARAM_TR_DEFAULT = -1L
};

/* "cuda/ccuda.pxd":3389
 * cdef enum: CU_PARAM_TR_DEFAULT = -1
 * 
 * cdef enum: CU_DEVICE_CPU = -1             # <<<<<<<<<<<<<<
 * 
 * cdef enum: CU_DEVICE_INVALID = -2
 */
enum  {
  __pyx_e_4cuda_5ccuda_CU_DEVICE_CPU = -1L
};

/* "cuda/ccuda.pxd":3391
 * cdef enum: CU_DEVICE_CPU = -1
 * 
 * cdef enum: CU_DEVICE_INVALID = -2             # <<<<<<<<<<<<<<
 * 
 * cdef enum: RESOURCE_ABI_VERSION = 1
 */
enum  {
  __pyx_e_4cuda_5ccuda_CU_DEVICE_INVALID = -2L
};

/* "cuda/ccuda.pxd":3393
 * cdef enum: CU_DEVICE_INVALID = -2
 * 
 * cdef enum: RESOURCE_ABI_VERSION = 1             # <<<<<<<<<<<<<<
 * 
 * cdef enum: RESOURCE_ABI_EXTERNAL_BYTES = 48
 */
enum  {
  __pyx_e_4cuda_5ccuda_RESOURCE_ABI_VERSION = 1
};

/* "cuda/ccuda.pxd":3395
 * cdef enum: RESOURCE_ABI_VERSION = 1
 * 
 * cdef enum: RESOURCE_ABI_EXTERNAL_BYTES = 48             # <<<<<<<<<<<<<<
 * 
 * cdef enum: MAX_PLANES = 3
 */
enum  {
  __pyx_e_4cuda_5ccuda_RESOURCE_ABI_EXTERNAL_BYTES = 48
};

/* "cuda/ccuda.pxd":3397
 * cdef enum: RESOURCE_ABI_EXTERNAL_BYTES = 48
 * 
 * cdef enum: MAX_PLANES = 3             # <<<<<<<<<<<<<<
 * 
 * cdef enum: CUDA_EGL_INFINITE_TIMEOUT = 4294967295
 */
enum  {
  __pyx_e_4cuda_5ccuda_MAX_PLANES = 3
};

/* "cuda/ccuda.pxd":3399
 * cdef enum: MAX_PLANES = 3
 * 
 * cdef enum: CUDA_EGL_INFINITE_TIMEOUT = 4294967295             # <<<<<<<<<<<<<<
 */
enum  {
  __pyx_e_4cuda_5ccuda_CUDA_EGL_INFINITE_TIMEOUT = 0xFFFFFFFF
};

/* "cuda/ccuda.pxd":2172
 *     CU_EGL_FRAME_TYPE_PITCH = 1
 * 
 * ctypedef CUeglFrameType_enum CUeglFrameType             # <<<<<<<<<<<<<<
 * 
 * cdef enum CUeglResourceLocationFlags_enum:
 */
typedef enum __pyx_t_4cuda_5ccuda_CUeglFrameType_enum __pyx_t_4cuda_5ccuda_CUeglFrameType;

/* "cuda/ccuda.pxd":2178
 *     CU_EGL_RESOURCE_LOCATION_VIDMEM = 1
 * 
 * ctypedef CUeglResourceLocationFlags_enum CUeglResourceLocationFlags             # <<<<<<<<<<<<<<
 * 
 * cdef enum CUeglColorFormat_enum:
 */
typedef enum __pyx_t_4cuda_5ccuda_CUeglResourceLocationFlags_enum __pyx_t_4cuda_5ccuda_CUeglResourceLocationFlags;

/* "cuda/ccuda.pxd":2297
 *     CU_EGL_COLOR_FORMAT_MAX = 114
 * 
 * ctypedef CUeglColorFormat_enum CUeglColorFormat             # <<<<<<<<<<<<<<
 * 
 * cdef union anon_union14:
 */
typedef enum __pyx_t_4cuda_5ccuda_CUeglColorFormat_enum __pyx_t_4cuda_5ccuda_CUeglColorFormat;

/* "cuda/ccuda.pxd":2299
 * ctypedef CUeglColorFormat_enum CUeglColorFormat
 * 
 * cdef union anon_union14:             # <<<<<<<<<<<<<<
 *     CUarray pArray[3]
 *     void* pPitch[3]
 */
union __pyx_t_4cuda_5ccuda_anon_union14 {
  CUarray pArray[3];
  void *pPitch[3];
};

/* "cuda/ccuda.pxd":2303
 *     void* pPitch[3]
 * 
 * cdef struct CUeglFrame_st:             # <<<<<<<<<<<<<<
 *     anon_union14 frame
 *     unsigned int width
 */
struct __pyx_t_4cuda_5ccuda_CUeglFrame_st {
  union __pyx_t_4cuda_5ccuda_anon_union14 frame;
  unsigned int width;
  unsigned int height;
  unsigned int depth;
  unsigned int pitch;
  unsigned int planeCount;
  unsigned int numChannels;
  __pyx_t_4cuda_5ccuda_CUeglFrameType frameType;
  __pyx_t_4cuda_5ccuda_CUeglColorFormat eglColorFormat;
  CUarray_format cuFormat;
};

/* "cuda/ccuda.pxd":2315
 *     CUarray_format cuFormat
 * 
 * ctypedef CUeglFrame_st CUeglFrame_v1             # <<<<<<<<<<<<<<
 * 
 * ctypedef CUeglFrame_v1 CUeglFrame
 */
typedef struct __pyx_t_4cuda_5ccuda_CUeglFrame_st __pyx_t_4cuda_5ccuda_CUeglFrame_v1;

/* "cuda/ccuda.pxd":2317
 * ctypedef CUeglFrame_st CUeglFrame_v1
 * 
 * ctypedef CUeglFrame_v1 CUeglFrame             # <<<<<<<<<<<<<<
 * 
 * cdef extern from "":
 */
typedef __pyx_t_4cuda_5ccuda_CUeglFrame_v1 __pyx_t_4cuda_5ccuda_CUeglFrame;

/* "cuda/ccuda.pxd":2322
 *     cdef struct CUeglStreamConnection_st:
 *         pass
 * ctypedef CUeglStreamConnection_st* CUeglStreamConnection             # <<<<<<<<<<<<<<
 * 
 * cdef enum CUGLDeviceList_enum:
 */
typedef struct CUeglStreamConnection_st *__pyx_t_4cuda_5ccuda_CUeglStreamConnection;

/* "cuda/ccuda.pxd":2329
 *     CU_GL_DEVICE_LIST_NEXT_FRAME = 3
 * 
 * ctypedef CUGLDeviceList_enum CUGLDeviceList             # <<<<<<<<<<<<<<
 * 
 * cdef enum CUGLmap_flags_enum:
 */
typedef enum __pyx_t_4cuda_5ccuda_CUGLDeviceList_enum __pyx_t_4cuda_5ccuda_CUGLDeviceList;

/* "cuda/ccuda.pxd":2336
 *     CU_GL_MAP_RESOURCE_FLAGS_WRITE_DISCARD = 2
 * 
 * ctypedef CUGLmap_flags_enum CUGLmap_flags             # <<<<<<<<<<<<<<
 * 
 * ctypedef unsigned int GLenum
 */
typedef enum __pyx_t_4cuda_5ccuda_CUGLmap_flags_enum __pyx_t_4cuda_5ccuda_CUGLmap_flags;

/* "cuda/ccuda.pxd":2345
 *     cdef struct void:
 *         pass
 * ctypedef void* EGLImageKHR             # <<<<<<<<<<<<<<
 * 
 * cdef extern from "":
 */
typedef void *__pyx_t_4cuda_5ccuda_EGLImageKHR;

/* "cuda/ccuda.pxd":2350
 *     cdef struct void:
 *         pass
 * ctypedef void* EGLStreamKHR             # <<<<<<<<<<<<<<
 * 
 * ctypedef unsigned int EGLint
 */
typedef void *__pyx_t_4cuda_5ccuda_EGLStreamKHR;

/* "cuda/ccuda.pxd":2357
 *     cdef struct void:
 *         pass
 * ctypedef void* EGLSyncKHR             # <<<<<<<<<<<<<<
 * 
 * ctypedef uint32_t VdpDevice
 */
typedef void *__pyx_t_4cuda_5ccuda_EGLSyncKHR;
/* #### Code section: utility_code_proto ### */

/* --- Runtime support code (head) --- */
/* Refnanny.proto */
#ifndef CYTHON_REFNANNY
  #define CYTHON_REFNANNY 0
#endif
#if CYTHON_REFNANNY
  typedef struct {
    void (*INCREF)(void*, PyObject*, Py_ssize_t);
    void (*DECREF)(void*, PyObject*, Py_ssize_t);
    void (*GOTREF)(void*, PyObject*, Py_ssize_t);
    void (*GIVEREF)(void*, PyObject*, Py_ssize_t);
    void* (*SetupContext)(const char*, Py_ssize_t, const char*);
    void (*FinishContext)(void**);
  } __Pyx_RefNannyAPIStruct;
  static __Pyx_RefNannyAPIStruct *__Pyx_RefNanny = NULL;
  static __Pyx_RefNannyAPIStruct *__Pyx_RefNannyImportAPI(const char *modname);
  #define __Pyx_RefNannyDeclarations void *__pyx_refnanny = NULL;
#ifdef WITH_THREAD
  #define __Pyx_RefNannySetupContext(name, acquire_gil)\
          if (acquire_gil) {\
              PyGILState_STATE __pyx_gilstate_save = PyGILState_Ensure();\
              __pyx_refnanny = __Pyx_RefNanny->SetupContext((name), (__LINE__), (__FILE__));\
              PyGILState_Release(__pyx_gilstate_save);\
          } else {\
              __pyx_refnanny = __Pyx_RefNanny->SetupContext((name), (__LINE__), (__FILE__));\
          }
  #define __Pyx_RefNannyFinishContextNogil() {\
              PyGILState_STATE __pyx_gilstate_save = PyGILState_Ensure();\
              __Pyx_RefNannyFinishContext();\
              PyGILState_Release(__pyx_gilstate_save);\
          }
#else
  #define __Pyx_RefNannySetupContext(name, acquire_gil)\
          __pyx_refnanny = __Pyx_RefNanny->SetupContext((name), (__LINE__), (__FILE__))
  #define __Pyx_RefNannyFinishContextNogil() __Pyx_RefNannyFinishContext()
#endif
  #define __Pyx_RefNannyFinishContextNogil() {\
              PyGILState_STATE __pyx_gilstate_save = PyGILState_Ensure();\
              __Pyx_RefNannyFinishContext();\
              PyGILState_Release(__pyx_gilstate_save);\
          }
  #define __Pyx_RefNannyFinishContext()\
          __Pyx_RefNanny->FinishContext(&__pyx_refnanny)
  #define __Pyx_INCREF(r)  __Pyx_RefNanny->INCREF(__pyx_refnanny, (PyObject *)(r), (__LINE__))
  #define __Pyx_DECREF(r)  __Pyx_RefNanny->DECREF(__pyx_refnanny, (PyObject *)(r), (__LINE__))
  #define __Pyx_GOTREF(r)  __Pyx_RefNanny->GOTREF(__pyx_refnanny, (PyObject *)(r), (__LINE__))
  #define __Pyx_GIVEREF(r) __Pyx_RefNanny->GIVEREF(__pyx_refnanny, (PyObject *)(r), (__LINE__))
  #define __Pyx_XINCREF(r)  do { if((r) == NULL); else {__Pyx_INCREF(r); }} while(0)
  #define __Pyx_XDECREF(r)  do { if((r) == NULL); else {__Pyx_DECREF(r); }} while(0)
  #define __Pyx_XGOTREF(r)  do { if((r) == NULL); else {__Pyx_GOTREF(r); }} while(0)
  #define __Pyx_XGIVEREF(r) do { if((r) == NULL); else {__Pyx_GIVEREF(r);}} while(0)
#else
  #define __Pyx_RefNannyDeclarations
  #define __Pyx_RefNannySetupContext(name, acquire_gil)
  #define __Pyx_RefNannyFinishContextNogil()
  #define __Pyx_RefNannyFinishContext()
  #define __Pyx_INCREF(r) Py_INCREF(r)
  #define __Pyx_DECREF(r) Py_DECREF(r)
  #define __Pyx_GOTREF(r)
  #define __Pyx_GIVEREF(r)
  #define __Pyx_XINCREF(r) Py_XINCREF(r)
  #define __Pyx_XDECREF(r) Py_XDECREF(r)
  #define __Pyx_XGOTREF(r)
  #define __Pyx_XGIVEREF(r)
#endif
#define __Pyx_Py_XDECREF_SET(r, v) do {\
        PyObject *tmp = (PyObject *) r;\
        r = v; Py_XDECREF(tmp);\
    } while (0)
#define __Pyx_XDECREF_SET(r, v) do {\
        PyObject *tmp = (PyObject *) r;\
        r = v; __Pyx_XDECREF(tmp);\
    } while (0)
#define __Pyx_DECREF_SET(r, v) do {\
        PyObject *tmp = (PyObject *) r;\
        r = v; __Pyx_DECREF(tmp);\
    } while (0)
#define __Pyx_CLEAR(r)    do { PyObject* tmp = ((PyObject*)(r)); r = NULL; __Pyx_DECREF(tmp);} while(0)
#define __Pyx_XCLEAR(r)   do { if((r) != NULL) {PyObject* tmp = ((PyObject*)(r)); r = NULL; __Pyx_DECREF(tmp);}} while(0)

/* PyErrExceptionMatches.proto */
#if CYTHON_FAST_THREAD_STATE
#define __Pyx_PyErr_ExceptionMatches(err) __Pyx_PyErr_ExceptionMatchesInState(__pyx_tstate, err)
static CYTHON_INLINE int __Pyx_PyErr_ExceptionMatchesInState(PyThreadState* tstate, PyObject* err);
#else
#define __Pyx_PyErr_ExceptionMatches(err)  PyErr_ExceptionMatches(err)
#endif

/* PyThreadStateGet.proto */
#if CYTHON_FAST_THREAD_STATE
#define __Pyx_PyThreadState_declare  PyThreadState *__pyx_tstate;
#define __Pyx_PyThreadState_assign  __pyx_tstate = __Pyx_PyThreadState_Current;
#if PY_VERSION_HEX >= 0x030C00A6
#define __Pyx_PyErr_Occurred()  (__pyx_tstate->current_exception != NULL)
#define __Pyx_PyErr_CurrentExceptionType()  (__pyx_tstate->current_exception ? (PyObject*) Py_TYPE(__pyx_tstate->current_exception) : (PyObject*) NULL)
#else
#define __Pyx_PyErr_Occurred()  (__pyx_tstate->curexc_type != NULL)
#define __Pyx_PyErr_CurrentExceptionType()  (__pyx_tstate->curexc_type)
#endif
#else
#define __Pyx_PyThreadState_declare
#define __Pyx_PyThreadState_assign
#define __Pyx_PyErr_Occurred()  (PyErr_Occurred() != NULL)
#define __Pyx_PyErr_CurrentExceptionType()  PyErr_Occurred()
#endif

/* PyErrFetchRestore.proto */
#if CYTHON_FAST_THREAD_STATE
#define __Pyx_PyErr_Clear() __Pyx_ErrRestore(NULL, NULL, NULL)
#define __Pyx_ErrRestoreWithState(type, value, tb)  __Pyx_ErrRestoreInState(PyThreadState_GET(), type, value, tb)
#define __Pyx_ErrFetchWithState(type, value, tb)    __Pyx_ErrFetchInState(PyThreadState_GET(), type, value, tb)
#define __Pyx_ErrRestore(type, value, tb)  __Pyx_ErrRestoreInState(__pyx_tstate, type, value, tb)
#define __Pyx_ErrFetch(type, value, tb)    __Pyx_ErrFetchInState(__pyx_tstate, type, value, tb)
static CYTHON_INLINE void __Pyx_ErrRestoreInState(PyThreadState *tstate, PyObject *type, PyObject *value, PyObject *tb);
static CYTHON_INLINE void __Pyx_ErrFetchInState(PyThreadState *tstate, PyObject **type, PyObject **value, PyObject **tb);
#if CYTHON_COMPILING_IN_CPYTHON && PY_VERSION_HEX < 0x030C00A6
#define __Pyx_PyErr_SetNone(exc) (Py_INCREF(exc), __Pyx_ErrRestore((exc), NULL, NULL))
#else
#define __Pyx_PyErr_SetNone(exc) PyErr_SetNone(exc)
#endif
#else
#define __Pyx_PyErr_Clear() PyErr_Clear()
#define __Pyx_PyErr_SetNone(exc) PyErr_SetNone(exc)
#define __Pyx_ErrRestoreWithState(type, value, tb)  PyErr_Restore(type, value, tb)
#define __Pyx_ErrFetchWithState(type, value, tb)  PyErr_Fetch(type, value, tb)
#define __Pyx_ErrRestoreInState(tstate, type, value, tb)  PyErr_Restore(type, value, tb)
#define __Pyx_ErrFetchInState(tstate, type, value, tb)  PyErr_Fetch(type, value, tb)
#define __Pyx_ErrRestore(type, value, tb)  PyErr_Restore(type, value, tb)
#define __Pyx_ErrFetch(type, value, tb)  PyErr_Fetch(type, value, tb)
#endif

/* PyObjectGetAttrStr.proto */
#if CYTHON_USE_TYPE_SLOTS
static CYTHON_INLINE PyObject* __Pyx_PyObject_GetAttrStr(PyObject* obj, PyObject* attr_name);
#else
#define __Pyx_PyObject_GetAttrStr(o,n) PyObject_GetAttr(o,n)
#endif

/* PyObjectGetAttrStrNoError.proto */
static CYTHON_INLINE PyObject* __Pyx_PyObject_GetAttrStrNoError(PyObject* obj, PyObject* attr_name);

/* GetBuiltinName.proto */
static PyObject *__Pyx_GetBuiltinName(PyObject *name);

/* Profile.proto */
#ifndef CYTHON_PROFILE
#if CYTHON_COMPILING_IN_LIMITED_API || CYTHON_COMPILING_IN_PYPY
  #define CYTHON_PROFILE 0
#else
  #define CYTHON_PROFILE 1
#endif
#endif
#ifndef CYTHON_TRACE_NOGIL
  #define CYTHON_TRACE_NOGIL 0
#else
  #if CYTHON_TRACE_NOGIL && !defined(CYTHON_TRACE)
    #define CYTHON_TRACE 1
  #endif
#endif
#ifndef CYTHON_TRACE
  #define CYTHON_TRACE 0
#endif
#if CYTHON_TRACE
  #undef CYTHON_PROFILE_REUSE_FRAME
#endif
#ifndef CYTHON_PROFILE_REUSE_FRAME
  #define CYTHON_PROFILE_REUSE_FRAME 0
#endif
#if CYTHON_PROFILE || CYTHON_TRACE
  #include "compile.h"
  #include "frameobject.h"
  #include "traceback.h"
#if PY_VERSION_HEX >= 0x030b00a6
  #ifndef Py_BUILD_CORE
    #define Py_BUILD_CORE 1
  #endif
  #include "internal/pycore_frame.h"
#endif
  #if CYTHON_PROFILE_REUSE_FRAME
    #define CYTHON_FRAME_MODIFIER static
    #define CYTHON_FRAME_DEL(frame)
  #else
    #define CYTHON_FRAME_MODIFIER
    #define CYTHON_FRAME_DEL(frame) Py_CLEAR(frame)
  #endif
  #define __Pyx_TraceDeclarations\
      static PyCodeObject *__pyx_frame_code = NULL;\
      CYTHON_FRAME_MODIFIER PyFrameObject *__pyx_frame = NULL;\
      int __Pyx_use_tracing = 0;
  #define __Pyx_TraceFrameInit(codeobj)\
      if (codeobj) __pyx_frame_code = (PyCodeObject*) codeobj;
#if PY_VERSION_HEX >= 0x030b00a2
  #if PY_VERSION_HEX >= 0x030C00b1
  #define __Pyx_IsTracing(tstate, check_tracing, check_funcs)\
     ((!(check_tracing) || !(tstate)->tracing) &&\
         (!(check_funcs) || (tstate)->c_profilefunc || (CYTHON_TRACE && (tstate)->c_tracefunc)))
  #else
  #define __Pyx_IsTracing(tstate, check_tracing, check_funcs)\
     (unlikely((tstate)->cframe->use_tracing) &&\
         (!(check_tracing) || !(tstate)->tracing) &&\
         (!(check_funcs) || (tstate)->c_profilefunc || (CYTHON_TRACE && (tstate)->c_tracefunc)))
  #endif
  #define __Pyx_EnterTracing(tstate)  PyThreadState_EnterTracing(tstate)
  #define __Pyx_LeaveTracing(tstate)  PyThreadState_LeaveTracing(tstate)
#elif PY_VERSION_HEX >= 0x030a00b1
  #define __Pyx_IsTracing(tstate, check_tracing, check_funcs)\
     (unlikely((tstate)->cframe->use_tracing) &&\
         (!(check_tracing) || !(tstate)->tracing) &&\
         (!(check_funcs) || (tstate)->c_profilefunc || (CYTHON_TRACE && (tstate)->c_tracefunc)))
  #define __Pyx_EnterTracing(tstate)\
      do { tstate->tracing++; tstate->cframe->use_tracing = 0; } while (0)
  #define __Pyx_LeaveTracing(tstate)\
      do {\
          tstate->tracing--;\
          tstate->cframe->use_tracing = ((CYTHON_TRACE && tstate->c_tracefunc != NULL)\
                                 || tstate->c_profilefunc != NULL);\
      } while (0)
#else
  #define __Pyx_IsTracing(tstate, check_tracing, check_funcs)\
     (unlikely((tstate)->use_tracing) &&\
         (!(check_tracing) || !(tstate)->tracing) &&\
         (!(check_funcs) || (tstate)->c_profilefunc || (CYTHON_TRACE && (tstate)->c_tracefunc)))
  #define __Pyx_EnterTracing(tstate)\
      do { tstate->tracing++; tstate->use_tracing = 0; } while (0)
  #define __Pyx_LeaveTracing(tstate)\
      do {\
          tstate->tracing--;\
          tstate->use_tracing = ((CYTHON_TRACE && tstate->c_tracefunc != NULL)\
                                         || tstate->c_profilefunc != NULL);\
      } while (0)
#endif
  #ifdef WITH_THREAD
  #define __Pyx_TraceCall(funcname, srcfile, firstlineno, nogil, goto_error)\
  if (nogil) {\
      if (CYTHON_TRACE_NOGIL) {\
          PyThreadState *tstate;\
          PyGILState_STATE state = PyGILState_Ensure();\
          tstate = __Pyx_PyThreadState_Current;\
          if (__Pyx_IsTracing(tstate, 1, 1)) {\
              __Pyx_use_tracing = __Pyx_TraceSetupAndCall(&__pyx_frame_code, &__pyx_frame, tstate, funcname, srcfile, firstlineno);\
          }\
          PyGILState_Release(state);\
          if (unlikely(__Pyx_use_tracing < 0)) goto_error;\
      }\
  } else {\
      PyThreadState* tstate = PyThreadState_GET();\
      if (__Pyx_IsTracing(tstate, 1, 1)) {\
          __Pyx_use_tracing = __Pyx_TraceSetupAndCall(&__pyx_frame_code, &__pyx_frame, tstate, funcname, srcfile, firstlineno);\
          if (unlikely(__Pyx_use_tracing < 0)) goto_error;\
      }\
  }
  #else
  #define __Pyx_TraceCall(funcname, srcfile, firstlineno, nogil, goto_error)\
  {   PyThreadState* tstate = PyThreadState_GET();\
      if (__Pyx_IsTracing(tstate, 1, 1)) {\
          __Pyx_use_tracing = __Pyx_TraceSetupAndCall(&__pyx_frame_code, &__pyx_frame, tstate, funcname, srcfile, firstlineno);\
          if (unlikely(__Pyx_use_tracing < 0)) goto_error;\
      }\
  }
  #endif
  #define __Pyx_TraceException()\
  if (likely(!__Pyx_use_tracing)); else {\
      PyThreadState* tstate = __Pyx_PyThreadState_Current;\
      if (__Pyx_IsTracing(tstate, 0, 1)) {\
          __Pyx_EnterTracing(tstate);\
          PyObject *exc_info = __Pyx_GetExceptionTuple(tstate);\
          if (exc_info) {\
              if (CYTHON_TRACE && tstate->c_tracefunc)\
                  tstate->c_tracefunc(\
                      tstate->c_traceobj, __pyx_frame, PyTrace_EXCEPTION, exc_info);\
              tstate->c_profilefunc(\
                  tstate->c_profileobj, __pyx_frame, PyTrace_EXCEPTION, exc_info);\
              Py_DECREF(exc_info);\
          }\
          __Pyx_LeaveTracing(tstate);\
      }\
  }
  static void __Pyx_call_return_trace_func(PyThreadState *tstate, PyFrameObject *frame, PyObject *result) {
      PyObject *type, *value, *traceback;
      __Pyx_ErrFetchInState(tstate, &type, &value, &traceback);
      __Pyx_EnterTracing(tstate);
      if (CYTHON_TRACE && tstate->c_tracefunc)
          tstate->c_tracefunc(tstate->c_traceobj, frame, PyTrace_RETURN, result);
      if (tstate->c_profilefunc)
          tstate->c_profilefunc(tstate->c_profileobj, frame, PyTrace_RETURN, result);
      CYTHON_FRAME_DEL(frame);
      __Pyx_LeaveTracing(tstate);
      __Pyx_ErrRestoreInState(tstate, type, value, traceback);
  }
  #ifdef WITH_THREAD
  #define __Pyx_TraceReturn(result, nogil)\
  if (likely(!__Pyx_use_tracing)); else {\
      if (nogil) {\
          if (CYTHON_TRACE_NOGIL) {\
              PyThreadState *tstate;\
              PyGILState_STATE state = PyGILState_Ensure();\
              tstate = __Pyx_PyThreadState_Current;\
              if (__Pyx_IsTracing(tstate, 0, 0)) {\
                  __Pyx_call_return_trace_func(tstate, __pyx_frame, (PyObject*)result);\
              }\
              PyGILState_Release(state);\
          }\
      } else {\
          PyThreadState* tstate = __Pyx_PyThreadState_Current;\
          if (__Pyx_IsTracing(tstate, 0, 0)) {\
              __Pyx_call_return_trace_func(tstate, __pyx_frame, (PyObject*)result);\
          }\
      }\
  }
  #else
  #define __Pyx_TraceReturn(result, nogil)\
  if (likely(!__Pyx_use_tracing)); else {\
      PyThreadState* tstate = __Pyx_PyThreadState_Current;\
      if (__Pyx_IsTracing(tstate, 0, 0)) {\
          __Pyx_call_return_trace_func(tstate, __pyx_frame, (PyObject*)result);\
      }\
  }
  #endif
  static PyCodeObject *__Pyx_createFrameCodeObject(const char *funcname, const char *srcfile, int firstlineno);
  static int __Pyx_TraceSetupAndCall(PyCodeObject** code, PyFrameObject** frame, PyThreadState* tstate, const char *funcname, const char *srcfile, int firstlineno);
#else
  #define __Pyx_TraceDeclarations
  #define __Pyx_TraceFrameInit(codeobj)
  #define __Pyx_TraceCall(funcname, srcfile, firstlineno, nogil, goto_error)   if ((1)); else goto_error;
  #define __Pyx_TraceException()
  #define __Pyx_TraceReturn(result, nogil)
#endif
#if CYTHON_TRACE
  static int __Pyx_call_line_trace_func(PyThreadState *tstate, PyFrameObject *frame, int lineno) {
      int ret;
      PyObject *type, *value, *traceback;
      __Pyx_ErrFetchInState(tstate, &type, &value, &traceback);
      __Pyx_PyFrame_SetLineNumber(frame, lineno);
      __Pyx_EnterTracing(tstate);
      ret = tstate->c_tracefunc(tstate->c_traceobj, frame, PyTrace_LINE, NULL);
      __Pyx_LeaveTracing(tstate);
      if (likely(!ret)) {
          __Pyx_ErrRestoreInState(tstate, type, value, traceback);
      } else {
          Py_XDECREF(type);
          Py_XDECREF(value);
          Py_XDECREF(traceback);
      }
      return ret;
  }
  #ifdef WITH_THREAD
  #define __Pyx_TraceLine(lineno, nogil, goto_error)\
  if (likely(!__Pyx_use_tracing)); else {\
      if (nogil) {\
          if (CYTHON_TRACE_NOGIL) {\
              int ret = 0;\
              PyThreadState *tstate;\
              PyGILState_STATE state = __Pyx_PyGILState_Ensure();\
              tstate = __Pyx_PyThreadState_Current;\
              if (__Pyx_IsTracing(tstate, 0, 0) && tstate->c_tracefunc && __pyx_frame->f_trace) {\
                  ret = __Pyx_call_line_trace_func(tstate, __pyx_frame, lineno);\
              }\
              __Pyx_PyGILState_Release(state);\
              if (unlikely(ret)) goto_error;\
          }\
      } else {\
          PyThreadState* tstate = __Pyx_PyThreadState_Current;\
          if (__Pyx_IsTracing(tstate, 0, 0) && tstate->c_tracefunc && __pyx_frame->f_trace) {\
              int ret = __Pyx_call_line_trace_func(tstate, __pyx_frame, lineno);\
              if (unlikely(ret)) goto_error;\
          }\
      }\
  }
  #else
  #define __Pyx_TraceLine(lineno, nogil, goto_error)\
  if (likely(!__Pyx_use_tracing)); else {\
      PyThreadState* tstate = __Pyx_PyThreadState_Current;\
      if (__Pyx_IsTracing(tstate, 0, 0) && tstate->c_tracefunc && __pyx_frame->f_trace) {\
          int ret = __Pyx_call_line_trace_func(tstate, __pyx_frame, lineno);\
          if (unlikely(ret)) goto_error;\
      }\
  }
  #endif
#else
  #define __Pyx_TraceLine(lineno, nogil, goto_error)   if ((1)); else goto_error;
#endif

/* PyDictVersioning.proto */
#if CYTHON_USE_DICT_VERSIONS && CYTHON_USE_TYPE_SLOTS
#define __PYX_DICT_VERSION_INIT  ((PY_UINT64_T) -1)
#define __PYX_GET_DICT_VERSION(dict)  (((PyDictObject*)(dict))->ma_version_tag)
#define __PYX_UPDATE_DICT_CACHE(dict, value, cache_var, version_var)\
    (version_var) = __PYX_GET_DICT_VERSION(dict);\
    (cache_var) = (value);
#define __PYX_PY_DICT_LOOKUP_IF_MODIFIED(VAR, DICT, LOOKUP) {\
    static PY_UINT64_T __pyx_dict_version = 0;\
    static PyObject *__pyx_dict_cached_value = NULL;\
    if (likely(__PYX_GET_DICT_VERSION(DICT) == __pyx_dict_version)) {\
        (VAR) = __pyx_dict_cached_value;\
    } else {\
        (VAR) = __pyx_dict_cached_value = (LOOKUP);\
        __pyx_dict_version = __PYX_GET_DICT_VERSION(DICT);\
    }\
}
static CYTHON_INLINE PY_UINT64_T __Pyx_get_tp_dict_version(PyObject *obj);
static CYTHON_INLINE PY_UINT64_T __Pyx_get_object_dict_version(PyObject *obj);
static CYTHON_INLINE int __Pyx_object_dict_version_matches(PyObject* obj, PY_UINT64_T tp_dict_version, PY_UINT64_T obj_dict_version);
#else
#define __PYX_GET_DICT_VERSION(dict)  (0)
#define __PYX_UPDATE_DICT_CACHE(dict, value, cache_var, version_var)
#define __PYX_PY_DICT_LOOKUP_IF_MODIFIED(VAR, DICT, LOOKUP)  (VAR) = (LOOKUP);
#endif

/* GetModuleGlobalName.proto */
#if CYTHON_USE_DICT_VERSIONS
#define __Pyx_GetModuleGlobalName(var, name)  do {\
    static PY_UINT64_T __pyx_dict_version = 0;\
    static PyObject *__pyx_dict_cached_value = NULL;\
    (var) = (likely(__pyx_dict_version == __PYX_GET_DICT_VERSION(__pyx_d))) ?\
        (likely(__pyx_dict_cached_value) ? __Pyx_NewRef(__pyx_dict_cached_value) : __Pyx_GetBuiltinName(name)) :\
        __Pyx__GetModuleGlobalName(name, &__pyx_dict_version, &__pyx_dict_cached_value);\
} while(0)
#define __Pyx_GetModuleGlobalNameUncached(var, name)  do {\
    PY_UINT64_T __pyx_dict_version;\
    PyObject *__pyx_dict_cached_value;\
    (var) = __Pyx__GetModuleGlobalName(name, &__pyx_dict_version, &__pyx_dict_cached_value);\
} while(0)
static PyObject *__Pyx__GetModuleGlobalName(PyObject *name, PY_UINT64_T *dict_version, PyObject **dict_cached_value);
#else
#define __Pyx_GetModuleGlobalName(var, name)  (var) = __Pyx__GetModuleGlobalName(name)
#define __Pyx_GetModuleGlobalNameUncached(var, name)  (var) = __Pyx__GetModuleGlobalName(name)
static CYTHON_INLINE PyObject *__Pyx__GetModuleGlobalName(PyObject *name);
#endif

/* PyObjectCall.proto */
#if CYTHON_COMPILING_IN_CPYTHON
static CYTHON_INLINE PyObject* __Pyx_PyObject_Call(PyObject *func, PyObject *arg, PyObject *kw);
#else
#define __Pyx_PyObject_Call(func, arg, kw) PyObject_Call(func, arg, kw)
#endif

/* IncludeStringH.proto */
#include <string.h>

/* decode_c_string_utf16.proto */
static CYTHON_INLINE PyObject *__Pyx_PyUnicode_DecodeUTF16(const char *s, Py_ssize_t size, const char *errors) {
    int byteorder = 0;
    return PyUnicode_DecodeUTF16(s, size, errors, &byteorder);
}
static CYTHON_INLINE PyObject *__Pyx_PyUnicode_DecodeUTF16LE(const char *s, Py_ssize_t size, const char *errors) {
    int byteorder = -1;
    return PyUnicode_DecodeUTF16(s, size, errors, &byteorder);
}
static CYTHON_INLINE PyObject *__Pyx_PyUnicode_DecodeUTF16BE(const char *s, Py_ssize_t size, const char *errors) {
    int byteorder = 1;
    return PyUnicode_DecodeUTF16(s, size, errors, &byteorder);
}

/* decode_c_string.proto */
static CYTHON_INLINE PyObject* __Pyx_decode_c_string(
         const char* cstring, Py_ssize_t start, Py_ssize_t stop,
         const char* encoding, const char* errors,
         PyObject* (*decode_func)(const char *s, Py_ssize_t size, const char *errors));

/* PyFunctionFastCall.proto */
#if CYTHON_FAST_PYCALL
#if !CYTHON_VECTORCALL
#define __Pyx_PyFunction_FastCall(func, args, nargs)\
    __Pyx_PyFunction_FastCallDict((func), (args), (nargs), NULL)
static PyObject *__Pyx_PyFunction_FastCallDict(PyObject *func, PyObject **args, Py_ssize_t nargs, PyObject *kwargs);
#endif
#define __Pyx_BUILD_ASSERT_EXPR(cond)\
    (sizeof(char [1 - 2*!(cond)]) - 1)
#ifndef Py_MEMBER_SIZE
#define Py_MEMBER_SIZE(type, member) sizeof(((type *)0)->member)
#endif
#if !CYTHON_VECTORCALL
#if PY_VERSION_HEX >= 0x03080000
  #include "frameobject.h"
#if PY_VERSION_HEX >= 0x030b00a6 && !CYTHON_COMPILING_IN_LIMITED_API
  #ifndef Py_BUILD_CORE
    #define Py_BUILD_CORE 1
  #endif
  #include "internal/pycore_frame.h"
#endif
  #define __Pxy_PyFrame_Initialize_Offsets()
  #define __Pyx_PyFrame_GetLocalsplus(frame)  ((frame)->f_localsplus)
#else
  static size_t __pyx_pyframe_localsplus_offset = 0;
  #include "frameobject.h"
  #define __Pxy_PyFrame_Initialize_Offsets()\
    ((void)__Pyx_BUILD_ASSERT_EXPR(sizeof(PyFrameObject) == offsetof(PyFrameObject, f_localsplus) + Py_MEMBER_SIZE(PyFrameObject, f_localsplus)),\
     (void)(__pyx_pyframe_localsplus_offset = ((size_t)PyFrame_Type.tp_basicsize) - Py_MEMBER_SIZE(PyFrameObject, f_localsplus)))
  #define __Pyx_PyFrame_GetLocalsplus(frame)\
    (assert(__pyx_pyframe_localsplus_offset), (PyObject **)(((char *)(frame)) + __pyx_pyframe_localsplus_offset))
#endif
#endif
#endif

/* PyObjectCallMethO.proto */
#if CYTHON_COMPILING_IN_CPYTHON
static CYTHON_INLINE PyObject* __Pyx_PyObject_CallMethO(PyObject *func, PyObject *arg);
#endif

/* PyObjectFastCall.proto */
#define __Pyx_PyObject_FastCall(func, args, nargs)  __Pyx_PyObject_FastCallDict(func, args, (size_t)(nargs), NULL)
static CYTHON_INLINE PyObject* __Pyx_PyObject_FastCallDict(PyObject *func, PyObject **args, size_t nargs, PyObject *kwargs);

/* PyObjectCallOneArg.proto */
static CYTHON_INLINE PyObject* __Pyx_PyObject_CallOneArg(PyObject *func, PyObject *arg);

/* RaiseException.proto */
static void __Pyx_Raise(PyObject *type, PyObject *value, PyObject *tb, PyObject *cause);

/* ErrOccurredWithGIL.proto */
static CYTHON_INLINE int __Pyx_ErrOccurredWithGIL(void);

/* Import.proto */
static PyObject *__Pyx_Import(PyObject *name, PyObject *from_list, int level);

/* ImportDottedModule.proto */
static PyObject *__Pyx_ImportDottedModule(PyObject *name, PyObject *parts_tuple);
#if PY_MAJOR_VERSION >= 3
static PyObject *__Pyx_ImportDottedModule_WalkParts(PyObject *module, PyObject *name, PyObject *parts_tuple);
#endif

/* CLineInTraceback.proto */
#ifdef CYTHON_CLINE_IN_TRACEBACK
#define __Pyx_CLineForTraceback(tstate, c_line)  (((CYTHON_CLINE_IN_TRACEBACK)) ? c_line : 0)
#else
static int __Pyx_CLineForTraceback(PyThreadState *tstate, int c_line);
#endif

/* CodeObjectCache.proto */
#if !CYTHON_COMPILING_IN_LIMITED_API
typedef struct {
    PyCodeObject* code_object;
    int code_line;
} __Pyx_CodeObjectCacheEntry;
struct __Pyx_CodeObjectCache {
    int count;
    int max_count;
    __Pyx_CodeObjectCacheEntry* entries;
};
static struct __Pyx_CodeObjectCache __pyx_code_cache = {0,0,NULL};
static int __pyx_bisect_code_objects(__Pyx_CodeObjectCacheEntry* entries, int count, int code_line);
static PyCodeObject *__pyx_find_code_object(int code_line);
static void __pyx_insert_code_object(int code_line, PyCodeObject* code_object);
#endif

/* AddTraceback.proto */
static void __Pyx_AddTraceback(const char *funcname, int c_line,
                               int py_line, const char *filename);

/* FormatTypeName.proto */
#if CYTHON_COMPILING_IN_LIMITED_API
typedef PyObject *__Pyx_TypeName;
#define __Pyx_FMT_TYPENAME "%U"
static __Pyx_TypeName __Pyx_PyType_GetName(PyTypeObject* tp);
#define __Pyx_DECREF_TypeName(obj) Py_XDECREF(obj)
#else
typedef const char *__Pyx_TypeName;
#define __Pyx_FMT_TYPENAME "%.200s"
#define __Pyx_PyType_GetName(tp) ((tp)->tp_name)
#define __Pyx_DECREF_TypeName(obj)
#endif

/* GCCDiagnostics.proto */
#if !defined(__INTEL_COMPILER) && defined(__GNUC__) && (__GNUC__ > 4 || (__GNUC__ == 4 && __GNUC_MINOR__ >= 6))
#define __Pyx_HAS_GCC_DIAGNOSTIC
#endif

/* CIntToPy.proto */
static CYTHON_INLINE PyObject* __Pyx_PyInt_From_long(long value);

/* CIntFromPy.proto */
static CYTHON_INLINE long __Pyx_PyInt_As_long(PyObject *);

/* CIntFromPy.proto */
static CYTHON_INLINE int __Pyx_PyInt_As_int(PyObject *);

/* FastTypeChecks.proto */
#if CYTHON_COMPILING_IN_CPYTHON
#define __Pyx_TypeCheck(obj, type) __Pyx_IsSubtype(Py_TYPE(obj), (PyTypeObject *)type)
#define __Pyx_TypeCheck2(obj, type1, type2) __Pyx_IsAnySubtype2(Py_TYPE(obj), (PyTypeObject *)type1, (PyTypeObject *)type2)
static CYTHON_INLINE int __Pyx_IsSubtype(PyTypeObject *a, PyTypeObject *b);
static CYTHON_INLINE int __Pyx_IsAnySubtype2(PyTypeObject *cls, PyTypeObject *a, PyTypeObject *b);
static CYTHON_INLINE int __Pyx_PyErr_GivenExceptionMatches(PyObject *err, PyObject *type);
static CYTHON_INLINE int __Pyx_PyErr_GivenExceptionMatches2(PyObject *err, PyObject *type1, PyObject *type2);
#else
#define __Pyx_TypeCheck(obj, type) PyObject_TypeCheck(obj, (PyTypeObject *)type)
#define __Pyx_TypeCheck2(obj, type1, type2) (PyObject_TypeCheck(obj, (PyTypeObject *)type1) || PyObject_TypeCheck(obj, (PyTypeObject *)type2))
#define __Pyx_PyErr_GivenExceptionMatches(err, type) PyErr_GivenExceptionMatches(err, type)
#define __Pyx_PyErr_GivenExceptionMatches2(err, type1, type2) (PyErr_GivenExceptionMatches(err, type1) || PyErr_GivenExceptionMatches(err, type2))
#endif
#define __Pyx_PyErr_ExceptionMatches2(err1, err2)  __Pyx_PyErr_GivenExceptionMatches2(__Pyx_PyErr_CurrentExceptionType(), err1, err2)
#define __Pyx_PyException_Check(obj) __Pyx_TypeCheck(obj, PyExc_Exception)

/* CheckBinaryVersion.proto */
static unsigned long __Pyx_get_runtime_version(void);
static int __Pyx_check_binary_version(unsigned long ct_version, unsigned long rt_version, int allow_newer);

/* FunctionExport.proto */
static int __Pyx_ExportFunction(const char *name, void (*f)(void), const char *sig);

/* FunctionImport.proto */
static int __Pyx_ImportFunction_3_0_7(PyObject *module, const char *funcname, void (**f)(void), const char *sig);

/* InitStrings.proto */
static int __Pyx_InitStrings(__Pyx_StringTabEntry *t);

/* #### Code section: module_declarations ### */

/* Module declarations from "libc.stdint" */

/* Module declarations from "cuda.ccuda" */
static CUresult (*__pyx_f_4cuda_5ccuda_cuGetProcAddress)(char const *, void **, int, cuuint64_t, CUdriverProcAddressQueryResult *); /*proto*/

/* Module declarations from "cuda._lib.dlfcn" */

/* Module declarations from "cuda._cuda.loader" */

/* Module declarations from "cuda._cuda.ccuda" */
static int __pyx_v_4cuda_5_cuda_5ccuda___cuPythonInit;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuGetErrorString;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuGetErrorName;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuInit;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuDriverGetVersion;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuDeviceGet;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuDeviceGetCount;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuDeviceGetName;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuDeviceGetUuid;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuDeviceGetUuid_v2;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuDeviceGetLuid;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuDeviceTotalMem_v2;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuDeviceGetTexture1DLinearMaxWidth;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuDeviceGetAttribute;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuDeviceGetNvSciSyncAttributes;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuDeviceSetMemPool;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuDeviceGetMemPool;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuDeviceGetDefaultMemPool;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuDeviceGetExecAffinitySupport;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuFlushGPUDirectRDMAWrites;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuDeviceGetProperties;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuDeviceComputeCapability;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuDevicePrimaryCtxRetain;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuDevicePrimaryCtxRelease_v2;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuDevicePrimaryCtxSetFlags_v2;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuDevicePrimaryCtxGetState;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuDevicePrimaryCtxReset_v2;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuCtxCreate_v2;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuCtxCreate_v3;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuCtxDestroy_v2;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuCtxPushCurrent_v2;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuCtxPopCurrent_v2;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuCtxSetCurrent;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuCtxGetCurrent;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuCtxGetDevice;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuCtxGetFlags;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuCtxSetFlags;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuCtxGetId;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuCtxSynchronize;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuCtxSetLimit;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuCtxGetLimit;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuCtxGetCacheConfig;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuCtxSetCacheConfig;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuCtxGetApiVersion;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuCtxGetStreamPriorityRange;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuCtxResetPersistingL2Cache;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuCtxGetExecAffinity;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuCtxAttach;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuCtxDetach;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuCtxGetSharedMemConfig;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuCtxSetSharedMemConfig;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuModuleLoad;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuModuleLoadData;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuModuleLoadDataEx;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuModuleLoadFatBinary;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuModuleUnload;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuModuleGetLoadingMode;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuModuleGetFunction;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuModuleGetFunctionCount;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuModuleEnumerateFunctions;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuModuleGetGlobal_v2;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuLinkCreate_v2;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuLinkAddData_v2;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuLinkAddFile_v2;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuLinkComplete;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuLinkDestroy;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuModuleGetTexRef;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuModuleGetSurfRef;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuLibraryLoadData;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuLibraryLoadFromFile;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuLibraryUnload;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuLibraryGetKernel;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuLibraryGetKernelCount;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuLibraryEnumerateKernels;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuLibraryGetModule;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuKernelGetFunction;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuLibraryGetGlobal;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuLibraryGetManaged;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuLibraryGetUnifiedFunction;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuKernelGetAttribute;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuKernelSetAttribute;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuKernelSetCacheConfig;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuKernelGetName;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuKernelGetParamInfo;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuMemGetInfo_v2;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuMemAlloc_v2;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuMemAllocPitch_v2;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuMemFree_v2;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuMemGetAddressRange_v2;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuMemAllocHost_v2;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuMemFreeHost;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuMemHostAlloc;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuMemHostGetDevicePointer_v2;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuMemHostGetFlags;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuMemAllocManaged;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuDeviceRegisterAsyncNotification;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuDeviceUnregisterAsyncNotification;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuDeviceGetByPCIBusId;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuDeviceGetPCIBusId;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuIpcGetEventHandle;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuIpcOpenEventHandle;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuIpcGetMemHandle;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuIpcOpenMemHandle_v2;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuIpcCloseMemHandle;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuMemHostRegister_v2;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuMemHostUnregister;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuMemcpy;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuMemcpyPeer;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuMemcpyHtoD_v2;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuMemcpyDtoH_v2;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuMemcpyDtoD_v2;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuMemcpyDtoA_v2;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuMemcpyAtoD_v2;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuMemcpyHtoA_v2;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuMemcpyAtoH_v2;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuMemcpyAtoA_v2;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuMemcpy2D_v2;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuMemcpy2DUnaligned_v2;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuMemcpy3D_v2;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuMemcpy3DPeer;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuMemcpyAsync;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuMemcpyPeerAsync;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuMemcpyHtoDAsync_v2;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuMemcpyDtoHAsync_v2;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuMemcpyDtoDAsync_v2;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuMemcpyHtoAAsync_v2;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuMemcpyAtoHAsync_v2;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuMemcpy2DAsync_v2;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuMemcpy3DAsync_v2;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuMemcpy3DPeerAsync;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuMemsetD8_v2;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuMemsetD16_v2;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuMemsetD32_v2;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuMemsetD2D8_v2;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuMemsetD2D16_v2;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuMemsetD2D32_v2;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuMemsetD8Async;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuMemsetD16Async;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuMemsetD32Async;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuMemsetD2D8Async;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuMemsetD2D16Async;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuMemsetD2D32Async;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuArrayCreate_v2;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuArrayGetDescriptor_v2;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuArrayGetSparseProperties;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuMipmappedArrayGetSparseProperties;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuArrayGetMemoryRequirements;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuMipmappedArrayGetMemoryRequirements;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuArrayGetPlane;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuArrayDestroy;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuArray3DCreate_v2;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuArray3DGetDescriptor_v2;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuMipmappedArrayCreate;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuMipmappedArrayGetLevel;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuMipmappedArrayDestroy;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuMemGetHandleForAddressRange;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuMemAddressReserve;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuMemAddressFree;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuMemCreate;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuMemRelease;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuMemMap;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuMemMapArrayAsync;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuMemUnmap;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuMemSetAccess;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuMemGetAccess;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuMemExportToShareableHandle;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuMemImportFromShareableHandle;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuMemGetAllocationGranularity;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuMemGetAllocationPropertiesFromHandle;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuMemRetainAllocationHandle;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuMemFreeAsync;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuMemAllocAsync;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuMemPoolTrimTo;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuMemPoolSetAttribute;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuMemPoolGetAttribute;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuMemPoolSetAccess;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuMemPoolGetAccess;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuMemPoolCreate;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuMemPoolDestroy;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuMemAllocFromPoolAsync;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuMemPoolExportToShareableHandle;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuMemPoolImportFromShareableHandle;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuMemPoolExportPointer;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuMemPoolImportPointer;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuMulticastCreate;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuMulticastAddDevice;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuMulticastBindMem;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuMulticastBindAddr;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuMulticastUnbind;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuMulticastGetGranularity;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuPointerGetAttribute;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuMemPrefetchAsync;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuMemPrefetchAsync_v2;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuMemAdvise;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuMemAdvise_v2;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuMemRangeGetAttribute;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuMemRangeGetAttributes;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuPointerSetAttribute;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuPointerGetAttributes;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuStreamCreate;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuStreamCreateWithPriority;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuStreamGetPriority;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuStreamGetFlags;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuStreamGetId;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuStreamGetCtx;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuStreamWaitEvent;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuStreamAddCallback;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuStreamBeginCapture_v2;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuStreamBeginCaptureToGraph;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuThreadExchangeStreamCaptureMode;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuStreamEndCapture;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuStreamIsCapturing;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuStreamGetCaptureInfo_v2;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuStreamGetCaptureInfo_v3;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuStreamUpdateCaptureDependencies;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuStreamUpdateCaptureDependencies_v2;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuStreamAttachMemAsync;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuStreamQuery;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuStreamSynchronize;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuStreamDestroy_v2;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuStreamCopyAttributes;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuStreamGetAttribute;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuStreamSetAttribute;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuEventCreate;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuEventRecord;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuEventRecordWithFlags;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuEventQuery;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuEventSynchronize;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuEventDestroy_v2;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuEventElapsedTime;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuImportExternalMemory;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuExternalMemoryGetMappedBuffer;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuExternalMemoryGetMappedMipmappedArray;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuDestroyExternalMemory;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuImportExternalSemaphore;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuSignalExternalSemaphoresAsync;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuWaitExternalSemaphoresAsync;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuDestroyExternalSemaphore;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuStreamWaitValue32_v2;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuStreamWaitValue64_v2;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuStreamWriteValue32_v2;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuStreamWriteValue64_v2;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuStreamBatchMemOp_v2;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuFuncGetAttribute;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuFuncSetAttribute;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuFuncSetCacheConfig;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuFuncGetModule;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuFuncGetName;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuFuncGetParamInfo;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuFuncIsLoaded;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuFuncLoad;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuLaunchKernel;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuLaunchKernelEx;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuLaunchCooperativeKernel;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuLaunchCooperativeKernelMultiDevice;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuLaunchHostFunc;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuFuncSetBlockShape;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuFuncSetSharedSize;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuParamSetSize;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuParamSeti;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuParamSetf;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuParamSetv;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuLaunch;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuLaunchGrid;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuLaunchGridAsync;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuParamSetTexRef;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuFuncSetSharedMemConfig;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuGraphCreate;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuGraphAddKernelNode_v2;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuGraphKernelNodeGetParams_v2;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuGraphKernelNodeSetParams_v2;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuGraphAddMemcpyNode;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuGraphMemcpyNodeGetParams;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuGraphMemcpyNodeSetParams;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuGraphAddMemsetNode;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuGraphMemsetNodeGetParams;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuGraphMemsetNodeSetParams;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuGraphAddHostNode;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuGraphHostNodeGetParams;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuGraphHostNodeSetParams;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuGraphAddChildGraphNode;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuGraphChildGraphNodeGetGraph;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuGraphAddEmptyNode;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuGraphAddEventRecordNode;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuGraphEventRecordNodeGetEvent;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuGraphEventRecordNodeSetEvent;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuGraphAddEventWaitNode;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuGraphEventWaitNodeGetEvent;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuGraphEventWaitNodeSetEvent;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuGraphAddExternalSemaphoresSignalNode;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuGraphExternalSemaphoresSignalNodeGetParams;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuGraphExternalSemaphoresSignalNodeSetParams;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuGraphAddExternalSemaphoresWaitNode;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuGraphExternalSemaphoresWaitNodeGetParams;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuGraphExternalSemaphoresWaitNodeSetParams;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuGraphAddBatchMemOpNode;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuGraphBatchMemOpNodeGetParams;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuGraphBatchMemOpNodeSetParams;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuGraphExecBatchMemOpNodeSetParams;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuGraphAddMemAllocNode;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuGraphMemAllocNodeGetParams;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuGraphAddMemFreeNode;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuGraphMemFreeNodeGetParams;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuDeviceGraphMemTrim;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuDeviceGetGraphMemAttribute;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuDeviceSetGraphMemAttribute;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuGraphClone;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuGraphNodeFindInClone;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuGraphNodeGetType;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuGraphGetNodes;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuGraphGetRootNodes;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuGraphGetEdges;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuGraphGetEdges_v2;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuGraphNodeGetDependencies;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuGraphNodeGetDependencies_v2;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuGraphNodeGetDependentNodes;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuGraphNodeGetDependentNodes_v2;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuGraphAddDependencies;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuGraphAddDependencies_v2;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuGraphRemoveDependencies;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuGraphRemoveDependencies_v2;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuGraphDestroyNode;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuGraphInstantiateWithFlags;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuGraphInstantiateWithParams;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuGraphExecGetFlags;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuGraphExecKernelNodeSetParams_v2;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuGraphExecMemcpyNodeSetParams;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuGraphExecMemsetNodeSetParams;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuGraphExecHostNodeSetParams;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuGraphExecChildGraphNodeSetParams;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuGraphExecEventRecordNodeSetEvent;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuGraphExecEventWaitNodeSetEvent;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuGraphExecExternalSemaphoresSignalNodeSetParams;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuGraphExecExternalSemaphoresWaitNodeSetParams;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuGraphNodeSetEnabled;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuGraphNodeGetEnabled;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuGraphUpload;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuGraphLaunch;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuGraphExecDestroy;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuGraphDestroy;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuGraphExecUpdate_v2;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuGraphKernelNodeCopyAttributes;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuGraphKernelNodeGetAttribute;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuGraphKernelNodeSetAttribute;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuGraphDebugDotPrint;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuUserObjectCreate;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuUserObjectRetain;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuUserObjectRelease;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuGraphRetainUserObject;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuGraphReleaseUserObject;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuGraphAddNode;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuGraphAddNode_v2;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuGraphNodeSetParams;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuGraphExecNodeSetParams;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuGraphConditionalHandleCreate;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuOccupancyMaxActiveBlocksPerMultiprocessor;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuOccupancyMaxActiveBlocksPerMultiprocessorWithFlags;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuOccupancyMaxPotentialBlockSize;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuOccupancyMaxPotentialBlockSizeWithFlags;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuOccupancyAvailableDynamicSMemPerBlock;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuOccupancyMaxPotentialClusterSize;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuOccupancyMaxActiveClusters;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuTexRefSetArray;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuTexRefSetMipmappedArray;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuTexRefSetAddress_v2;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuTexRefSetAddress2D_v3;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuTexRefSetFormat;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuTexRefSetAddressMode;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuTexRefSetFilterMode;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuTexRefSetMipmapFilterMode;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuTexRefSetMipmapLevelBias;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuTexRefSetMipmapLevelClamp;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuTexRefSetMaxAnisotropy;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuTexRefSetBorderColor;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuTexRefSetFlags;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuTexRefGetAddress_v2;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuTexRefGetArray;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuTexRefGetMipmappedArray;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuTexRefGetAddressMode;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuTexRefGetFilterMode;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuTexRefGetFormat;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuTexRefGetMipmapFilterMode;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuTexRefGetMipmapLevelBias;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuTexRefGetMipmapLevelClamp;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuTexRefGetMaxAnisotropy;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuTexRefGetBorderColor;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuTexRefGetFlags;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuTexRefCreate;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuTexRefDestroy;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuSurfRefSetArray;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuSurfRefGetArray;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuTexObjectCreate;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuTexObjectDestroy;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuTexObjectGetResourceDesc;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuTexObjectGetTextureDesc;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuTexObjectGetResourceViewDesc;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuSurfObjectCreate;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuSurfObjectDestroy;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuSurfObjectGetResourceDesc;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuTensorMapEncodeTiled;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuTensorMapEncodeIm2col;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuTensorMapReplaceAddress;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuDeviceCanAccessPeer;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuCtxEnablePeerAccess;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuCtxDisablePeerAccess;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuDeviceGetP2PAttribute;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuGraphicsUnregisterResource;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuGraphicsSubResourceGetMappedArray;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuGraphicsResourceGetMappedMipmappedArray;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuGraphicsResourceGetMappedPointer_v2;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuGraphicsResourceSetMapFlags_v2;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuGraphicsMapResources;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuGraphicsUnmapResources;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuGetProcAddress_v2;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuCoredumpGetAttribute;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuCoredumpGetAttributeGlobal;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuCoredumpSetAttribute;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuCoredumpSetAttributeGlobal;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuGetExportTable;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuGreenCtxCreate;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuGreenCtxDestroy;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuCtxFromGreenCtx;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuDeviceGetDevResource;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuCtxGetDevResource;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuGreenCtxGetDevResource;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuDevSmResourceSplitByCount;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuDevResourceGenerateDesc;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuGreenCtxRecordEvent;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuGreenCtxWaitEvent;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuStreamGetGreenCtx;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuProfilerStart;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuProfilerStop;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuGraphicsEGLRegisterImage;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuEGLStreamConsumerConnect;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuEGLStreamConsumerConnectWithFlags;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuEGLStreamConsumerDisconnect;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuEGLStreamConsumerAcquireFrame;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuEGLStreamConsumerReleaseFrame;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuEGLStreamProducerConnect;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuEGLStreamProducerDisconnect;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuEGLStreamProducerPresentFrame;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuEGLStreamProducerReturnFrame;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuGraphicsResourceGetMappedEglFrame;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuEventCreateFromEGLSync;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuGraphicsGLRegisterBuffer;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuGraphicsGLRegisterImage;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuGLGetDevices_v2;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuVDPAUGetDevice;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuVDPAUCtxCreate_v2;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuGraphicsVDPAURegisterVideoSurface;
static void *__pyx_v_4cuda_5_cuda_5ccuda___cuGraphicsVDPAURegisterOutputSurface;
static int __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(void); /*proto*/
/* #### Code section: typeinfo ### */
/* #### Code section: before_global_var ### */
#define __Pyx_MODULE_NAME "cuda._cuda.ccuda"
extern int __pyx_module_is_main_cuda___cuda__ccuda;
int __pyx_module_is_main_cuda___cuda__ccuda = 0;

/* Implementation of "cuda._cuda.ccuda" */
/* #### Code section: global_var ### */
static PyObject *__pyx_builtin_RuntimeError;
/* #### Code section: string_decls ### */
static const char __pyx_k_os[] = "os";
static const char __pyx_k_sys[] = "sys";
static const char __pyx_k__452[] = "*";
static const char __pyx_k__453[] = "?";
static const char __pyx_k_main[] = "__main__";
static const char __pyx_k_name[] = "__name__";
static const char __pyx_k_spec[] = "__spec__";
static const char __pyx_k_test[] = "__test__";
static const char __pyx_k_utf_8[] = "utf-8";
static const char __pyx_k_getenv[] = "getenv";
static const char __pyx_k_import[] = "__import__";
static const char __pyx_k_default[] = "default";
static const char __pyx_k_maxsize[] = "maxsize";
static const char __pyx_k_encoding[] = "encoding";
static const char __pyx_k_RuntimeError[] = "RuntimeError";
static const char __pyx_k_initializing[] = "_initializing";
static const char __pyx_k_libcuda_so_1[] = "libcuda.so.1";
static const char __pyx_k_Failed_to_dlopen[] = "Failed to dlopen ";
static const char __pyx_k_cline_in_traceback[] = "cline_in_traceback";
static const char __pyx_k_Function_cuInit_not_found[] = "Function \"cuInit\" not found";
static const char __pyx_k_Function_cuLaunch_not_found[] = "Function \"cuLaunch\" not found";
static const char __pyx_k_Function_cuMemMap_not_found[] = "Function \"cuMemMap\" not found";
static const char __pyx_k_Function_cuMemcpy_not_found[] = "Function \"cuMemcpy\" not found";
static const char __pyx_k_Function_cuCtxGetId_not_found[] = "Function \"cuCtxGetId\" not found";
static const char __pyx_k_Function_cuFuncLoad_not_found[] = "Function \"cuFuncLoad\" not found";
static const char __pyx_k_Function_cuMemUnmap_not_found[] = "Function \"cuMemUnmap\" not found";
static const char __pyx_k_Function_cuCtxAttach_not_found[] = "Function \"cuCtxAttach\" not found";
static const char __pyx_k_Function_cuCtxDetach_not_found[] = "Function \"cuCtxDetach\" not found";
static const char __pyx_k_Function_cuDeviceGet_not_found[] = "Function \"cuDeviceGet\" not found";
static const char __pyx_k_Function_cuMemAdvise_not_found[] = "Function \"cuMemAdvise\" not found";
static const char __pyx_k_Function_cuMemCreate_not_found[] = "Function \"cuMemCreate\" not found";
static const char __pyx_k_Function_cuParamSetf_not_found[] = "Function \"cuParamSetf\" not found";
static const char __pyx_k_Function_cuParamSeti_not_found[] = "Function \"cuParamSeti\" not found";
static const char __pyx_k_Function_cuParamSetv_not_found[] = "Function \"cuParamSetv\" not found";
static const char __pyx_k_Function_cuArray3DCreate_v2_not[] = "Function \"cuArray3DCreate_v2\" not found";
static const char __pyx_k_Function_cuArray3DGetDescriptor[] = "Function \"cuArray3DGetDescriptor_v2\" not found";
static const char __pyx_k_Function_cuCoredumpGetAttribute[] = "Function \"cuCoredumpGetAttribute\" not found";
static const char __pyx_k_Function_cuCoredumpSetAttribute[] = "Function \"cuCoredumpSetAttribute\" not found";
static const char __pyx_k_Function_cuCtxDisablePeerAccess[] = "Function \"cuCtxDisablePeerAccess\" not found";
static const char __pyx_k_Function_cuCtxGetApiVersion_not[] = "Function \"cuCtxGetApiVersion\" not found";
static const char __pyx_k_Function_cuCtxPopCurrent_v2_not[] = "Function \"cuCtxPopCurrent_v2\" not found";
static const char __pyx_k_Function_cuDeviceGetDevResource[] = "Function \"cuDeviceGetDevResource\" not found";
static const char __pyx_k_Function_cuDeviceGetMemPool_not[] = "Function \"cuDeviceGetMemPool\" not found";
static const char __pyx_k_Function_cuDeviceGetUuid_v2_not[] = "Function \"cuDeviceGetUuid_v2\" not found";
static const char __pyx_k_Function_cuDeviceSetMemPool_not[] = "Function \"cuDeviceSetMemPool\" not found";
static const char __pyx_k_Function_cuDriverGetVersion_not[] = "Function \"cuDriverGetVersion\" not found";
static const char __pyx_k_Function_cuEventElapsedTime_not[] = "Function \"cuEventElapsedTime\" not found";
static const char __pyx_k_Function_cuEventQuery_not_found[] = "Function \"cuEventQuery\" not found";
static const char __pyx_k_Function_cuEventRecordWithFlags[] = "Function \"cuEventRecordWithFlags\" not found";
static const char __pyx_k_Function_cuEventSynchronize_not[] = "Function \"cuEventSynchronize\" not found";
static const char __pyx_k_Function_cuFuncGetAttribute_not[] = "Function \"cuFuncGetAttribute\" not found";
static const char __pyx_k_Function_cuFuncGetParamInfo_not[] = "Function \"cuFuncGetParamInfo\" not found";
static const char __pyx_k_Function_cuFuncSetAttribute_not[] = "Function \"cuFuncSetAttribute\" not found";
static const char __pyx_k_Function_cuGraphAddDependencies[] = "Function \"cuGraphAddDependencies\" not found";
static const char __pyx_k_Function_cuGraphAddHostNode_not[] = "Function \"cuGraphAddHostNode\" not found";
static const char __pyx_k_Function_cuGraphAddMemAllocNode[] = "Function \"cuGraphAddMemAllocNode\" not found";
static const char __pyx_k_Function_cuGraphClone_not_found[] = "Function \"cuGraphClone\" not found";
static const char __pyx_k_Function_cuGraphDestroyNode_not[] = "Function \"cuGraphDestroyNode\" not found";
static const char __pyx_k_Function_cuGraphExecDestroy_not[] = "Function \"cuGraphExecDestroy\" not found";
static const char __pyx_k_Function_cuGraphGetEdges_v2_not[] = "Function \"cuGraphGetEdges_v2\" not found";
static const char __pyx_k_Function_cuGraphNodeFindInClone[] = "Function \"cuGraphNodeFindInClone\" not found";
static const char __pyx_k_Function_cuGraphNodeGetType_not[] = "Function \"cuGraphNodeGetType\" not found";
static const char __pyx_k_Function_cuGraphicsMapResources[] = "Function \"cuGraphicsMapResources\" not found";
static const char __pyx_k_Function_cuImportExternalMemory[] = "Function \"cuImportExternalMemory\" not found";
static const char __pyx_k_Function_cuKernelSetCacheConfig[] = "Function \"cuKernelSetCacheConfig\" not found";
static const char __pyx_k_Function_cuLaunchGrid_not_found[] = "Function \"cuLaunchGrid\" not found";
static const char __pyx_k_Function_cuLibraryGetGlobal_not[] = "Function \"cuLibraryGetGlobal\" not found";
static const char __pyx_k_Function_cuLibraryGetKernel_not[] = "Function \"cuLibraryGetKernel\" not found";
static const char __pyx_k_Function_cuLibraryGetModule_not[] = "Function \"cuLibraryGetModule\" not found";
static const char __pyx_k_Function_cuMemAllocPitch_v2_not[] = "Function \"cuMemAllocPitch_v2\" not found";
static const char __pyx_k_Function_cuMemFree_v2_not_found[] = "Function \"cuMemFree_v2\" not found";
static const char __pyx_k_Function_cuMemMapArrayAsync_not[] = "Function \"cuMemMapArrayAsync\" not found";
static const char __pyx_k_Function_cuMemPoolExportPointer[] = "Function \"cuMemPoolExportPointer\" not found";
static const char __pyx_k_Function_cuMemPoolGetAccess_not[] = "Function \"cuMemPoolGetAccess\" not found";
static const char __pyx_k_Function_cuMemPoolImportPointer[] = "Function \"cuMemPoolImportPointer\" not found";
static const char __pyx_k_Function_cuMemPoolSetAccess_not[] = "Function \"cuMemPoolSetAccess\" not found";
static const char __pyx_k_Function_cuMemPrefetchAsync_not[] = "Function \"cuMemPrefetchAsync\" not found";
static const char __pyx_k_Function_cuMemRangeGetAttribute[] = "Function \"cuMemRangeGetAttribute\" not found";
static const char __pyx_k_Function_cuMemRelease_not_found[] = "Function \"cuMemRelease\" not found";
static const char __pyx_k_Function_cuMemcpy2DAsync_v2_not[] = "Function \"cuMemcpy2DAsync_v2\" not found";
static const char __pyx_k_Function_cuMemcpy2DUnaligned_v2[] = "Function \"cuMemcpy2DUnaligned_v2\" not found";
static const char __pyx_k_Function_cuMemcpy3DAsync_v2_not[] = "Function \"cuMemcpy3DAsync_v2\" not found";
static const char __pyx_k_Function_cuMemcpyPeer_not_found[] = "Function \"cuMemcpyPeer\" not found";
static const char __pyx_k_Function_cuMemsetD2D16Async_not[] = "Function \"cuMemsetD2D16Async\" not found";
static const char __pyx_k_Function_cuMemsetD2D32Async_not[] = "Function \"cuMemsetD2D32Async\" not found";
static const char __pyx_k_Function_cuMipmappedArrayCreate[] = "Function \"cuMipmappedArrayCreate\" not found";
static const char __pyx_k_Function_cuModuleGetLoadingMode[] = "Function \"cuModuleGetLoadingMode\" not found";
static const char __pyx_k_Function_cuModuleGetSurfRef_not[] = "Function \"cuModuleGetSurfRef\" not found";
static const char __pyx_k_Function_cuModuleLoadDataEx_not[] = "Function \"cuModuleLoadDataEx\" not found";
static const char __pyx_k_Function_cuModuleLoad_not_found[] = "Function \"cuModuleLoad\" not found";
static const char __pyx_k_Function_cuMulticastBindMem_not[] = "Function \"cuMulticastBindMem\" not found";
static const char __pyx_k_Function_cuPointerGetAttributes[] = "Function \"cuPointerGetAttributes\" not found";
static const char __pyx_k_Function_cuStreamAttachMemAsync[] = "Function \"cuStreamAttachMemAsync\" not found";
static const char __pyx_k_Function_cuStreamCopyAttributes[] = "Function \"cuStreamCopyAttributes\" not found";
static const char __pyx_k_Function_cuStreamDestroy_v2_not[] = "Function \"cuStreamDestroy_v2\" not found";
static const char __pyx_k_Function_cuStreamEndCapture_not[] = "Function \"cuStreamEndCapture\" not found";
static const char __pyx_k_Function_cuStreamGetCaptureInfo[] = "Function \"cuStreamGetCaptureInfo_v2\" not found";
static const char __pyx_k_Function_cuStreamWaitValue32_v2[] = "Function \"cuStreamWaitValue32_v2\" not found";
static const char __pyx_k_Function_cuStreamWaitValue64_v2[] = "Function \"cuStreamWaitValue64_v2\" not found";
static const char __pyx_k_Function_cuSurfObjectCreate_not[] = "Function \"cuSurfObjectCreate\" not found";
static const char __pyx_k_Function_cuTensorMapEncodeTiled[] = "Function \"cuTensorMapEncodeTiled\" not found";
static const char __pyx_k_Function_cuTexObjectDestroy_not[] = "Function \"cuTexObjectDestroy\" not found";
static const char __pyx_k_Function_cuTexRefGetAddressMode[] = "Function \"cuTexRefGetAddressMode\" not found";
static const char __pyx_k_Function_cuTexRefGetBorderColor[] = "Function \"cuTexRefGetBorderColor\" not found";
static const char __pyx_k_Function_cuTexRefSetAddressMode[] = "Function \"cuTexRefSetAddressMode\" not found";
static const char __pyx_k_Function_cuTexRefSetBorderColor[] = "Function \"cuTexRefSetBorderColor\" not found";
static const char __pyx_k_Function_cuUserObjectCreate_not[] = "Function \"cuUserObjectCreate\" not found";
static const char __pyx_k_Function_cuUserObjectRetain_not[] = "Function \"cuUserObjectRetain\" not found";
static const char __pyx_k_CUDA_PYTHON_CUDA_PER_THREAD_DEFA[] = "CUDA_PYTHON_CUDA_PER_THREAD_DEFAULT_STREAM";
static const char __pyx_k_Function_cuArrayCreate_v2_not_fo[] = "Function \"cuArrayCreate_v2\" not found";
static const char __pyx_k_Function_cuArrayDestroy_not_foun[] = "Function \"cuArrayDestroy\" not found";
static const char __pyx_k_Function_cuArrayGetDescriptor_v2[] = "Function \"cuArrayGetDescriptor_v2\" not found";
static const char __pyx_k_Function_cuArrayGetMemoryRequire[] = "Function \"cuArrayGetMemoryRequirements\" not found";
static const char __pyx_k_Function_cuArrayGetPlane_not_fou[] = "Function \"cuArrayGetPlane\" not found";
static const char __pyx_k_Function_cuArrayGetSparsePropert[] = "Function \"cuArrayGetSparseProperties\" not found";
static const char __pyx_k_Function_cuCoredumpGetAttributeG[] = "Function \"cuCoredumpGetAttributeGlobal\" not found";
static const char __pyx_k_Function_cuCoredumpSetAttributeG[] = "Function \"cuCoredumpSetAttributeGlobal\" not found";
static const char __pyx_k_Function_cuCtxCreate_v2_not_foun[] = "Function \"cuCtxCreate_v2\" not found";
static const char __pyx_k_Function_cuCtxCreate_v3_not_foun[] = "Function \"cuCtxCreate_v3\" not found";
static const char __pyx_k_Function_cuCtxDestroy_v2_not_fou[] = "Function \"cuCtxDestroy_v2\" not found";
static const char __pyx_k_Function_cuCtxEnablePeerAccess_n[] = "Function \"cuCtxEnablePeerAccess\" not found";
static const char __pyx_k_Function_cuCtxFromGreenCtx_not_f[] = "Function \"cuCtxFromGreenCtx\" not found";
static const char __pyx_k_Function_cuCtxGetCacheConfig_not[] = "Function \"cuCtxGetCacheConfig\" not found";
static const char __pyx_k_Function_cuCtxGetCurrent_not_fou[] = "Function \"cuCtxGetCurrent\" not found";
static const char __pyx_k_Function_cuCtxGetDevResource_not[] = "Function \"cuCtxGetDevResource\" not found";
static const char __pyx_k_Function_cuCtxGetDevice_not_foun[] = "Function \"cuCtxGetDevice\" not found";
static const char __pyx_k_Function_cuCtxGetExecAffinity_no[] = "Function \"cuCtxGetExecAffinity\" not found";
static const char __pyx_k_Function_cuCtxGetFlags_not_found[] = "Function \"cuCtxGetFlags\" not found";
static const char __pyx_k_Function_cuCtxGetLimit_not_found[] = "Function \"cuCtxGetLimit\" not found";
static const char __pyx_k_Function_cuCtxGetSharedMemConfig[] = "Function \"cuCtxGetSharedMemConfig\" not found";
static const char __pyx_k_Function_cuCtxGetStreamPriorityR[] = "Function \"cuCtxGetStreamPriorityRange\" not found";
static const char __pyx_k_Function_cuCtxPushCurrent_v2_not[] = "Function \"cuCtxPushCurrent_v2\" not found";
static const char __pyx_k_Function_cuCtxResetPersistingL2C[] = "Function \"cuCtxResetPersistingL2Cache\" not found";
static const char __pyx_k_Function_cuCtxSetCacheConfig_not[] = "Function \"cuCtxSetCacheConfig\" not found";
static const char __pyx_k_Function_cuCtxSetCurrent_not_fou[] = "Function \"cuCtxSetCurrent\" not found";
static const char __pyx_k_Function_cuCtxSetFlags_not_found[] = "Function \"cuCtxSetFlags\" not found";
static const char __pyx_k_Function_cuCtxSetLimit_not_found[] = "Function \"cuCtxSetLimit\" not found";
static const char __pyx_k_Function_cuCtxSetSharedMemConfig[] = "Function \"cuCtxSetSharedMemConfig\" not found";
static const char __pyx_k_Function_cuCtxSynchronize_not_fo[] = "Function \"cuCtxSynchronize\" not found";
static const char __pyx_k_Function_cuDestroyExternalMemory[] = "Function \"cuDestroyExternalMemory\" not found";
static const char __pyx_k_Function_cuDestroyExternalSemaph[] = "Function \"cuDestroyExternalSemaphore\" not found";
static const char __pyx_k_Function_cuDevResourceGenerateDe[] = "Function \"cuDevResourceGenerateDesc\" not found";
static const char __pyx_k_Function_cuDevSmResourceSplitByC[] = "Function \"cuDevSmResourceSplitByCount\" not found";
static const char __pyx_k_Function_cuDeviceCanAccessPeer_n[] = "Function \"cuDeviceCanAccessPeer\" not found";
static const char __pyx_k_Function_cuDeviceComputeCapabili[] = "Function \"cuDeviceComputeCapability\" not found";
static const char __pyx_k_Function_cuDeviceGetAttribute_no[] = "Function \"cuDeviceGetAttribute\" not found";
static const char __pyx_k_Function_cuDeviceGetByPCIBusId_n[] = "Function \"cuDeviceGetByPCIBusId\" not found";
static const char __pyx_k_Function_cuDeviceGetCount_not_fo[] = "Function \"cuDeviceGetCount\" not found";
static const char __pyx_k_Function_cuDeviceGetDefaultMemPo[] = "Function \"cuDeviceGetDefaultMemPool\" not found";
static const char __pyx_k_Function_cuDeviceGetExecAffinity[] = "Function \"cuDeviceGetExecAffinitySupport\" not found";
static const char __pyx_k_Function_cuDeviceGetGraphMemAttr[] = "Function \"cuDeviceGetGraphMemAttribute\" not found";
static const char __pyx_k_Function_cuDeviceGetLuid_not_fou[] = "Function \"cuDeviceGetLuid\" not found";
static const char __pyx_k_Function_cuDeviceGetName_not_fou[] = "Function \"cuDeviceGetName\" not found";
static const char __pyx_k_Function_cuDeviceGetNvSciSyncAtt[] = "Function \"cuDeviceGetNvSciSyncAttributes\" not found";
static const char __pyx_k_Function_cuDeviceGetP2PAttribute[] = "Function \"cuDeviceGetP2PAttribute\" not found";
static const char __pyx_k_Function_cuDeviceGetPCIBusId_not[] = "Function \"cuDeviceGetPCIBusId\" not found";
static const char __pyx_k_Function_cuDeviceGetProperties_n[] = "Function \"cuDeviceGetProperties\" not found";
static const char __pyx_k_Function_cuDeviceGetTexture1DLin[] = "Function \"cuDeviceGetTexture1DLinearMaxWidth\" not found";
static const char __pyx_k_Function_cuDeviceGetUuid_not_fou[] = "Function \"cuDeviceGetUuid\" not found";
static const char __pyx_k_Function_cuDeviceGraphMemTrim_no[] = "Function \"cuDeviceGraphMemTrim\" not found";
static const char __pyx_k_Function_cuDevicePrimaryCtxGetSt[] = "Function \"cuDevicePrimaryCtxGetState\" not found";
static const char __pyx_k_Function_cuDevicePrimaryCtxRelea[] = "Function \"cuDevicePrimaryCtxRelease_v2\" not found";
static const char __pyx_k_Function_cuDevicePrimaryCtxReset[] = "Function \"cuDevicePrimaryCtxReset_v2\" not found";
static const char __pyx_k_Function_cuDevicePrimaryCtxRetai[] = "Function \"cuDevicePrimaryCtxRetain\" not found";
static const char __pyx_k_Function_cuDevicePrimaryCtxSetFl[] = "Function \"cuDevicePrimaryCtxSetFlags_v2\" not found";
static const char __pyx_k_Function_cuDeviceRegisterAsyncNo[] = "Function \"cuDeviceRegisterAsyncNotification\" not found";
static const char __pyx_k_Function_cuDeviceSetGraphMemAttr[] = "Function \"cuDeviceSetGraphMemAttribute\" not found";
static const char __pyx_k_Function_cuDeviceTotalMem_v2_not[] = "Function \"cuDeviceTotalMem_v2\" not found";
static const char __pyx_k_Function_cuDeviceUnregisterAsync[] = "Function \"cuDeviceUnregisterAsyncNotification\" not found";
static const char __pyx_k_Function_cuEGLStreamConsumerAcqu[] = "Function \"cuEGLStreamConsumerAcquireFrame\" not found";
static const char __pyx_k_Function_cuEGLStreamConsumerConn[] = "Function \"cuEGLStreamConsumerConnect\" not found";
static const char __pyx_k_Function_cuEGLStreamConsumerDisc[] = "Function \"cuEGLStreamConsumerDisconnect\" not found";
static const char __pyx_k_Function_cuEGLStreamConsumerRele[] = "Function \"cuEGLStreamConsumerReleaseFrame\" not found";
static const char __pyx_k_Function_cuEGLStreamProducerConn[] = "Function \"cuEGLStreamProducerConnect\" not found";
static const char __pyx_k_Function_cuEGLStreamProducerDisc[] = "Function \"cuEGLStreamProducerDisconnect\" not found";
static const char __pyx_k_Function_cuEGLStreamProducerPres[] = "Function \"cuEGLStreamProducerPresentFrame\" not found";
static const char __pyx_k_Function_cuEGLStreamProducerRetu[] = "Function \"cuEGLStreamProducerReturnFrame\" not found";
static const char __pyx_k_Function_cuEventCreateFromEGLSyn[] = "Function \"cuEventCreateFromEGLSync\" not found";
static const char __pyx_k_Function_cuEventCreate_not_found[] = "Function \"cuEventCreate\" not found";
static const char __pyx_k_Function_cuEventDestroy_v2_not_f[] = "Function \"cuEventDestroy_v2\" not found";
static const char __pyx_k_Function_cuEventRecord_not_found[] = "Function \"cuEventRecord\" not found";
static const char __pyx_k_Function_cuExternalMemoryGetMapp[] = "Function \"cuExternalMemoryGetMappedBuffer\" not found";
static const char __pyx_k_Function_cuFlushGPUDirectRDMAWri[] = "Function \"cuFlushGPUDirectRDMAWrites\" not found";
static const char __pyx_k_Function_cuFuncGetModule_not_fou[] = "Function \"cuFuncGetModule\" not found";
static const char __pyx_k_Function_cuFuncGetName_not_found[] = "Function \"cuFuncGetName\" not found";
static const char __pyx_k_Function_cuFuncIsLoaded_not_foun[] = "Function \"cuFuncIsLoaded\" not found";
static const char __pyx_k_Function_cuFuncSetBlockShape_not[] = "Function \"cuFuncSetBlockShape\" not found";
static const char __pyx_k_Function_cuFuncSetCacheConfig_no[] = "Function \"cuFuncSetCacheConfig\" not found";
static const char __pyx_k_Function_cuFuncSetSharedMemConfi[] = "Function \"cuFuncSetSharedMemConfig\" not found";
static const char __pyx_k_Function_cuFuncSetSharedSize_not[] = "Function \"cuFuncSetSharedSize\" not found";
static const char __pyx_k_Function_cuGLGetDevices_v2_not_f[] = "Function \"cuGLGetDevices_v2\" not found";
static const char __pyx_k_Function_cuGetErrorName_not_foun[] = "Function \"cuGetErrorName\" not found";
static const char __pyx_k_Function_cuGetErrorString_not_fo[] = "Function \"cuGetErrorString\" not found";
static const char __pyx_k_Function_cuGetExportTable_not_fo[] = "Function \"cuGetExportTable\" not found";
static const char __pyx_k_Function_cuGetProcAddress_v2_not[] = "Function \"cuGetProcAddress_v2\" not found";
static const char __pyx_k_Function_cuGraphAddBatchMemOpNod[] = "Function \"cuGraphAddBatchMemOpNode\" not found";
static const char __pyx_k_Function_cuGraphAddChildGraphNod[] = "Function \"cuGraphAddChildGraphNode\" not found";
static const char __pyx_k_Function_cuGraphAddEmptyNode_not[] = "Function \"cuGraphAddEmptyNode\" not found";
static const char __pyx_k_Function_cuGraphAddEventRecordNo[] = "Function \"cuGraphAddEventRecordNode\" not found";
static const char __pyx_k_Function_cuGraphAddEventWaitNode[] = "Function \"cuGraphAddEventWaitNode\" not found";
static const char __pyx_k_Function_cuGraphAddExternalSemap[] = "Function \"cuGraphAddExternalSemaphoresSignalNode\" not found";
static const char __pyx_k_Function_cuGraphAddKernelNode_v2[] = "Function \"cuGraphAddKernelNode_v2\" not found";
static const char __pyx_k_Function_cuGraphAddMemFreeNode_n[] = "Function \"cuGraphAddMemFreeNode\" not found";
static const char __pyx_k_Function_cuGraphAddMemcpyNode_no[] = "Function \"cuGraphAddMemcpyNode\" not found";
static const char __pyx_k_Function_cuGraphAddMemsetNode_no[] = "Function \"cuGraphAddMemsetNode\" not found";
static const char __pyx_k_Function_cuGraphAddNode_not_foun[] = "Function \"cuGraphAddNode\" not found";
static const char __pyx_k_Function_cuGraphAddNode_v2_not_f[] = "Function \"cuGraphAddNode_v2\" not found";
static const char __pyx_k_Function_cuGraphBatchMemOpNodeGe[] = "Function \"cuGraphBatchMemOpNodeGetParams\" not found";
static const char __pyx_k_Function_cuGraphBatchMemOpNodeSe[] = "Function \"cuGraphBatchMemOpNodeSetParams\" not found";
static const char __pyx_k_Function_cuGraphChildGraphNodeGe[] = "Function \"cuGraphChildGraphNodeGetGraph\" not found";
static const char __pyx_k_Function_cuGraphConditionalHandl[] = "Function \"cuGraphConditionalHandleCreate\" not found";
static const char __pyx_k_Function_cuGraphCreate_not_found[] = "Function \"cuGraphCreate\" not found";
static const char __pyx_k_Function_cuGraphDebugDotPrint_no[] = "Function \"cuGraphDebugDotPrint\" not found";
static const char __pyx_k_Function_cuGraphDestroy_not_foun[] = "Function \"cuGraphDestroy\" not found";
static const char __pyx_k_Function_cuGraphEventRecordNodeG[] = "Function \"cuGraphEventRecordNodeGetEvent\" not found";
static const char __pyx_k_Function_cuGraphEventRecordNodeS[] = "Function \"cuGraphEventRecordNodeSetEvent\" not found";
static const char __pyx_k_Function_cuGraphEventWaitNodeGet[] = "Function \"cuGraphEventWaitNodeGetEvent\" not found";
static const char __pyx_k_Function_cuGraphEventWaitNodeSet[] = "Function \"cuGraphEventWaitNodeSetEvent\" not found";
static const char __pyx_k_Function_cuGraphExecBatchMemOpNo[] = "Function \"cuGraphExecBatchMemOpNodeSetParams\" not found";
static const char __pyx_k_Function_cuGraphExecChildGraphNo[] = "Function \"cuGraphExecChildGraphNodeSetParams\" not found";
static const char __pyx_k_Function_cuGraphExecEventRecordN[] = "Function \"cuGraphExecEventRecordNodeSetEvent\" not found";
static const char __pyx_k_Function_cuGraphExecEventWaitNod[] = "Function \"cuGraphExecEventWaitNodeSetEvent\" not found";
static const char __pyx_k_Function_cuGraphExecExternalSema[] = "Function \"cuGraphExecExternalSemaphoresSignalNodeSetParams\" not found";
static const char __pyx_k_Function_cuGraphExecGetFlags_not[] = "Function \"cuGraphExecGetFlags\" not found";
static const char __pyx_k_Function_cuGraphExecHostNodeSetP[] = "Function \"cuGraphExecHostNodeSetParams\" not found";
static const char __pyx_k_Function_cuGraphExecKernelNodeSe[] = "Function \"cuGraphExecKernelNodeSetParams_v2\" not found";
static const char __pyx_k_Function_cuGraphExecMemcpyNodeSe[] = "Function \"cuGraphExecMemcpyNodeSetParams\" not found";
static const char __pyx_k_Function_cuGraphExecMemsetNodeSe[] = "Function \"cuGraphExecMemsetNodeSetParams\" not found";
static const char __pyx_k_Function_cuGraphExecNodeSetParam[] = "Function \"cuGraphExecNodeSetParams\" not found";
static const char __pyx_k_Function_cuGraphExecUpdate_v2_no[] = "Function \"cuGraphExecUpdate_v2\" not found";
static const char __pyx_k_Function_cuGraphExternalSemaphor[] = "Function \"cuGraphExternalSemaphoresSignalNodeGetParams\" not found";
static const char __pyx_k_Function_cuGraphGetEdges_not_fou[] = "Function \"cuGraphGetEdges\" not found";
static const char __pyx_k_Function_cuGraphGetNodes_not_fou[] = "Function \"cuGraphGetNodes\" not found";
static const char __pyx_k_Function_cuGraphGetRootNodes_not[] = "Function \"cuGraphGetRootNodes\" not found";
static const char __pyx_k_Function_cuGraphHostNodeGetParam[] = "Function \"cuGraphHostNodeGetParams\" not found";
static const char __pyx_k_Function_cuGraphHostNodeSetParam[] = "Function \"cuGraphHostNodeSetParams\" not found";
static const char __pyx_k_Function_cuGraphInstantiateWithF[] = "Function \"cuGraphInstantiateWithFlags\" not found";
static const char __pyx_k_Function_cuGraphInstantiateWithP[] = "Function \"cuGraphInstantiateWithParams\" not found";
static const char __pyx_k_Function_cuGraphKernelNodeCopyAt[] = "Function \"cuGraphKernelNodeCopyAttributes\" not found";
static const char __pyx_k_Function_cuGraphKernelNodeGetAtt[] = "Function \"cuGraphKernelNodeGetAttribute\" not found";
static const char __pyx_k_Function_cuGraphKernelNodeGetPar[] = "Function \"cuGraphKernelNodeGetParams_v2\" not found";
static const char __pyx_k_Function_cuGraphKernelNodeSetAtt[] = "Function \"cuGraphKernelNodeSetAttribute\" not found";
static const char __pyx_k_Function_cuGraphKernelNodeSetPar[] = "Function \"cuGraphKernelNodeSetParams_v2\" not found";
static const char __pyx_k_Function_cuGraphLaunch_not_found[] = "Function \"cuGraphLaunch\" not found";
static const char __pyx_k_Function_cuGraphMemAllocNodeGetP[] = "Function \"cuGraphMemAllocNodeGetParams\" not found";
static const char __pyx_k_Function_cuGraphMemFreeNodeGetPa[] = "Function \"cuGraphMemFreeNodeGetParams\" not found";
static const char __pyx_k_Function_cuGraphMemcpyNodeGetPar[] = "Function \"cuGraphMemcpyNodeGetParams\" not found";
static const char __pyx_k_Function_cuGraphMemcpyNodeSetPar[] = "Function \"cuGraphMemcpyNodeSetParams\" not found";
static const char __pyx_k_Function_cuGraphMemsetNodeGetPar[] = "Function \"cuGraphMemsetNodeGetParams\" not found";
static const char __pyx_k_Function_cuGraphMemsetNodeSetPar[] = "Function \"cuGraphMemsetNodeSetParams\" not found";
static const char __pyx_k_Function_cuGraphNodeGetDependenc[] = "Function \"cuGraphNodeGetDependencies\" not found";
static const char __pyx_k_Function_cuGraphNodeGetDependent[] = "Function \"cuGraphNodeGetDependentNodes\" not found";
static const char __pyx_k_Function_cuGraphNodeGetEnabled_n[] = "Function \"cuGraphNodeGetEnabled\" not found";
static const char __pyx_k_Function_cuGraphNodeSetEnabled_n[] = "Function \"cuGraphNodeSetEnabled\" not found";
static const char __pyx_k_Function_cuGraphNodeSetParams_no[] = "Function \"cuGraphNodeSetParams\" not found";
static const char __pyx_k_Function_cuGraphReleaseUserObjec[] = "Function \"cuGraphReleaseUserObject\" not found";
static const char __pyx_k_Function_cuGraphRemoveDependenci[] = "Function \"cuGraphRemoveDependencies\" not found";
static const char __pyx_k_Function_cuGraphRetainUserObject[] = "Function \"cuGraphRetainUserObject\" not found";
static const char __pyx_k_Function_cuGraphUpload_not_found[] = "Function \"cuGraphUpload\" not found";
static const char __pyx_k_Function_cuGraphicsEGLRegisterIm[] = "Function \"cuGraphicsEGLRegisterImage\" not found";
static const char __pyx_k_Function_cuGraphicsGLRegisterBuf[] = "Function \"cuGraphicsGLRegisterBuffer\" not found";
static const char __pyx_k_Function_cuGraphicsGLRegisterIma[] = "Function \"cuGraphicsGLRegisterImage\" not found";
static const char __pyx_k_Function_cuGraphicsResourceGetMa[] = "Function \"cuGraphicsResourceGetMappedMipmappedArray\" not found";
static const char __pyx_k_Function_cuGraphicsResourceSetMa[] = "Function \"cuGraphicsResourceSetMapFlags_v2\" not found";
static const char __pyx_k_Function_cuGraphicsSubResourceGe[] = "Function \"cuGraphicsSubResourceGetMappedArray\" not found";
static const char __pyx_k_Function_cuGraphicsUnmapResource[] = "Function \"cuGraphicsUnmapResources\" not found";
static const char __pyx_k_Function_cuGraphicsUnregisterRes[] = "Function \"cuGraphicsUnregisterResource\" not found";
static const char __pyx_k_Function_cuGraphicsVDPAURegister[] = "Function \"cuGraphicsVDPAURegisterVideoSurface\" not found";
static const char __pyx_k_Function_cuGreenCtxCreate_not_fo[] = "Function \"cuGreenCtxCreate\" not found";
static const char __pyx_k_Function_cuGreenCtxDestroy_not_f[] = "Function \"cuGreenCtxDestroy\" not found";
static const char __pyx_k_Function_cuGreenCtxGetDevResourc[] = "Function \"cuGreenCtxGetDevResource\" not found";
static const char __pyx_k_Function_cuGreenCtxRecordEvent_n[] = "Function \"cuGreenCtxRecordEvent\" not found";
static const char __pyx_k_Function_cuGreenCtxWaitEvent_not[] = "Function \"cuGreenCtxWaitEvent\" not found";
static const char __pyx_k_Function_cuImportExternalSemapho[] = "Function \"cuImportExternalSemaphore\" not found";
static const char __pyx_k_Function_cuIpcCloseMemHandle_not[] = "Function \"cuIpcCloseMemHandle\" not found";
static const char __pyx_k_Function_cuIpcGetEventHandle_not[] = "Function \"cuIpcGetEventHandle\" not found";
static const char __pyx_k_Function_cuIpcGetMemHandle_not_f[] = "Function \"cuIpcGetMemHandle\" not found";
static const char __pyx_k_Function_cuIpcOpenEventHandle_no[] = "Function \"cuIpcOpenEventHandle\" not found";
static const char __pyx_k_Function_cuIpcOpenMemHandle_v2_n[] = "Function \"cuIpcOpenMemHandle_v2\" not found";
static const char __pyx_k_Function_cuKernelGetAttribute_no[] = "Function \"cuKernelGetAttribute\" not found";
static const char __pyx_k_Function_cuKernelGetFunction_not[] = "Function \"cuKernelGetFunction\" not found";
static const char __pyx_k_Function_cuKernelGetName_not_fou[] = "Function \"cuKernelGetName\" not found";
static const char __pyx_k_Function_cuKernelGetParamInfo_no[] = "Function \"cuKernelGetParamInfo\" not found";
static const char __pyx_k_Function_cuKernelSetAttribute_no[] = "Function \"cuKernelSetAttribute\" not found";
static const char __pyx_k_Function_cuLaunchCooperativeKern[] = "Function \"cuLaunchCooperativeKernel\" not found";
static const char __pyx_k_Function_cuLaunchGridAsync_not_f[] = "Function \"cuLaunchGridAsync\" not found";
static const char __pyx_k_Function_cuLaunchHostFunc_not_fo[] = "Function \"cuLaunchHostFunc\" not found";
static const char __pyx_k_Function_cuLaunchKernelEx_not_fo[] = "Function \"cuLaunchKernelEx\" not found";
static const char __pyx_k_Function_cuLaunchKernel_not_foun[] = "Function \"cuLaunchKernel\" not found";
static const char __pyx_k_Function_cuLibraryEnumerateKerne[] = "Function \"cuLibraryEnumerateKernels\" not found";
static const char __pyx_k_Function_cuLibraryGetKernelCount[] = "Function \"cuLibraryGetKernelCount\" not found";
static const char __pyx_k_Function_cuLibraryGetManaged_not[] = "Function \"cuLibraryGetManaged\" not found";
static const char __pyx_k_Function_cuLibraryGetUnifiedFunc[] = "Function \"cuLibraryGetUnifiedFunction\" not found";
static const char __pyx_k_Function_cuLibraryLoadData_not_f[] = "Function \"cuLibraryLoadData\" not found";
static const char __pyx_k_Function_cuLibraryLoadFromFile_n[] = "Function \"cuLibraryLoadFromFile\" not found";
static const char __pyx_k_Function_cuLibraryUnload_not_fou[] = "Function \"cuLibraryUnload\" not found";
static const char __pyx_k_Function_cuLinkAddData_v2_not_fo[] = "Function \"cuLinkAddData_v2\" not found";
static const char __pyx_k_Function_cuLinkAddFile_v2_not_fo[] = "Function \"cuLinkAddFile_v2\" not found";
static const char __pyx_k_Function_cuLinkComplete_not_foun[] = "Function \"cuLinkComplete\" not found";
static const char __pyx_k_Function_cuLinkCreate_v2_not_fou[] = "Function \"cuLinkCreate_v2\" not found";
static const char __pyx_k_Function_cuLinkDestroy_not_found[] = "Function \"cuLinkDestroy\" not found";
static const char __pyx_k_Function_cuMemAddressFree_not_fo[] = "Function \"cuMemAddressFree\" not found";
static const char __pyx_k_Function_cuMemAddressReserve_not[] = "Function \"cuMemAddressReserve\" not found";
static const char __pyx_k_Function_cuMemAdvise_v2_not_foun[] = "Function \"cuMemAdvise_v2\" not found";
static const char __pyx_k_Function_cuMemAllocAsync_not_fou[] = "Function \"cuMemAllocAsync\" not found";
static const char __pyx_k_Function_cuMemAllocFromPoolAsync[] = "Function \"cuMemAllocFromPoolAsync\" not found";
static const char __pyx_k_Function_cuMemAllocHost_v2_not_f[] = "Function \"cuMemAllocHost_v2\" not found";
static const char __pyx_k_Function_cuMemAllocManaged_not_f[] = "Function \"cuMemAllocManaged\" not found";
static const char __pyx_k_Function_cuMemAlloc_v2_not_found[] = "Function \"cuMemAlloc_v2\" not found";
static const char __pyx_k_Function_cuMemExportToShareableH[] = "Function \"cuMemExportToShareableHandle\" not found";
static const char __pyx_k_Function_cuMemFreeAsync_not_foun[] = "Function \"cuMemFreeAsync\" not found";
static const char __pyx_k_Function_cuMemFreeHost_not_found[] = "Function \"cuMemFreeHost\" not found";
static const char __pyx_k_Function_cuMemGetAccess_not_foun[] = "Function \"cuMemGetAccess\" not found";
static const char __pyx_k_Function_cuMemGetAddressRange_v2[] = "Function \"cuMemGetAddressRange_v2\" not found";
static const char __pyx_k_Function_cuMemGetAllocationGranu[] = "Function \"cuMemGetAllocationGranularity\" not found";
static const char __pyx_k_Function_cuMemGetAllocationPrope[] = "Function \"cuMemGetAllocationPropertiesFromHandle\" not found";
static const char __pyx_k_Function_cuMemGetHandleForAddres[] = "Function \"cuMemGetHandleForAddressRange\" not found";
static const char __pyx_k_Function_cuMemGetInfo_v2_not_fou[] = "Function \"cuMemGetInfo_v2\" not found";
static const char __pyx_k_Function_cuMemHostAlloc_not_foun[] = "Function \"cuMemHostAlloc\" not found";
static const char __pyx_k_Function_cuMemHostGetDevicePoint[] = "Function \"cuMemHostGetDevicePointer_v2\" not found";
static const char __pyx_k_Function_cuMemHostGetFlags_not_f[] = "Function \"cuMemHostGetFlags\" not found";
static const char __pyx_k_Function_cuMemHostRegister_v2_no[] = "Function \"cuMemHostRegister_v2\" not found";
static const char __pyx_k_Function_cuMemHostUnregister_not[] = "Function \"cuMemHostUnregister\" not found";
static const char __pyx_k_Function_cuMemImportFromShareabl[] = "Function \"cuMemImportFromShareableHandle\" not found";
static const char __pyx_k_Function_cuMemPoolCreate_not_fou[] = "Function \"cuMemPoolCreate\" not found";
static const char __pyx_k_Function_cuMemPoolDestroy_not_fo[] = "Function \"cuMemPoolDestroy\" not found";
static const char __pyx_k_Function_cuMemPoolExportToSharea[] = "Function \"cuMemPoolExportToShareableHandle\" not found";
static const char __pyx_k_Function_cuMemPoolGetAttribute_n[] = "Function \"cuMemPoolGetAttribute\" not found";
static const char __pyx_k_Function_cuMemPoolImportFromShar[] = "Function \"cuMemPoolImportFromShareableHandle\" not found";
static const char __pyx_k_Function_cuMemPoolSetAttribute_n[] = "Function \"cuMemPoolSetAttribute\" not found";
static const char __pyx_k_Function_cuMemPoolTrimTo_not_fou[] = "Function \"cuMemPoolTrimTo\" not found";
static const char __pyx_k_Function_cuMemPrefetchAsync_v2_n[] = "Function \"cuMemPrefetchAsync_v2\" not found";
static const char __pyx_k_Function_cuMemRangeGetAttributes[] = "Function \"cuMemRangeGetAttributes\" not found";
static const char __pyx_k_Function_cuMemRetainAllocationHa[] = "Function \"cuMemRetainAllocationHandle\" not found";
static const char __pyx_k_Function_cuMemSetAccess_not_foun[] = "Function \"cuMemSetAccess\" not found";
static const char __pyx_k_Function_cuMemcpy2D_v2_not_found[] = "Function \"cuMemcpy2D_v2\" not found";
static const char __pyx_k_Function_cuMemcpy3DPeerAsync_not[] = "Function \"cuMemcpy3DPeerAsync\" not found";
static const char __pyx_k_Function_cuMemcpy3DPeer_not_foun[] = "Function \"cuMemcpy3DPeer\" not found";
static const char __pyx_k_Function_cuMemcpy3D_v2_not_found[] = "Function \"cuMemcpy3D_v2\" not found";
static const char __pyx_k_Function_cuMemcpyAsync_not_found[] = "Function \"cuMemcpyAsync\" not found";
static const char __pyx_k_Function_cuMemcpyAtoA_v2_not_fou[] = "Function \"cuMemcpyAtoA_v2\" not found";
static const char __pyx_k_Function_cuMemcpyAtoD_v2_not_fou[] = "Function \"cuMemcpyAtoD_v2\" not found";
static const char __pyx_k_Function_cuMemcpyAtoHAsync_v2_no[] = "Function \"cuMemcpyAtoHAsync_v2\" not found";
static const char __pyx_k_Function_cuMemcpyAtoH_v2_not_fou[] = "Function \"cuMemcpyAtoH_v2\" not found";
static const char __pyx_k_Function_cuMemcpyDtoA_v2_not_fou[] = "Function \"cuMemcpyDtoA_v2\" not found";
static const char __pyx_k_Function_cuMemcpyDtoDAsync_v2_no[] = "Function \"cuMemcpyDtoDAsync_v2\" not found";
static const char __pyx_k_Function_cuMemcpyDtoD_v2_not_fou[] = "Function \"cuMemcpyDtoD_v2\" not found";
static const char __pyx_k_Function_cuMemcpyDtoHAsync_v2_no[] = "Function \"cuMemcpyDtoHAsync_v2\" not found";
static const char __pyx_k_Function_cuMemcpyDtoH_v2_not_fou[] = "Function \"cuMemcpyDtoH_v2\" not found";
static const char __pyx_k_Function_cuMemcpyHtoAAsync_v2_no[] = "Function \"cuMemcpyHtoAAsync_v2\" not found";
static const char __pyx_k_Function_cuMemcpyHtoA_v2_not_fou[] = "Function \"cuMemcpyHtoA_v2\" not found";
static const char __pyx_k_Function_cuMemcpyHtoDAsync_v2_no[] = "Function \"cuMemcpyHtoDAsync_v2\" not found";
static const char __pyx_k_Function_cuMemcpyHtoD_v2_not_fou[] = "Function \"cuMemcpyHtoD_v2\" not found";
static const char __pyx_k_Function_cuMemcpyPeerAsync_not_f[] = "Function \"cuMemcpyPeerAsync\" not found";
static const char __pyx_k_Function_cuMemsetD16Async_not_fo[] = "Function \"cuMemsetD16Async\" not found";
static const char __pyx_k_Function_cuMemsetD16_v2_not_foun[] = "Function \"cuMemsetD16_v2\" not found";
static const char __pyx_k_Function_cuMemsetD2D16_v2_not_fo[] = "Function \"cuMemsetD2D16_v2\" not found";
static const char __pyx_k_Function_cuMemsetD2D32_v2_not_fo[] = "Function \"cuMemsetD2D32_v2\" not found";
static const char __pyx_k_Function_cuMemsetD2D8Async_not_f[] = "Function \"cuMemsetD2D8Async\" not found";
static const char __pyx_k_Function_cuMemsetD2D8_v2_not_fou[] = "Function \"cuMemsetD2D8_v2\" not found";
static const char __pyx_k_Function_cuMemsetD32Async_not_fo[] = "Function \"cuMemsetD32Async\" not found";
static const char __pyx_k_Function_cuMemsetD32_v2_not_foun[] = "Function \"cuMemsetD32_v2\" not found";
static const char __pyx_k_Function_cuMemsetD8Async_not_fou[] = "Function \"cuMemsetD8Async\" not found";
static const char __pyx_k_Function_cuMemsetD8_v2_not_found[] = "Function \"cuMemsetD8_v2\" not found";
static const char __pyx_k_Function_cuMipmappedArrayDestroy[] = "Function \"cuMipmappedArrayDestroy\" not found";
static const char __pyx_k_Function_cuMipmappedArrayGetLeve[] = "Function \"cuMipmappedArrayGetLevel\" not found";
static const char __pyx_k_Function_cuMipmappedArrayGetMemo[] = "Function \"cuMipmappedArrayGetMemoryRequirements\" not found";
static const char __pyx_k_Function_cuMipmappedArrayGetSpar[] = "Function \"cuMipmappedArrayGetSparseProperties\" not found";
static const char __pyx_k_Function_cuModuleEnumerateFuncti[] = "Function \"cuModuleEnumerateFunctions\" not found";
static const char __pyx_k_Function_cuModuleGetFunctionCoun[] = "Function \"cuModuleGetFunctionCount\" not found";
static const char __pyx_k_Function_cuModuleGetFunction_not[] = "Function \"cuModuleGetFunction\" not found";
static const char __pyx_k_Function_cuModuleGetGlobal_v2_no[] = "Function \"cuModuleGetGlobal_v2\" not found";
static const char __pyx_k_Function_cuModuleGetTexRef_not_f[] = "Function \"cuModuleGetTexRef\" not found";
static const char __pyx_k_Function_cuModuleLoadData_not_fo[] = "Function \"cuModuleLoadData\" not found";
static const char __pyx_k_Function_cuModuleLoadFatBinary_n[] = "Function \"cuModuleLoadFatBinary\" not found";
static const char __pyx_k_Function_cuModuleUnload_not_foun[] = "Function \"cuModuleUnload\" not found";
static const char __pyx_k_Function_cuMulticastAddDevice_no[] = "Function \"cuMulticastAddDevice\" not found";
static const char __pyx_k_Function_cuMulticastBindAddr_not[] = "Function \"cuMulticastBindAddr\" not found";
static const char __pyx_k_Function_cuMulticastCreate_not_f[] = "Function \"cuMulticastCreate\" not found";
static const char __pyx_k_Function_cuMulticastGetGranulari[] = "Function \"cuMulticastGetGranularity\" not found";
static const char __pyx_k_Function_cuMulticastUnbind_not_f[] = "Function \"cuMulticastUnbind\" not found";
static const char __pyx_k_Function_cuOccupancyAvailableDyn[] = "Function \"cuOccupancyAvailableDynamicSMemPerBlock\" not found";
static const char __pyx_k_Function_cuOccupancyMaxActiveBlo[] = "Function \"cuOccupancyMaxActiveBlocksPerMultiprocessor\" not found";
static const char __pyx_k_Function_cuOccupancyMaxActiveClu[] = "Function \"cuOccupancyMaxActiveClusters\" not found";
static const char __pyx_k_Function_cuOccupancyMaxPotential[] = "Function \"cuOccupancyMaxPotentialBlockSize\" not found";
static const char __pyx_k_Function_cuParamSetSize_not_foun[] = "Function \"cuParamSetSize\" not found";
static const char __pyx_k_Function_cuParamSetTexRef_not_fo[] = "Function \"cuParamSetTexRef\" not found";
static const char __pyx_k_Function_cuPointerGetAttribute_n[] = "Function \"cuPointerGetAttribute\" not found";
static const char __pyx_k_Function_cuPointerSetAttribute_n[] = "Function \"cuPointerSetAttribute\" not found";
static const char __pyx_k_Function_cuProfilerStart_not_fou[] = "Function \"cuProfilerStart\" not found";
static const char __pyx_k_Function_cuProfilerStop_not_foun[] = "Function \"cuProfilerStop\" not found";
static const char __pyx_k_Function_cuSignalExternalSemapho[] = "Function \"cuSignalExternalSemaphoresAsync\" not found";
static const char __pyx_k_Function_cuStreamAddCallback_not[] = "Function \"cuStreamAddCallback\" not found";
static const char __pyx_k_Function_cuStreamBatchMemOp_v2_n[] = "Function \"cuStreamBatchMemOp_v2\" not found";
static const char __pyx_k_Function_cuStreamBeginCaptureToG[] = "Function \"cuStreamBeginCaptureToGraph\" not found";
static const char __pyx_k_Function_cuStreamBeginCapture_v2[] = "Function \"cuStreamBeginCapture_v2\" not found";
static const char __pyx_k_Function_cuStreamCreateWithPrior[] = "Function \"cuStreamCreateWithPriority\" not found";
static const char __pyx_k_Function_cuStreamCreate_not_foun[] = "Function \"cuStreamCreate\" not found";
static const char __pyx_k_Function_cuStreamGetAttribute_no[] = "Function \"cuStreamGetAttribute\" not found";
static const char __pyx_k_Function_cuStreamGetCtx_not_foun[] = "Function \"cuStreamGetCtx\" not found";
static const char __pyx_k_Function_cuStreamGetFlags_not_fo[] = "Function \"cuStreamGetFlags\" not found";
static const char __pyx_k_Function_cuStreamGetGreenCtx_not[] = "Function \"cuStreamGetGreenCtx\" not found";
static const char __pyx_k_Function_cuStreamGetId_not_found[] = "Function \"cuStreamGetId\" not found";
static const char __pyx_k_Function_cuStreamGetPriority_not[] = "Function \"cuStreamGetPriority\" not found";
static const char __pyx_k_Function_cuStreamIsCapturing_not[] = "Function \"cuStreamIsCapturing\" not found";
static const char __pyx_k_Function_cuStreamQuery_not_found[] = "Function \"cuStreamQuery\" not found";
static const char __pyx_k_Function_cuStreamSetAttribute_no[] = "Function \"cuStreamSetAttribute\" not found";
static const char __pyx_k_Function_cuStreamSynchronize_not[] = "Function \"cuStreamSynchronize\" not found";
static const char __pyx_k_Function_cuStreamUpdateCaptureDe[] = "Function \"cuStreamUpdateCaptureDependencies\" not found";
static const char __pyx_k_Function_cuStreamWaitEvent_not_f[] = "Function \"cuStreamWaitEvent\" not found";
static const char __pyx_k_Function_cuStreamWriteValue32_v2[] = "Function \"cuStreamWriteValue32_v2\" not found";
static const char __pyx_k_Function_cuStreamWriteValue64_v2[] = "Function \"cuStreamWriteValue64_v2\" not found";
static const char __pyx_k_Function_cuSurfObjectDestroy_not[] = "Function \"cuSurfObjectDestroy\" not found";
static const char __pyx_k_Function_cuSurfObjectGetResource[] = "Function \"cuSurfObjectGetResourceDesc\" not found";
static const char __pyx_k_Function_cuSurfRefGetArray_not_f[] = "Function \"cuSurfRefGetArray\" not found";
static const char __pyx_k_Function_cuSurfRefSetArray_not_f[] = "Function \"cuSurfRefSetArray\" not found";
static const char __pyx_k_Function_cuTensorMapEncodeIm2col[] = "Function \"cuTensorMapEncodeIm2col\" not found";
static const char __pyx_k_Function_cuTensorMapReplaceAddre[] = "Function \"cuTensorMapReplaceAddress\" not found";
static const char __pyx_k_Function_cuTexObjectCreate_not_f[] = "Function \"cuTexObjectCreate\" not found";
static const char __pyx_k_Function_cuTexObjectGetResourceD[] = "Function \"cuTexObjectGetResourceDesc\" not found";
static const char __pyx_k_Function_cuTexObjectGetResourceV[] = "Function \"cuTexObjectGetResourceViewDesc\" not found";
static const char __pyx_k_Function_cuTexObjectGetTextureDe[] = "Function \"cuTexObjectGetTextureDesc\" not found";
static const char __pyx_k_Function_cuTexRefCreate_not_foun[] = "Function \"cuTexRefCreate\" not found";
static const char __pyx_k_Function_cuTexRefDestroy_not_fou[] = "Function \"cuTexRefDestroy\" not found";
static const char __pyx_k_Function_cuTexRefGetAddress_v2_n[] = "Function \"cuTexRefGetAddress_v2\" not found";
static const char __pyx_k_Function_cuTexRefGetArray_not_fo[] = "Function \"cuTexRefGetArray\" not found";
static const char __pyx_k_Function_cuTexRefGetFilterMode_n[] = "Function \"cuTexRefGetFilterMode\" not found";
static const char __pyx_k_Function_cuTexRefGetFlags_not_fo[] = "Function \"cuTexRefGetFlags\" not found";
static const char __pyx_k_Function_cuTexRefGetFormat_not_f[] = "Function \"cuTexRefGetFormat\" not found";
static const char __pyx_k_Function_cuTexRefGetMaxAnisotrop[] = "Function \"cuTexRefGetMaxAnisotropy\" not found";
static const char __pyx_k_Function_cuTexRefGetMipmapFilter[] = "Function \"cuTexRefGetMipmapFilterMode\" not found";
static const char __pyx_k_Function_cuTexRefGetMipmapLevelB[] = "Function \"cuTexRefGetMipmapLevelBias\" not found";
static const char __pyx_k_Function_cuTexRefGetMipmapLevelC[] = "Function \"cuTexRefGetMipmapLevelClamp\" not found";
static const char __pyx_k_Function_cuTexRefGetMipmappedArr[] = "Function \"cuTexRefGetMipmappedArray\" not found";
static const char __pyx_k_Function_cuTexRefSetAddress2D_v3[] = "Function \"cuTexRefSetAddress2D_v3\" not found";
static const char __pyx_k_Function_cuTexRefSetAddress_v2_n[] = "Function \"cuTexRefSetAddress_v2\" not found";
static const char __pyx_k_Function_cuTexRefSetArray_not_fo[] = "Function \"cuTexRefSetArray\" not found";
static const char __pyx_k_Function_cuTexRefSetFilterMode_n[] = "Function \"cuTexRefSetFilterMode\" not found";
static const char __pyx_k_Function_cuTexRefSetFlags_not_fo[] = "Function \"cuTexRefSetFlags\" not found";
static const char __pyx_k_Function_cuTexRefSetFormat_not_f[] = "Function \"cuTexRefSetFormat\" not found";
static const char __pyx_k_Function_cuTexRefSetMaxAnisotrop[] = "Function \"cuTexRefSetMaxAnisotropy\" not found";
static const char __pyx_k_Function_cuTexRefSetMipmapFilter[] = "Function \"cuTexRefSetMipmapFilterMode\" not found";
static const char __pyx_k_Function_cuTexRefSetMipmapLevelB[] = "Function \"cuTexRefSetMipmapLevelBias\" not found";
static const char __pyx_k_Function_cuTexRefSetMipmapLevelC[] = "Function \"cuTexRefSetMipmapLevelClamp\" not found";
static const char __pyx_k_Function_cuTexRefSetMipmappedArr[] = "Function \"cuTexRefSetMipmappedArray\" not found";
static const char __pyx_k_Function_cuThreadExchangeStreamC[] = "Function \"cuThreadExchangeStreamCaptureMode\" not found";
static const char __pyx_k_Function_cuUserObjectRelease_not[] = "Function \"cuUserObjectRelease\" not found";
static const char __pyx_k_Function_cuVDPAUCtxCreate_v2_not[] = "Function \"cuVDPAUCtxCreate_v2\" not found";
static const char __pyx_k_Function_cuVDPAUGetDevice_not_fo[] = "Function \"cuVDPAUGetDevice\" not found";
static const char __pyx_k_Function_cuWaitExternalSemaphore[] = "Function \"cuWaitExternalSemaphoresAsync\" not found";
static const char __pyx_k_Function_cuGraphAddDependencies_2[] = "Function \"cuGraphAddDependencies_v2\" not found";
static const char __pyx_k_Function_cuStreamGetCaptureInfo_2[] = "Function \"cuStreamGetCaptureInfo_v3\" not found";
static const char __pyx_k_Function_cuEGLStreamConsumerConn_2[] = "Function \"cuEGLStreamConsumerConnectWithFlags\" not found";
static const char __pyx_k_Function_cuExternalMemoryGetMapp_2[] = "Function \"cuExternalMemoryGetMappedMipmappedArray\" not found";
static const char __pyx_k_Function_cuGraphAddExternalSemap_2[] = "Function \"cuGraphAddExternalSemaphoresWaitNode\" not found";
static const char __pyx_k_Function_cuGraphExecExternalSema_2[] = "Function \"cuGraphExecExternalSemaphoresWaitNodeSetParams\" not found";
static const char __pyx_k_Function_cuGraphExternalSemaphor_2[] = "Function \"cuGraphExternalSemaphoresSignalNodeSetParams\" not found";
static const char __pyx_k_Function_cuGraphExternalSemaphor_3[] = "Function \"cuGraphExternalSemaphoresWaitNodeGetParams\" not found";
static const char __pyx_k_Function_cuGraphExternalSemaphor_4[] = "Function \"cuGraphExternalSemaphoresWaitNodeSetParams\" not found";
static const char __pyx_k_Function_cuGraphNodeGetDependenc_2[] = "Function \"cuGraphNodeGetDependencies_v2\" not found";
static const char __pyx_k_Function_cuGraphNodeGetDependent_2[] = "Function \"cuGraphNodeGetDependentNodes_v2\" not found";
static const char __pyx_k_Function_cuGraphRemoveDependenci_2[] = "Function \"cuGraphRemoveDependencies_v2\" not found";
static const char __pyx_k_Function_cuGraphicsResourceGetMa_2[] = "Function \"cuGraphicsResourceGetMappedPointer_v2\" not found";
static const char __pyx_k_Function_cuGraphicsResourceGetMa_3[] = "Function \"cuGraphicsResourceGetMappedEglFrame\" not found";
static const char __pyx_k_Function_cuGraphicsVDPAURegister_2[] = "Function \"cuGraphicsVDPAURegisterOutputSurface\" not found";
static const char __pyx_k_Function_cuLaunchCooperativeKern_2[] = "Function \"cuLaunchCooperativeKernelMultiDevice\" not found";
static const char __pyx_k_Function_cuOccupancyMaxActiveBlo_2[] = "Function \"cuOccupancyMaxActiveBlocksPerMultiprocessorWithFlags\" not found";
static const char __pyx_k_Function_cuOccupancyMaxPotential_2[] = "Function \"cuOccupancyMaxPotentialBlockSizeWithFlags\" not found";
static const char __pyx_k_Function_cuOccupancyMaxPotential_3[] = "Function \"cuOccupancyMaxPotentialClusterSize\" not found";
static const char __pyx_k_Function_cuStreamUpdateCaptureDe_2[] = "Function \"cuStreamUpdateCaptureDependencies_v2\" not found";
/* #### Code section: decls ### */
/* #### Code section: late_includes ### */
/* #### Code section: module_state ### */
typedef struct {
  PyObject *__pyx_d;
  PyObject *__pyx_b;
  PyObject *__pyx_cython_runtime;
  PyObject *__pyx_empty_tuple;
  PyObject *__pyx_empty_bytes;
  PyObject *__pyx_empty_unicode;
  #ifdef __Pyx_CyFunction_USED
  PyTypeObject *__pyx_CyFunctionType;
  #endif
  #ifdef __Pyx_FusedFunction_USED
  PyTypeObject *__pyx_FusedFunctionType;
  #endif
  #ifdef __Pyx_Generator_USED
  PyTypeObject *__pyx_GeneratorType;
  #endif
  #ifdef __Pyx_IterableCoroutine_USED
  PyTypeObject *__pyx_IterableCoroutineType;
  #endif
  #ifdef __Pyx_Coroutine_USED
  PyTypeObject *__pyx_CoroutineAwaitType;
  #endif
  #ifdef __Pyx_Coroutine_USED
  PyTypeObject *__pyx_CoroutineType;
  #endif
  #if CYTHON_USE_MODULE_STATE
  #endif
  #if CYTHON_USE_MODULE_STATE
  #endif
  #if CYTHON_USE_MODULE_STATE
  #endif
  #if CYTHON_USE_MODULE_STATE
  #endif
  #if CYTHON_USE_MODULE_STATE
  #endif
  PyObject *__pyx_n_u_CUDA_PYTHON_CUDA_PER_THREAD_DEFA;
  PyObject *__pyx_kp_u_Failed_to_dlopen;
  PyObject *__pyx_kp_u_Function_cuArray3DCreate_v2_not;
  PyObject *__pyx_kp_u_Function_cuArray3DGetDescriptor;
  PyObject *__pyx_kp_u_Function_cuArrayCreate_v2_not_fo;
  PyObject *__pyx_kp_u_Function_cuArrayDestroy_not_foun;
  PyObject *__pyx_kp_u_Function_cuArrayGetDescriptor_v2;
  PyObject *__pyx_kp_u_Function_cuArrayGetMemoryRequire;
  PyObject *__pyx_kp_u_Function_cuArrayGetPlane_not_fou;
  PyObject *__pyx_kp_u_Function_cuArrayGetSparsePropert;
  PyObject *__pyx_kp_u_Function_cuCoredumpGetAttribute;
  PyObject *__pyx_kp_u_Function_cuCoredumpGetAttributeG;
  PyObject *__pyx_kp_u_Function_cuCoredumpSetAttribute;
  PyObject *__pyx_kp_u_Function_cuCoredumpSetAttributeG;
  PyObject *__pyx_kp_u_Function_cuCtxAttach_not_found;
  PyObject *__pyx_kp_u_Function_cuCtxCreate_v2_not_foun;
  PyObject *__pyx_kp_u_Function_cuCtxCreate_v3_not_foun;
  PyObject *__pyx_kp_u_Function_cuCtxDestroy_v2_not_fou;
  PyObject *__pyx_kp_u_Function_cuCtxDetach_not_found;
  PyObject *__pyx_kp_u_Function_cuCtxDisablePeerAccess;
  PyObject *__pyx_kp_u_Function_cuCtxEnablePeerAccess_n;
  PyObject *__pyx_kp_u_Function_cuCtxFromGreenCtx_not_f;
  PyObject *__pyx_kp_u_Function_cuCtxGetApiVersion_not;
  PyObject *__pyx_kp_u_Function_cuCtxGetCacheConfig_not;
  PyObject *__pyx_kp_u_Function_cuCtxGetCurrent_not_fou;
  PyObject *__pyx_kp_u_Function_cuCtxGetDevResource_not;
  PyObject *__pyx_kp_u_Function_cuCtxGetDevice_not_foun;
  PyObject *__pyx_kp_u_Function_cuCtxGetExecAffinity_no;
  PyObject *__pyx_kp_u_Function_cuCtxGetFlags_not_found;
  PyObject *__pyx_kp_u_Function_cuCtxGetId_not_found;
  PyObject *__pyx_kp_u_Function_cuCtxGetLimit_not_found;
  PyObject *__pyx_kp_u_Function_cuCtxGetSharedMemConfig;
  PyObject *__pyx_kp_u_Function_cuCtxGetStreamPriorityR;
  PyObject *__pyx_kp_u_Function_cuCtxPopCurrent_v2_not;
  PyObject *__pyx_kp_u_Function_cuCtxPushCurrent_v2_not;
  PyObject *__pyx_kp_u_Function_cuCtxResetPersistingL2C;
  PyObject *__pyx_kp_u_Function_cuCtxSetCacheConfig_not;
  PyObject *__pyx_kp_u_Function_cuCtxSetCurrent_not_fou;
  PyObject *__pyx_kp_u_Function_cuCtxSetFlags_not_found;
  PyObject *__pyx_kp_u_Function_cuCtxSetLimit_not_found;
  PyObject *__pyx_kp_u_Function_cuCtxSetSharedMemConfig;
  PyObject *__pyx_kp_u_Function_cuCtxSynchronize_not_fo;
  PyObject *__pyx_kp_u_Function_cuDestroyExternalMemory;
  PyObject *__pyx_kp_u_Function_cuDestroyExternalSemaph;
  PyObject *__pyx_kp_u_Function_cuDevResourceGenerateDe;
  PyObject *__pyx_kp_u_Function_cuDevSmResourceSplitByC;
  PyObject *__pyx_kp_u_Function_cuDeviceCanAccessPeer_n;
  PyObject *__pyx_kp_u_Function_cuDeviceComputeCapabili;
  PyObject *__pyx_kp_u_Function_cuDeviceGetAttribute_no;
  PyObject *__pyx_kp_u_Function_cuDeviceGetByPCIBusId_n;
  PyObject *__pyx_kp_u_Function_cuDeviceGetCount_not_fo;
  PyObject *__pyx_kp_u_Function_cuDeviceGetDefaultMemPo;
  PyObject *__pyx_kp_u_Function_cuDeviceGetDevResource;
  PyObject *__pyx_kp_u_Function_cuDeviceGetExecAffinity;
  PyObject *__pyx_kp_u_Function_cuDeviceGetGraphMemAttr;
  PyObject *__pyx_kp_u_Function_cuDeviceGetLuid_not_fou;
  PyObject *__pyx_kp_u_Function_cuDeviceGetMemPool_not;
  PyObject *__pyx_kp_u_Function_cuDeviceGetName_not_fou;
  PyObject *__pyx_kp_u_Function_cuDeviceGetNvSciSyncAtt;
  PyObject *__pyx_kp_u_Function_cuDeviceGetP2PAttribute;
  PyObject *__pyx_kp_u_Function_cuDeviceGetPCIBusId_not;
  PyObject *__pyx_kp_u_Function_cuDeviceGetProperties_n;
  PyObject *__pyx_kp_u_Function_cuDeviceGetTexture1DLin;
  PyObject *__pyx_kp_u_Function_cuDeviceGetUuid_not_fou;
  PyObject *__pyx_kp_u_Function_cuDeviceGetUuid_v2_not;
  PyObject *__pyx_kp_u_Function_cuDeviceGet_not_found;
  PyObject *__pyx_kp_u_Function_cuDeviceGraphMemTrim_no;
  PyObject *__pyx_kp_u_Function_cuDevicePrimaryCtxGetSt;
  PyObject *__pyx_kp_u_Function_cuDevicePrimaryCtxRelea;
  PyObject *__pyx_kp_u_Function_cuDevicePrimaryCtxReset;
  PyObject *__pyx_kp_u_Function_cuDevicePrimaryCtxRetai;
  PyObject *__pyx_kp_u_Function_cuDevicePrimaryCtxSetFl;
  PyObject *__pyx_kp_u_Function_cuDeviceRegisterAsyncNo;
  PyObject *__pyx_kp_u_Function_cuDeviceSetGraphMemAttr;
  PyObject *__pyx_kp_u_Function_cuDeviceSetMemPool_not;
  PyObject *__pyx_kp_u_Function_cuDeviceTotalMem_v2_not;
  PyObject *__pyx_kp_u_Function_cuDeviceUnregisterAsync;
  PyObject *__pyx_kp_u_Function_cuDriverGetVersion_not;
  PyObject *__pyx_kp_u_Function_cuEGLStreamConsumerAcqu;
  PyObject *__pyx_kp_u_Function_cuEGLStreamConsumerConn;
  PyObject *__pyx_kp_u_Function_cuEGLStreamConsumerConn_2;
  PyObject *__pyx_kp_u_Function_cuEGLStreamConsumerDisc;
  PyObject *__pyx_kp_u_Function_cuEGLStreamConsumerRele;
  PyObject *__pyx_kp_u_Function_cuEGLStreamProducerConn;
  PyObject *__pyx_kp_u_Function_cuEGLStreamProducerDisc;
  PyObject *__pyx_kp_u_Function_cuEGLStreamProducerPres;
  PyObject *__pyx_kp_u_Function_cuEGLStreamProducerRetu;
  PyObject *__pyx_kp_u_Function_cuEventCreateFromEGLSyn;
  PyObject *__pyx_kp_u_Function_cuEventCreate_not_found;
  PyObject *__pyx_kp_u_Function_cuEventDestroy_v2_not_f;
  PyObject *__pyx_kp_u_Function_cuEventElapsedTime_not;
  PyObject *__pyx_kp_u_Function_cuEventQuery_not_found;
  PyObject *__pyx_kp_u_Function_cuEventRecordWithFlags;
  PyObject *__pyx_kp_u_Function_cuEventRecord_not_found;
  PyObject *__pyx_kp_u_Function_cuEventSynchronize_not;
  PyObject *__pyx_kp_u_Function_cuExternalMemoryGetMapp;
  PyObject *__pyx_kp_u_Function_cuExternalMemoryGetMapp_2;
  PyObject *__pyx_kp_u_Function_cuFlushGPUDirectRDMAWri;
  PyObject *__pyx_kp_u_Function_cuFuncGetAttribute_not;
  PyObject *__pyx_kp_u_Function_cuFuncGetModule_not_fou;
  PyObject *__pyx_kp_u_Function_cuFuncGetName_not_found;
  PyObject *__pyx_kp_u_Function_cuFuncGetParamInfo_not;
  PyObject *__pyx_kp_u_Function_cuFuncIsLoaded_not_foun;
  PyObject *__pyx_kp_u_Function_cuFuncLoad_not_found;
  PyObject *__pyx_kp_u_Function_cuFuncSetAttribute_not;
  PyObject *__pyx_kp_u_Function_cuFuncSetBlockShape_not;
  PyObject *__pyx_kp_u_Function_cuFuncSetCacheConfig_no;
  PyObject *__pyx_kp_u_Function_cuFuncSetSharedMemConfi;
  PyObject *__pyx_kp_u_Function_cuFuncSetSharedSize_not;
  PyObject *__pyx_kp_u_Function_cuGLGetDevices_v2_not_f;
  PyObject *__pyx_kp_u_Function_cuGetErrorName_not_foun;
  PyObject *__pyx_kp_u_Function_cuGetErrorString_not_fo;
  PyObject *__pyx_kp_u_Function_cuGetExportTable_not_fo;
  PyObject *__pyx_kp_u_Function_cuGetProcAddress_v2_not;
  PyObject *__pyx_kp_u_Function_cuGraphAddBatchMemOpNod;
  PyObject *__pyx_kp_u_Function_cuGraphAddChildGraphNod;
  PyObject *__pyx_kp_u_Function_cuGraphAddDependencies;
  PyObject *__pyx_kp_u_Function_cuGraphAddDependencies_2;
  PyObject *__pyx_kp_u_Function_cuGraphAddEmptyNode_not;
  PyObject *__pyx_kp_u_Function_cuGraphAddEventRecordNo;
  PyObject *__pyx_kp_u_Function_cuGraphAddEventWaitNode;
  PyObject *__pyx_kp_u_Function_cuGraphAddExternalSemap;
  PyObject *__pyx_kp_u_Function_cuGraphAddExternalSemap_2;
  PyObject *__pyx_kp_u_Function_cuGraphAddHostNode_not;
  PyObject *__pyx_kp_u_Function_cuGraphAddKernelNode_v2;
  PyObject *__pyx_kp_u_Function_cuGraphAddMemAllocNode;
  PyObject *__pyx_kp_u_Function_cuGraphAddMemFreeNode_n;
  PyObject *__pyx_kp_u_Function_cuGraphAddMemcpyNode_no;
  PyObject *__pyx_kp_u_Function_cuGraphAddMemsetNode_no;
  PyObject *__pyx_kp_u_Function_cuGraphAddNode_not_foun;
  PyObject *__pyx_kp_u_Function_cuGraphAddNode_v2_not_f;
  PyObject *__pyx_kp_u_Function_cuGraphBatchMemOpNodeGe;
  PyObject *__pyx_kp_u_Function_cuGraphBatchMemOpNodeSe;
  PyObject *__pyx_kp_u_Function_cuGraphChildGraphNodeGe;
  PyObject *__pyx_kp_u_Function_cuGraphClone_not_found;
  PyObject *__pyx_kp_u_Function_cuGraphConditionalHandl;
  PyObject *__pyx_kp_u_Function_cuGraphCreate_not_found;
  PyObject *__pyx_kp_u_Function_cuGraphDebugDotPrint_no;
  PyObject *__pyx_kp_u_Function_cuGraphDestroyNode_not;
  PyObject *__pyx_kp_u_Function_cuGraphDestroy_not_foun;
  PyObject *__pyx_kp_u_Function_cuGraphEventRecordNodeG;
  PyObject *__pyx_kp_u_Function_cuGraphEventRecordNodeS;
  PyObject *__pyx_kp_u_Function_cuGraphEventWaitNodeGet;
  PyObject *__pyx_kp_u_Function_cuGraphEventWaitNodeSet;
  PyObject *__pyx_kp_u_Function_cuGraphExecBatchMemOpNo;
  PyObject *__pyx_kp_u_Function_cuGraphExecChildGraphNo;
  PyObject *__pyx_kp_u_Function_cuGraphExecDestroy_not;
  PyObject *__pyx_kp_u_Function_cuGraphExecEventRecordN;
  PyObject *__pyx_kp_u_Function_cuGraphExecEventWaitNod;
  PyObject *__pyx_kp_u_Function_cuGraphExecExternalSema;
  PyObject *__pyx_kp_u_Function_cuGraphExecExternalSema_2;
  PyObject *__pyx_kp_u_Function_cuGraphExecGetFlags_not;
  PyObject *__pyx_kp_u_Function_cuGraphExecHostNodeSetP;
  PyObject *__pyx_kp_u_Function_cuGraphExecKernelNodeSe;
  PyObject *__pyx_kp_u_Function_cuGraphExecMemcpyNodeSe;
  PyObject *__pyx_kp_u_Function_cuGraphExecMemsetNodeSe;
  PyObject *__pyx_kp_u_Function_cuGraphExecNodeSetParam;
  PyObject *__pyx_kp_u_Function_cuGraphExecUpdate_v2_no;
  PyObject *__pyx_kp_u_Function_cuGraphExternalSemaphor;
  PyObject *__pyx_kp_u_Function_cuGraphExternalSemaphor_2;
  PyObject *__pyx_kp_u_Function_cuGraphExternalSemaphor_3;
  PyObject *__pyx_kp_u_Function_cuGraphExternalSemaphor_4;
  PyObject *__pyx_kp_u_Function_cuGraphGetEdges_not_fou;
  PyObject *__pyx_kp_u_Function_cuGraphGetEdges_v2_not;
  PyObject *__pyx_kp_u_Function_cuGraphGetNodes_not_fou;
  PyObject *__pyx_kp_u_Function_cuGraphGetRootNodes_not;
  PyObject *__pyx_kp_u_Function_cuGraphHostNodeGetParam;
  PyObject *__pyx_kp_u_Function_cuGraphHostNodeSetParam;
  PyObject *__pyx_kp_u_Function_cuGraphInstantiateWithF;
  PyObject *__pyx_kp_u_Function_cuGraphInstantiateWithP;
  PyObject *__pyx_kp_u_Function_cuGraphKernelNodeCopyAt;
  PyObject *__pyx_kp_u_Function_cuGraphKernelNodeGetAtt;
  PyObject *__pyx_kp_u_Function_cuGraphKernelNodeGetPar;
  PyObject *__pyx_kp_u_Function_cuGraphKernelNodeSetAtt;
  PyObject *__pyx_kp_u_Function_cuGraphKernelNodeSetPar;
  PyObject *__pyx_kp_u_Function_cuGraphLaunch_not_found;
  PyObject *__pyx_kp_u_Function_cuGraphMemAllocNodeGetP;
  PyObject *__pyx_kp_u_Function_cuGraphMemFreeNodeGetPa;
  PyObject *__pyx_kp_u_Function_cuGraphMemcpyNodeGetPar;
  PyObject *__pyx_kp_u_Function_cuGraphMemcpyNodeSetPar;
  PyObject *__pyx_kp_u_Function_cuGraphMemsetNodeGetPar;
  PyObject *__pyx_kp_u_Function_cuGraphMemsetNodeSetPar;
  PyObject *__pyx_kp_u_Function_cuGraphNodeFindInClone;
  PyObject *__pyx_kp_u_Function_cuGraphNodeGetDependenc;
  PyObject *__pyx_kp_u_Function_cuGraphNodeGetDependenc_2;
  PyObject *__pyx_kp_u_Function_cuGraphNodeGetDependent;
  PyObject *__pyx_kp_u_Function_cuGraphNodeGetDependent_2;
  PyObject *__pyx_kp_u_Function_cuGraphNodeGetEnabled_n;
  PyObject *__pyx_kp_u_Function_cuGraphNodeGetType_not;
  PyObject *__pyx_kp_u_Function_cuGraphNodeSetEnabled_n;
  PyObject *__pyx_kp_u_Function_cuGraphNodeSetParams_no;
  PyObject *__pyx_kp_u_Function_cuGraphReleaseUserObjec;
  PyObject *__pyx_kp_u_Function_cuGraphRemoveDependenci;
  PyObject *__pyx_kp_u_Function_cuGraphRemoveDependenci_2;
  PyObject *__pyx_kp_u_Function_cuGraphRetainUserObject;
  PyObject *__pyx_kp_u_Function_cuGraphUpload_not_found;
  PyObject *__pyx_kp_u_Function_cuGraphicsEGLRegisterIm;
  PyObject *__pyx_kp_u_Function_cuGraphicsGLRegisterBuf;
  PyObject *__pyx_kp_u_Function_cuGraphicsGLRegisterIma;
  PyObject *__pyx_kp_u_Function_cuGraphicsMapResources;
  PyObject *__pyx_kp_u_Function_cuGraphicsResourceGetMa;
  PyObject *__pyx_kp_u_Function_cuGraphicsResourceGetMa_2;
  PyObject *__pyx_kp_u_Function_cuGraphicsResourceGetMa_3;
  PyObject *__pyx_kp_u_Function_cuGraphicsResourceSetMa;
  PyObject *__pyx_kp_u_Function_cuGraphicsSubResourceGe;
  PyObject *__pyx_kp_u_Function_cuGraphicsUnmapResource;
  PyObject *__pyx_kp_u_Function_cuGraphicsUnregisterRes;
  PyObject *__pyx_kp_u_Function_cuGraphicsVDPAURegister;
  PyObject *__pyx_kp_u_Function_cuGraphicsVDPAURegister_2;
  PyObject *__pyx_kp_u_Function_cuGreenCtxCreate_not_fo;
  PyObject *__pyx_kp_u_Function_cuGreenCtxDestroy_not_f;
  PyObject *__pyx_kp_u_Function_cuGreenCtxGetDevResourc;
  PyObject *__pyx_kp_u_Function_cuGreenCtxRecordEvent_n;
  PyObject *__pyx_kp_u_Function_cuGreenCtxWaitEvent_not;
  PyObject *__pyx_kp_u_Function_cuImportExternalMemory;
  PyObject *__pyx_kp_u_Function_cuImportExternalSemapho;
  PyObject *__pyx_kp_u_Function_cuInit_not_found;
  PyObject *__pyx_kp_u_Function_cuIpcCloseMemHandle_not;
  PyObject *__pyx_kp_u_Function_cuIpcGetEventHandle_not;
  PyObject *__pyx_kp_u_Function_cuIpcGetMemHandle_not_f;
  PyObject *__pyx_kp_u_Function_cuIpcOpenEventHandle_no;
  PyObject *__pyx_kp_u_Function_cuIpcOpenMemHandle_v2_n;
  PyObject *__pyx_kp_u_Function_cuKernelGetAttribute_no;
  PyObject *__pyx_kp_u_Function_cuKernelGetFunction_not;
  PyObject *__pyx_kp_u_Function_cuKernelGetName_not_fou;
  PyObject *__pyx_kp_u_Function_cuKernelGetParamInfo_no;
  PyObject *__pyx_kp_u_Function_cuKernelSetAttribute_no;
  PyObject *__pyx_kp_u_Function_cuKernelSetCacheConfig;
  PyObject *__pyx_kp_u_Function_cuLaunchCooperativeKern;
  PyObject *__pyx_kp_u_Function_cuLaunchCooperativeKern_2;
  PyObject *__pyx_kp_u_Function_cuLaunchGridAsync_not_f;
  PyObject *__pyx_kp_u_Function_cuLaunchGrid_not_found;
  PyObject *__pyx_kp_u_Function_cuLaunchHostFunc_not_fo;
  PyObject *__pyx_kp_u_Function_cuLaunchKernelEx_not_fo;
  PyObject *__pyx_kp_u_Function_cuLaunchKernel_not_foun;
  PyObject *__pyx_kp_u_Function_cuLaunch_not_found;
  PyObject *__pyx_kp_u_Function_cuLibraryEnumerateKerne;
  PyObject *__pyx_kp_u_Function_cuLibraryGetGlobal_not;
  PyObject *__pyx_kp_u_Function_cuLibraryGetKernelCount;
  PyObject *__pyx_kp_u_Function_cuLibraryGetKernel_not;
  PyObject *__pyx_kp_u_Function_cuLibraryGetManaged_not;
  PyObject *__pyx_kp_u_Function_cuLibraryGetModule_not;
  PyObject *__pyx_kp_u_Function_cuLibraryGetUnifiedFunc;
  PyObject *__pyx_kp_u_Function_cuLibraryLoadData_not_f;
  PyObject *__pyx_kp_u_Function_cuLibraryLoadFromFile_n;
  PyObject *__pyx_kp_u_Function_cuLibraryUnload_not_fou;
  PyObject *__pyx_kp_u_Function_cuLinkAddData_v2_not_fo;
  PyObject *__pyx_kp_u_Function_cuLinkAddFile_v2_not_fo;
  PyObject *__pyx_kp_u_Function_cuLinkComplete_not_foun;
  PyObject *__pyx_kp_u_Function_cuLinkCreate_v2_not_fou;
  PyObject *__pyx_kp_u_Function_cuLinkDestroy_not_found;
  PyObject *__pyx_kp_u_Function_cuMemAddressFree_not_fo;
  PyObject *__pyx_kp_u_Function_cuMemAddressReserve_not;
  PyObject *__pyx_kp_u_Function_cuMemAdvise_not_found;
  PyObject *__pyx_kp_u_Function_cuMemAdvise_v2_not_foun;
  PyObject *__pyx_kp_u_Function_cuMemAllocAsync_not_fou;
  PyObject *__pyx_kp_u_Function_cuMemAllocFromPoolAsync;
  PyObject *__pyx_kp_u_Function_cuMemAllocHost_v2_not_f;
  PyObject *__pyx_kp_u_Function_cuMemAllocManaged_not_f;
  PyObject *__pyx_kp_u_Function_cuMemAllocPitch_v2_not;
  PyObject *__pyx_kp_u_Function_cuMemAlloc_v2_not_found;
  PyObject *__pyx_kp_u_Function_cuMemCreate_not_found;
  PyObject *__pyx_kp_u_Function_cuMemExportToShareableH;
  PyObject *__pyx_kp_u_Function_cuMemFreeAsync_not_foun;
  PyObject *__pyx_kp_u_Function_cuMemFreeHost_not_found;
  PyObject *__pyx_kp_u_Function_cuMemFree_v2_not_found;
  PyObject *__pyx_kp_u_Function_cuMemGetAccess_not_foun;
  PyObject *__pyx_kp_u_Function_cuMemGetAddressRange_v2;
  PyObject *__pyx_kp_u_Function_cuMemGetAllocationGranu;
  PyObject *__pyx_kp_u_Function_cuMemGetAllocationPrope;
  PyObject *__pyx_kp_u_Function_cuMemGetHandleForAddres;
  PyObject *__pyx_kp_u_Function_cuMemGetInfo_v2_not_fou;
  PyObject *__pyx_kp_u_Function_cuMemHostAlloc_not_foun;
  PyObject *__pyx_kp_u_Function_cuMemHostGetDevicePoint;
  PyObject *__pyx_kp_u_Function_cuMemHostGetFlags_not_f;
  PyObject *__pyx_kp_u_Function_cuMemHostRegister_v2_no;
  PyObject *__pyx_kp_u_Function_cuMemHostUnregister_not;
  PyObject *__pyx_kp_u_Function_cuMemImportFromShareabl;
  PyObject *__pyx_kp_u_Function_cuMemMapArrayAsync_not;
  PyObject *__pyx_kp_u_Function_cuMemMap_not_found;
  PyObject *__pyx_kp_u_Function_cuMemPoolCreate_not_fou;
  PyObject *__pyx_kp_u_Function_cuMemPoolDestroy_not_fo;
  PyObject *__pyx_kp_u_Function_cuMemPoolExportPointer;
  PyObject *__pyx_kp_u_Function_cuMemPoolExportToSharea;
  PyObject *__pyx_kp_u_Function_cuMemPoolGetAccess_not;
  PyObject *__pyx_kp_u_Function_cuMemPoolGetAttribute_n;
  PyObject *__pyx_kp_u_Function_cuMemPoolImportFromShar;
  PyObject *__pyx_kp_u_Function_cuMemPoolImportPointer;
  PyObject *__pyx_kp_u_Function_cuMemPoolSetAccess_not;
  PyObject *__pyx_kp_u_Function_cuMemPoolSetAttribute_n;
  PyObject *__pyx_kp_u_Function_cuMemPoolTrimTo_not_fou;
  PyObject *__pyx_kp_u_Function_cuMemPrefetchAsync_not;
  PyObject *__pyx_kp_u_Function_cuMemPrefetchAsync_v2_n;
  PyObject *__pyx_kp_u_Function_cuMemRangeGetAttribute;
  PyObject *__pyx_kp_u_Function_cuMemRangeGetAttributes;
  PyObject *__pyx_kp_u_Function_cuMemRelease_not_found;
  PyObject *__pyx_kp_u_Function_cuMemRetainAllocationHa;
  PyObject *__pyx_kp_u_Function_cuMemSetAccess_not_foun;
  PyObject *__pyx_kp_u_Function_cuMemUnmap_not_found;
  PyObject *__pyx_kp_u_Function_cuMemcpy2DAsync_v2_not;
  PyObject *__pyx_kp_u_Function_cuMemcpy2DUnaligned_v2;
  PyObject *__pyx_kp_u_Function_cuMemcpy2D_v2_not_found;
  PyObject *__pyx_kp_u_Function_cuMemcpy3DAsync_v2_not;
  PyObject *__pyx_kp_u_Function_cuMemcpy3DPeerAsync_not;
  PyObject *__pyx_kp_u_Function_cuMemcpy3DPeer_not_foun;
  PyObject *__pyx_kp_u_Function_cuMemcpy3D_v2_not_found;
  PyObject *__pyx_kp_u_Function_cuMemcpyAsync_not_found;
  PyObject *__pyx_kp_u_Function_cuMemcpyAtoA_v2_not_fou;
  PyObject *__pyx_kp_u_Function_cuMemcpyAtoD_v2_not_fou;
  PyObject *__pyx_kp_u_Function_cuMemcpyAtoHAsync_v2_no;
  PyObject *__pyx_kp_u_Function_cuMemcpyAtoH_v2_not_fou;
  PyObject *__pyx_kp_u_Function_cuMemcpyDtoA_v2_not_fou;
  PyObject *__pyx_kp_u_Function_cuMemcpyDtoDAsync_v2_no;
  PyObject *__pyx_kp_u_Function_cuMemcpyDtoD_v2_not_fou;
  PyObject *__pyx_kp_u_Function_cuMemcpyDtoHAsync_v2_no;
  PyObject *__pyx_kp_u_Function_cuMemcpyDtoH_v2_not_fou;
  PyObject *__pyx_kp_u_Function_cuMemcpyHtoAAsync_v2_no;
  PyObject *__pyx_kp_u_Function_cuMemcpyHtoA_v2_not_fou;
  PyObject *__pyx_kp_u_Function_cuMemcpyHtoDAsync_v2_no;
  PyObject *__pyx_kp_u_Function_cuMemcpyHtoD_v2_not_fou;
  PyObject *__pyx_kp_u_Function_cuMemcpyPeerAsync_not_f;
  PyObject *__pyx_kp_u_Function_cuMemcpyPeer_not_found;
  PyObject *__pyx_kp_u_Function_cuMemcpy_not_found;
  PyObject *__pyx_kp_u_Function_cuMemsetD16Async_not_fo;
  PyObject *__pyx_kp_u_Function_cuMemsetD16_v2_not_foun;
  PyObject *__pyx_kp_u_Function_cuMemsetD2D16Async_not;
  PyObject *__pyx_kp_u_Function_cuMemsetD2D16_v2_not_fo;
  PyObject *__pyx_kp_u_Function_cuMemsetD2D32Async_not;
  PyObject *__pyx_kp_u_Function_cuMemsetD2D32_v2_not_fo;
  PyObject *__pyx_kp_u_Function_cuMemsetD2D8Async_not_f;
  PyObject *__pyx_kp_u_Function_cuMemsetD2D8_v2_not_fou;
  PyObject *__pyx_kp_u_Function_cuMemsetD32Async_not_fo;
  PyObject *__pyx_kp_u_Function_cuMemsetD32_v2_not_foun;
  PyObject *__pyx_kp_u_Function_cuMemsetD8Async_not_fou;
  PyObject *__pyx_kp_u_Function_cuMemsetD8_v2_not_found;
  PyObject *__pyx_kp_u_Function_cuMipmappedArrayCreate;
  PyObject *__pyx_kp_u_Function_cuMipmappedArrayDestroy;
  PyObject *__pyx_kp_u_Function_cuMipmappedArrayGetLeve;
  PyObject *__pyx_kp_u_Function_cuMipmappedArrayGetMemo;
  PyObject *__pyx_kp_u_Function_cuMipmappedArrayGetSpar;
  PyObject *__pyx_kp_u_Function_cuModuleEnumerateFuncti;
  PyObject *__pyx_kp_u_Function_cuModuleGetFunctionCoun;
  PyObject *__pyx_kp_u_Function_cuModuleGetFunction_not;
  PyObject *__pyx_kp_u_Function_cuModuleGetGlobal_v2_no;
  PyObject *__pyx_kp_u_Function_cuModuleGetLoadingMode;
  PyObject *__pyx_kp_u_Function_cuModuleGetSurfRef_not;
  PyObject *__pyx_kp_u_Function_cuModuleGetTexRef_not_f;
  PyObject *__pyx_kp_u_Function_cuModuleLoadDataEx_not;
  PyObject *__pyx_kp_u_Function_cuModuleLoadData_not_fo;
  PyObject *__pyx_kp_u_Function_cuModuleLoadFatBinary_n;
  PyObject *__pyx_kp_u_Function_cuModuleLoad_not_found;
  PyObject *__pyx_kp_u_Function_cuModuleUnload_not_foun;
  PyObject *__pyx_kp_u_Function_cuMulticastAddDevice_no;
  PyObject *__pyx_kp_u_Function_cuMulticastBindAddr_not;
  PyObject *__pyx_kp_u_Function_cuMulticastBindMem_not;
  PyObject *__pyx_kp_u_Function_cuMulticastCreate_not_f;
  PyObject *__pyx_kp_u_Function_cuMulticastGetGranulari;
  PyObject *__pyx_kp_u_Function_cuMulticastUnbind_not_f;
  PyObject *__pyx_kp_u_Function_cuOccupancyAvailableDyn;
  PyObject *__pyx_kp_u_Function_cuOccupancyMaxActiveBlo;
  PyObject *__pyx_kp_u_Function_cuOccupancyMaxActiveBlo_2;
  PyObject *__pyx_kp_u_Function_cuOccupancyMaxActiveClu;
  PyObject *__pyx_kp_u_Function_cuOccupancyMaxPotential;
  PyObject *__pyx_kp_u_Function_cuOccupancyMaxPotential_2;
  PyObject *__pyx_kp_u_Function_cuOccupancyMaxPotential_3;
  PyObject *__pyx_kp_u_Function_cuParamSetSize_not_foun;
  PyObject *__pyx_kp_u_Function_cuParamSetTexRef_not_fo;
  PyObject *__pyx_kp_u_Function_cuParamSetf_not_found;
  PyObject *__pyx_kp_u_Function_cuParamSeti_not_found;
  PyObject *__pyx_kp_u_Function_cuParamSetv_not_found;
  PyObject *__pyx_kp_u_Function_cuPointerGetAttribute_n;
  PyObject *__pyx_kp_u_Function_cuPointerGetAttributes;
  PyObject *__pyx_kp_u_Function_cuPointerSetAttribute_n;
  PyObject *__pyx_kp_u_Function_cuProfilerStart_not_fou;
  PyObject *__pyx_kp_u_Function_cuProfilerStop_not_foun;
  PyObject *__pyx_kp_u_Function_cuSignalExternalSemapho;
  PyObject *__pyx_kp_u_Function_cuStreamAddCallback_not;
  PyObject *__pyx_kp_u_Function_cuStreamAttachMemAsync;
  PyObject *__pyx_kp_u_Function_cuStreamBatchMemOp_v2_n;
  PyObject *__pyx_kp_u_Function_cuStreamBeginCaptureToG;
  PyObject *__pyx_kp_u_Function_cuStreamBeginCapture_v2;
  PyObject *__pyx_kp_u_Function_cuStreamCopyAttributes;
  PyObject *__pyx_kp_u_Function_cuStreamCreateWithPrior;
  PyObject *__pyx_kp_u_Function_cuStreamCreate_not_foun;
  PyObject *__pyx_kp_u_Function_cuStreamDestroy_v2_not;
  PyObject *__pyx_kp_u_Function_cuStreamEndCapture_not;
  PyObject *__pyx_kp_u_Function_cuStreamGetAttribute_no;
  PyObject *__pyx_kp_u_Function_cuStreamGetCaptureInfo;
  PyObject *__pyx_kp_u_Function_cuStreamGetCaptureInfo_2;
  PyObject *__pyx_kp_u_Function_cuStreamGetCtx_not_foun;
  PyObject *__pyx_kp_u_Function_cuStreamGetFlags_not_fo;
  PyObject *__pyx_kp_u_Function_cuStreamGetGreenCtx_not;
  PyObject *__pyx_kp_u_Function_cuStreamGetId_not_found;
  PyObject *__pyx_kp_u_Function_cuStreamGetPriority_not;
  PyObject *__pyx_kp_u_Function_cuStreamIsCapturing_not;
  PyObject *__pyx_kp_u_Function_cuStreamQuery_not_found;
  PyObject *__pyx_kp_u_Function_cuStreamSetAttribute_no;
  PyObject *__pyx_kp_u_Function_cuStreamSynchronize_not;
  PyObject *__pyx_kp_u_Function_cuStreamUpdateCaptureDe;
  PyObject *__pyx_kp_u_Function_cuStreamUpdateCaptureDe_2;
  PyObject *__pyx_kp_u_Function_cuStreamWaitEvent_not_f;
  PyObject *__pyx_kp_u_Function_cuStreamWaitValue32_v2;
  PyObject *__pyx_kp_u_Function_cuStreamWaitValue64_v2;
  PyObject *__pyx_kp_u_Function_cuStreamWriteValue32_v2;
  PyObject *__pyx_kp_u_Function_cuStreamWriteValue64_v2;
  PyObject *__pyx_kp_u_Function_cuSurfObjectCreate_not;
  PyObject *__pyx_kp_u_Function_cuSurfObjectDestroy_not;
  PyObject *__pyx_kp_u_Function_cuSurfObjectGetResource;
  PyObject *__pyx_kp_u_Function_cuSurfRefGetArray_not_f;
  PyObject *__pyx_kp_u_Function_cuSurfRefSetArray_not_f;
  PyObject *__pyx_kp_u_Function_cuTensorMapEncodeIm2col;
  PyObject *__pyx_kp_u_Function_cuTensorMapEncodeTiled;
  PyObject *__pyx_kp_u_Function_cuTensorMapReplaceAddre;
  PyObject *__pyx_kp_u_Function_cuTexObjectCreate_not_f;
  PyObject *__pyx_kp_u_Function_cuTexObjectDestroy_not;
  PyObject *__pyx_kp_u_Function_cuTexObjectGetResourceD;
  PyObject *__pyx_kp_u_Function_cuTexObjectGetResourceV;
  PyObject *__pyx_kp_u_Function_cuTexObjectGetTextureDe;
  PyObject *__pyx_kp_u_Function_cuTexRefCreate_not_foun;
  PyObject *__pyx_kp_u_Function_cuTexRefDestroy_not_fou;
  PyObject *__pyx_kp_u_Function_cuTexRefGetAddressMode;
  PyObject *__pyx_kp_u_Function_cuTexRefGetAddress_v2_n;
  PyObject *__pyx_kp_u_Function_cuTexRefGetArray_not_fo;
  PyObject *__pyx_kp_u_Function_cuTexRefGetBorderColor;
  PyObject *__pyx_kp_u_Function_cuTexRefGetFilterMode_n;
  PyObject *__pyx_kp_u_Function_cuTexRefGetFlags_not_fo;
  PyObject *__pyx_kp_u_Function_cuTexRefGetFormat_not_f;
  PyObject *__pyx_kp_u_Function_cuTexRefGetMaxAnisotrop;
  PyObject *__pyx_kp_u_Function_cuTexRefGetMipmapFilter;
  PyObject *__pyx_kp_u_Function_cuTexRefGetMipmapLevelB;
  PyObject *__pyx_kp_u_Function_cuTexRefGetMipmapLevelC;
  PyObject *__pyx_kp_u_Function_cuTexRefGetMipmappedArr;
  PyObject *__pyx_kp_u_Function_cuTexRefSetAddress2D_v3;
  PyObject *__pyx_kp_u_Function_cuTexRefSetAddressMode;
  PyObject *__pyx_kp_u_Function_cuTexRefSetAddress_v2_n;
  PyObject *__pyx_kp_u_Function_cuTexRefSetArray_not_fo;
  PyObject *__pyx_kp_u_Function_cuTexRefSetBorderColor;
  PyObject *__pyx_kp_u_Function_cuTexRefSetFilterMode_n;
  PyObject *__pyx_kp_u_Function_cuTexRefSetFlags_not_fo;
  PyObject *__pyx_kp_u_Function_cuTexRefSetFormat_not_f;
  PyObject *__pyx_kp_u_Function_cuTexRefSetMaxAnisotrop;
  PyObject *__pyx_kp_u_Function_cuTexRefSetMipmapFilter;
  PyObject *__pyx_kp_u_Function_cuTexRefSetMipmapLevelB;
  PyObject *__pyx_kp_u_Function_cuTexRefSetMipmapLevelC;
  PyObject *__pyx_kp_u_Function_cuTexRefSetMipmappedArr;
  PyObject *__pyx_kp_u_Function_cuThreadExchangeStreamC;
  PyObject *__pyx_kp_u_Function_cuUserObjectCreate_not;
  PyObject *__pyx_kp_u_Function_cuUserObjectRelease_not;
  PyObject *__pyx_kp_u_Function_cuUserObjectRetain_not;
  PyObject *__pyx_kp_u_Function_cuVDPAUCtxCreate_v2_not;
  PyObject *__pyx_kp_u_Function_cuVDPAUGetDevice_not_fo;
  PyObject *__pyx_kp_u_Function_cuWaitExternalSemaphore;
  PyObject *__pyx_n_s_RuntimeError;
  PyObject *__pyx_n_s__452;
  PyObject *__pyx_n_s__453;
  PyObject *__pyx_n_s_cline_in_traceback;
  PyObject *__pyx_n_s_default;
  PyObject *__pyx_n_s_encoding;
  PyObject *__pyx_n_s_getenv;
  PyObject *__pyx_n_s_import;
  PyObject *__pyx_n_s_initializing;
  PyObject *__pyx_kp_u_libcuda_so_1;
  PyObject *__pyx_n_s_main;
  PyObject *__pyx_n_s_maxsize;
  PyObject *__pyx_n_s_name;
  PyObject *__pyx_n_s_os;
  PyObject *__pyx_n_s_spec;
  PyObject *__pyx_n_s_sys;
  PyObject *__pyx_n_s_test;
  PyObject *__pyx_kp_u_utf_8;
  PyObject *__pyx_int_0;
  PyObject *__pyx_int_4294967296;
  PyObject *__pyx_tuple_;
  PyObject *__pyx_tuple__2;
  PyObject *__pyx_tuple__3;
  PyObject *__pyx_tuple__4;
  PyObject *__pyx_tuple__5;
  PyObject *__pyx_tuple__6;
  PyObject *__pyx_tuple__7;
  PyObject *__pyx_tuple__8;
  PyObject *__pyx_tuple__9;
  PyObject *__pyx_tuple__10;
  PyObject *__pyx_tuple__11;
  PyObject *__pyx_tuple__12;
  PyObject *__pyx_tuple__13;
  PyObject *__pyx_tuple__14;
  PyObject *__pyx_tuple__15;
  PyObject *__pyx_tuple__16;
  PyObject *__pyx_tuple__17;
  PyObject *__pyx_tuple__18;
  PyObject *__pyx_tuple__19;
  PyObject *__pyx_tuple__20;
  PyObject *__pyx_tuple__21;
  PyObject *__pyx_tuple__22;
  PyObject *__pyx_tuple__23;
  PyObject *__pyx_tuple__24;
  PyObject *__pyx_tuple__25;
  PyObject *__pyx_tuple__26;
  PyObject *__pyx_tuple__27;
  PyObject *__pyx_tuple__28;
  PyObject *__pyx_tuple__29;
  PyObject *__pyx_tuple__30;
  PyObject *__pyx_tuple__31;
  PyObject *__pyx_tuple__32;
  PyObject *__pyx_tuple__33;
  PyObject *__pyx_tuple__34;
  PyObject *__pyx_tuple__35;
  PyObject *__pyx_tuple__36;
  PyObject *__pyx_tuple__37;
  PyObject *__pyx_tuple__38;
  PyObject *__pyx_tuple__39;
  PyObject *__pyx_tuple__40;
  PyObject *__pyx_tuple__41;
  PyObject *__pyx_tuple__42;
  PyObject *__pyx_tuple__43;
  PyObject *__pyx_tuple__44;
  PyObject *__pyx_tuple__45;
  PyObject *__pyx_tuple__46;
  PyObject *__pyx_tuple__47;
  PyObject *__pyx_tuple__48;
  PyObject *__pyx_tuple__49;
  PyObject *__pyx_tuple__50;
  PyObject *__pyx_tuple__51;
  PyObject *__pyx_tuple__52;
  PyObject *__pyx_tuple__53;
  PyObject *__pyx_tuple__54;
  PyObject *__pyx_tuple__55;
  PyObject *__pyx_tuple__56;
  PyObject *__pyx_tuple__57;
  PyObject *__pyx_tuple__58;
  PyObject *__pyx_tuple__59;
  PyObject *__pyx_tuple__60;
  PyObject *__pyx_tuple__61;
  PyObject *__pyx_tuple__62;
  PyObject *__pyx_tuple__63;
  PyObject *__pyx_tuple__64;
  PyObject *__pyx_tuple__65;
  PyObject *__pyx_tuple__66;
  PyObject *__pyx_tuple__67;
  PyObject *__pyx_tuple__68;
  PyObject *__pyx_tuple__69;
  PyObject *__pyx_tuple__70;
  PyObject *__pyx_tuple__71;
  PyObject *__pyx_tuple__72;
  PyObject *__pyx_tuple__73;
  PyObject *__pyx_tuple__74;
  PyObject *__pyx_tuple__75;
  PyObject *__pyx_tuple__76;
  PyObject *__pyx_tuple__77;
  PyObject *__pyx_tuple__78;
  PyObject *__pyx_tuple__79;
  PyObject *__pyx_tuple__80;
  PyObject *__pyx_tuple__81;
  PyObject *__pyx_tuple__82;
  PyObject *__pyx_tuple__83;
  PyObject *__pyx_tuple__84;
  PyObject *__pyx_tuple__85;
  PyObject *__pyx_tuple__86;
  PyObject *__pyx_tuple__87;
  PyObject *__pyx_tuple__88;
  PyObject *__pyx_tuple__89;
  PyObject *__pyx_tuple__90;
  PyObject *__pyx_tuple__91;
  PyObject *__pyx_tuple__92;
  PyObject *__pyx_tuple__93;
  PyObject *__pyx_tuple__94;
  PyObject *__pyx_tuple__95;
  PyObject *__pyx_tuple__96;
  PyObject *__pyx_tuple__97;
  PyObject *__pyx_tuple__98;
  PyObject *__pyx_tuple__99;
  PyObject *__pyx_tuple__100;
  PyObject *__pyx_tuple__101;
  PyObject *__pyx_tuple__102;
  PyObject *__pyx_tuple__103;
  PyObject *__pyx_tuple__104;
  PyObject *__pyx_tuple__105;
  PyObject *__pyx_tuple__106;
  PyObject *__pyx_tuple__107;
  PyObject *__pyx_tuple__108;
  PyObject *__pyx_tuple__109;
  PyObject *__pyx_tuple__110;
  PyObject *__pyx_tuple__111;
  PyObject *__pyx_tuple__112;
  PyObject *__pyx_tuple__113;
  PyObject *__pyx_tuple__114;
  PyObject *__pyx_tuple__115;
  PyObject *__pyx_tuple__116;
  PyObject *__pyx_tuple__117;
  PyObject *__pyx_tuple__118;
  PyObject *__pyx_tuple__119;
  PyObject *__pyx_tuple__120;
  PyObject *__pyx_tuple__121;
  PyObject *__pyx_tuple__122;
  PyObject *__pyx_tuple__123;
  PyObject *__pyx_tuple__124;
  PyObject *__pyx_tuple__125;
  PyObject *__pyx_tuple__126;
  PyObject *__pyx_tuple__127;
  PyObject *__pyx_tuple__128;
  PyObject *__pyx_tuple__129;
  PyObject *__pyx_tuple__130;
  PyObject *__pyx_tuple__131;
  PyObject *__pyx_tuple__132;
  PyObject *__pyx_tuple__133;
  PyObject *__pyx_tuple__134;
  PyObject *__pyx_tuple__135;
  PyObject *__pyx_tuple__136;
  PyObject *__pyx_tuple__137;
  PyObject *__pyx_tuple__138;
  PyObject *__pyx_tuple__139;
  PyObject *__pyx_tuple__140;
  PyObject *__pyx_tuple__141;
  PyObject *__pyx_tuple__142;
  PyObject *__pyx_tuple__143;
  PyObject *__pyx_tuple__144;
  PyObject *__pyx_tuple__145;
  PyObject *__pyx_tuple__146;
  PyObject *__pyx_tuple__147;
  PyObject *__pyx_tuple__148;
  PyObject *__pyx_tuple__149;
  PyObject *__pyx_tuple__150;
  PyObject *__pyx_tuple__151;
  PyObject *__pyx_tuple__152;
  PyObject *__pyx_tuple__153;
  PyObject *__pyx_tuple__154;
  PyObject *__pyx_tuple__155;
  PyObject *__pyx_tuple__156;
  PyObject *__pyx_tuple__157;
  PyObject *__pyx_tuple__158;
  PyObject *__pyx_tuple__159;
  PyObject *__pyx_tuple__160;
  PyObject *__pyx_tuple__161;
  PyObject *__pyx_tuple__162;
  PyObject *__pyx_tuple__163;
  PyObject *__pyx_tuple__164;
  PyObject *__pyx_tuple__165;
  PyObject *__pyx_tuple__166;
  PyObject *__pyx_tuple__167;
  PyObject *__pyx_tuple__168;
  PyObject *__pyx_tuple__169;
  PyObject *__pyx_tuple__170;
  PyObject *__pyx_tuple__171;
  PyObject *__pyx_tuple__172;
  PyObject *__pyx_tuple__173;
  PyObject *__pyx_tuple__174;
  PyObject *__pyx_tuple__175;
  PyObject *__pyx_tuple__176;
  PyObject *__pyx_tuple__177;
  PyObject *__pyx_tuple__178;
  PyObject *__pyx_tuple__179;
  PyObject *__pyx_tuple__180;
  PyObject *__pyx_tuple__181;
  PyObject *__pyx_tuple__182;
  PyObject *__pyx_tuple__183;
  PyObject *__pyx_tuple__184;
  PyObject *__pyx_tuple__185;
  PyObject *__pyx_tuple__186;
  PyObject *__pyx_tuple__187;
  PyObject *__pyx_tuple__188;
  PyObject *__pyx_tuple__189;
  PyObject *__pyx_tuple__190;
  PyObject *__pyx_tuple__191;
  PyObject *__pyx_tuple__192;
  PyObject *__pyx_tuple__193;
  PyObject *__pyx_tuple__194;
  PyObject *__pyx_tuple__195;
  PyObject *__pyx_tuple__196;
  PyObject *__pyx_tuple__197;
  PyObject *__pyx_tuple__198;
  PyObject *__pyx_tuple__199;
  PyObject *__pyx_tuple__200;
  PyObject *__pyx_tuple__201;
  PyObject *__pyx_tuple__202;
  PyObject *__pyx_tuple__203;
  PyObject *__pyx_tuple__204;
  PyObject *__pyx_tuple__205;
  PyObject *__pyx_tuple__206;
  PyObject *__pyx_tuple__207;
  PyObject *__pyx_tuple__208;
  PyObject *__pyx_tuple__209;
  PyObject *__pyx_tuple__210;
  PyObject *__pyx_tuple__211;
  PyObject *__pyx_tuple__212;
  PyObject *__pyx_tuple__213;
  PyObject *__pyx_tuple__214;
  PyObject *__pyx_tuple__215;
  PyObject *__pyx_tuple__216;
  PyObject *__pyx_tuple__217;
  PyObject *__pyx_tuple__218;
  PyObject *__pyx_tuple__219;
  PyObject *__pyx_tuple__220;
  PyObject *__pyx_tuple__221;
  PyObject *__pyx_tuple__222;
  PyObject *__pyx_tuple__223;
  PyObject *__pyx_tuple__224;
  PyObject *__pyx_tuple__225;
  PyObject *__pyx_tuple__226;
  PyObject *__pyx_tuple__227;
  PyObject *__pyx_tuple__228;
  PyObject *__pyx_tuple__229;
  PyObject *__pyx_tuple__230;
  PyObject *__pyx_tuple__231;
  PyObject *__pyx_tuple__232;
  PyObject *__pyx_tuple__233;
  PyObject *__pyx_tuple__234;
  PyObject *__pyx_tuple__235;
  PyObject *__pyx_tuple__236;
  PyObject *__pyx_tuple__237;
  PyObject *__pyx_tuple__238;
  PyObject *__pyx_tuple__239;
  PyObject *__pyx_tuple__240;
  PyObject *__pyx_tuple__241;
  PyObject *__pyx_tuple__242;
  PyObject *__pyx_tuple__243;
  PyObject *__pyx_tuple__244;
  PyObject *__pyx_tuple__245;
  PyObject *__pyx_tuple__246;
  PyObject *__pyx_tuple__247;
  PyObject *__pyx_tuple__248;
  PyObject *__pyx_tuple__249;
  PyObject *__pyx_tuple__250;
  PyObject *__pyx_tuple__251;
  PyObject *__pyx_tuple__252;
  PyObject *__pyx_tuple__253;
  PyObject *__pyx_tuple__254;
  PyObject *__pyx_tuple__255;
  PyObject *__pyx_tuple__256;
  PyObject *__pyx_tuple__257;
  PyObject *__pyx_tuple__258;
  PyObject *__pyx_tuple__259;
  PyObject *__pyx_tuple__260;
  PyObject *__pyx_tuple__261;
  PyObject *__pyx_tuple__262;
  PyObject *__pyx_tuple__263;
  PyObject *__pyx_tuple__264;
  PyObject *__pyx_tuple__265;
  PyObject *__pyx_tuple__266;
  PyObject *__pyx_tuple__267;
  PyObject *__pyx_tuple__268;
  PyObject *__pyx_tuple__269;
  PyObject *__pyx_tuple__270;
  PyObject *__pyx_tuple__271;
  PyObject *__pyx_tuple__272;
  PyObject *__pyx_tuple__273;
  PyObject *__pyx_tuple__274;
  PyObject *__pyx_tuple__275;
  PyObject *__pyx_tuple__276;
  PyObject *__pyx_tuple__277;
  PyObject *__pyx_tuple__278;
  PyObject *__pyx_tuple__279;
  PyObject *__pyx_tuple__280;
  PyObject *__pyx_tuple__281;
  PyObject *__pyx_tuple__282;
  PyObject *__pyx_tuple__283;
  PyObject *__pyx_tuple__284;
  PyObject *__pyx_tuple__285;
  PyObject *__pyx_tuple__286;
  PyObject *__pyx_tuple__287;
  PyObject *__pyx_tuple__288;
  PyObject *__pyx_tuple__289;
  PyObject *__pyx_tuple__290;
  PyObject *__pyx_tuple__291;
  PyObject *__pyx_tuple__292;
  PyObject *__pyx_tuple__293;
  PyObject *__pyx_tuple__294;
  PyObject *__pyx_tuple__295;
  PyObject *__pyx_tuple__296;
  PyObject *__pyx_tuple__297;
  PyObject *__pyx_tuple__298;
  PyObject *__pyx_tuple__299;
  PyObject *__pyx_tuple__300;
  PyObject *__pyx_tuple__301;
  PyObject *__pyx_tuple__302;
  PyObject *__pyx_tuple__303;
  PyObject *__pyx_tuple__304;
  PyObject *__pyx_tuple__305;
  PyObject *__pyx_tuple__306;
  PyObject *__pyx_tuple__307;
  PyObject *__pyx_tuple__308;
  PyObject *__pyx_tuple__309;
  PyObject *__pyx_tuple__310;
  PyObject *__pyx_tuple__311;
  PyObject *__pyx_tuple__312;
  PyObject *__pyx_tuple__313;
  PyObject *__pyx_tuple__314;
  PyObject *__pyx_tuple__315;
  PyObject *__pyx_tuple__316;
  PyObject *__pyx_tuple__317;
  PyObject *__pyx_tuple__318;
  PyObject *__pyx_tuple__319;
  PyObject *__pyx_tuple__320;
  PyObject *__pyx_tuple__321;
  PyObject *__pyx_tuple__322;
  PyObject *__pyx_tuple__323;
  PyObject *__pyx_tuple__324;
  PyObject *__pyx_tuple__325;
  PyObject *__pyx_tuple__326;
  PyObject *__pyx_tuple__327;
  PyObject *__pyx_tuple__328;
  PyObject *__pyx_tuple__329;
  PyObject *__pyx_tuple__330;
  PyObject *__pyx_tuple__331;
  PyObject *__pyx_tuple__332;
  PyObject *__pyx_tuple__333;
  PyObject *__pyx_tuple__334;
  PyObject *__pyx_tuple__335;
  PyObject *__pyx_tuple__336;
  PyObject *__pyx_tuple__337;
  PyObject *__pyx_tuple__338;
  PyObject *__pyx_tuple__339;
  PyObject *__pyx_tuple__340;
  PyObject *__pyx_tuple__341;
  PyObject *__pyx_tuple__342;
  PyObject *__pyx_tuple__343;
  PyObject *__pyx_tuple__344;
  PyObject *__pyx_tuple__345;
  PyObject *__pyx_tuple__346;
  PyObject *__pyx_tuple__347;
  PyObject *__pyx_tuple__348;
  PyObject *__pyx_tuple__349;
  PyObject *__pyx_tuple__350;
  PyObject *__pyx_tuple__351;
  PyObject *__pyx_tuple__352;
  PyObject *__pyx_tuple__353;
  PyObject *__pyx_tuple__354;
  PyObject *__pyx_tuple__355;
  PyObject *__pyx_tuple__356;
  PyObject *__pyx_tuple__357;
  PyObject *__pyx_tuple__358;
  PyObject *__pyx_tuple__359;
  PyObject *__pyx_tuple__360;
  PyObject *__pyx_tuple__361;
  PyObject *__pyx_tuple__362;
  PyObject *__pyx_tuple__363;
  PyObject *__pyx_tuple__364;
  PyObject *__pyx_tuple__365;
  PyObject *__pyx_tuple__366;
  PyObject *__pyx_tuple__367;
  PyObject *__pyx_tuple__368;
  PyObject *__pyx_tuple__369;
  PyObject *__pyx_tuple__370;
  PyObject *__pyx_tuple__371;
  PyObject *__pyx_tuple__372;
  PyObject *__pyx_tuple__373;
  PyObject *__pyx_tuple__374;
  PyObject *__pyx_tuple__375;
  PyObject *__pyx_tuple__376;
  PyObject *__pyx_tuple__377;
  PyObject *__pyx_tuple__378;
  PyObject *__pyx_tuple__379;
  PyObject *__pyx_tuple__380;
  PyObject *__pyx_tuple__381;
  PyObject *__pyx_tuple__382;
  PyObject *__pyx_tuple__383;
  PyObject *__pyx_tuple__384;
  PyObject *__pyx_tuple__385;
  PyObject *__pyx_tuple__386;
  PyObject *__pyx_tuple__387;
  PyObject *__pyx_tuple__388;
  PyObject *__pyx_tuple__389;
  PyObject *__pyx_tuple__390;
  PyObject *__pyx_tuple__391;
  PyObject *__pyx_tuple__392;
  PyObject *__pyx_tuple__393;
  PyObject *__pyx_tuple__394;
  PyObject *__pyx_tuple__395;
  PyObject *__pyx_tuple__396;
  PyObject *__pyx_tuple__397;
  PyObject *__pyx_tuple__398;
  PyObject *__pyx_tuple__399;
  PyObject *__pyx_tuple__400;
  PyObject *__pyx_tuple__401;
  PyObject *__pyx_tuple__402;
  PyObject *__pyx_tuple__403;
  PyObject *__pyx_tuple__404;
  PyObject *__pyx_tuple__405;
  PyObject *__pyx_tuple__406;
  PyObject *__pyx_tuple__407;
  PyObject *__pyx_tuple__408;
  PyObject *__pyx_tuple__409;
  PyObject *__pyx_tuple__410;
  PyObject *__pyx_tuple__411;
  PyObject *__pyx_tuple__412;
  PyObject *__pyx_tuple__413;
  PyObject *__pyx_tuple__414;
  PyObject *__pyx_tuple__415;
  PyObject *__pyx_tuple__416;
  PyObject *__pyx_tuple__417;
  PyObject *__pyx_tuple__418;
  PyObject *__pyx_tuple__419;
  PyObject *__pyx_tuple__420;
  PyObject *__pyx_tuple__421;
  PyObject *__pyx_tuple__422;
  PyObject *__pyx_tuple__423;
  PyObject *__pyx_tuple__424;
  PyObject *__pyx_tuple__425;
  PyObject *__pyx_tuple__426;
  PyObject *__pyx_tuple__427;
  PyObject *__pyx_tuple__428;
  PyObject *__pyx_tuple__429;
  PyObject *__pyx_tuple__430;
  PyObject *__pyx_tuple__431;
  PyObject *__pyx_tuple__432;
  PyObject *__pyx_tuple__433;
  PyObject *__pyx_tuple__434;
  PyObject *__pyx_tuple__435;
  PyObject *__pyx_tuple__436;
  PyObject *__pyx_tuple__437;
  PyObject *__pyx_tuple__438;
  PyObject *__pyx_tuple__439;
  PyObject *__pyx_tuple__440;
  PyObject *__pyx_tuple__441;
  PyObject *__pyx_tuple__442;
  PyObject *__pyx_tuple__443;
  PyObject *__pyx_tuple__444;
  PyObject *__pyx_tuple__445;
  PyObject *__pyx_tuple__446;
  PyObject *__pyx_tuple__447;
  PyObject *__pyx_tuple__448;
  PyObject *__pyx_tuple__449;
  PyObject *__pyx_tuple__450;
  PyObject *__pyx_tuple__451;
} __pyx_mstate;

#if CYTHON_USE_MODULE_STATE
#ifdef __cplusplus
namespace {
  extern struct PyModuleDef __pyx_moduledef;
} /* anonymous namespace */
#else
static struct PyModuleDef __pyx_moduledef;
#endif

#define __pyx_mstate(o) ((__pyx_mstate *)__Pyx_PyModule_GetState(o))

#define __pyx_mstate_global (__pyx_mstate(PyState_FindModule(&__pyx_moduledef)))

#define __pyx_m (PyState_FindModule(&__pyx_moduledef))
#else
static __pyx_mstate __pyx_mstate_global_static =
#ifdef __cplusplus
    {};
#else
    {0};
#endif
static __pyx_mstate *__pyx_mstate_global = &__pyx_mstate_global_static;
#endif
/* #### Code section: module_state_clear ### */
#if CYTHON_USE_MODULE_STATE
static int __pyx_m_clear(PyObject *m) {
  __pyx_mstate *clear_module_state = __pyx_mstate(m);
  if (!clear_module_state) return 0;
  Py_CLEAR(clear_module_state->__pyx_d);
  Py_CLEAR(clear_module_state->__pyx_b);
  Py_CLEAR(clear_module_state->__pyx_cython_runtime);
  Py_CLEAR(clear_module_state->__pyx_empty_tuple);
  Py_CLEAR(clear_module_state->__pyx_empty_bytes);
  Py_CLEAR(clear_module_state->__pyx_empty_unicode);
  #ifdef __Pyx_CyFunction_USED
  Py_CLEAR(clear_module_state->__pyx_CyFunctionType);
  #endif
  #ifdef __Pyx_FusedFunction_USED
  Py_CLEAR(clear_module_state->__pyx_FusedFunctionType);
  #endif
  Py_CLEAR(clear_module_state->__pyx_n_u_CUDA_PYTHON_CUDA_PER_THREAD_DEFA);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Failed_to_dlopen);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuArray3DCreate_v2_not);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuArray3DGetDescriptor);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuArrayCreate_v2_not_fo);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuArrayDestroy_not_foun);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuArrayGetDescriptor_v2);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuArrayGetMemoryRequire);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuArrayGetPlane_not_fou);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuArrayGetSparsePropert);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuCoredumpGetAttribute);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuCoredumpGetAttributeG);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuCoredumpSetAttribute);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuCoredumpSetAttributeG);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuCtxAttach_not_found);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuCtxCreate_v2_not_foun);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuCtxCreate_v3_not_foun);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuCtxDestroy_v2_not_fou);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuCtxDetach_not_found);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuCtxDisablePeerAccess);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuCtxEnablePeerAccess_n);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuCtxFromGreenCtx_not_f);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuCtxGetApiVersion_not);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuCtxGetCacheConfig_not);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuCtxGetCurrent_not_fou);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuCtxGetDevResource_not);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuCtxGetDevice_not_foun);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuCtxGetExecAffinity_no);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuCtxGetFlags_not_found);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuCtxGetId_not_found);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuCtxGetLimit_not_found);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuCtxGetSharedMemConfig);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuCtxGetStreamPriorityR);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuCtxPopCurrent_v2_not);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuCtxPushCurrent_v2_not);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuCtxResetPersistingL2C);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuCtxSetCacheConfig_not);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuCtxSetCurrent_not_fou);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuCtxSetFlags_not_found);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuCtxSetLimit_not_found);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuCtxSetSharedMemConfig);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuCtxSynchronize_not_fo);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuDestroyExternalMemory);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuDestroyExternalSemaph);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuDevResourceGenerateDe);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuDevSmResourceSplitByC);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuDeviceCanAccessPeer_n);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuDeviceComputeCapabili);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuDeviceGetAttribute_no);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuDeviceGetByPCIBusId_n);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuDeviceGetCount_not_fo);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuDeviceGetDefaultMemPo);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuDeviceGetDevResource);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuDeviceGetExecAffinity);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuDeviceGetGraphMemAttr);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuDeviceGetLuid_not_fou);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuDeviceGetMemPool_not);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuDeviceGetName_not_fou);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuDeviceGetNvSciSyncAtt);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuDeviceGetP2PAttribute);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuDeviceGetPCIBusId_not);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuDeviceGetProperties_n);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuDeviceGetTexture1DLin);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuDeviceGetUuid_not_fou);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuDeviceGetUuid_v2_not);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuDeviceGet_not_found);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuDeviceGraphMemTrim_no);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuDevicePrimaryCtxGetSt);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuDevicePrimaryCtxRelea);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuDevicePrimaryCtxReset);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuDevicePrimaryCtxRetai);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuDevicePrimaryCtxSetFl);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuDeviceRegisterAsyncNo);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuDeviceSetGraphMemAttr);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuDeviceSetMemPool_not);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuDeviceTotalMem_v2_not);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuDeviceUnregisterAsync);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuDriverGetVersion_not);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuEGLStreamConsumerAcqu);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuEGLStreamConsumerConn);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuEGLStreamConsumerConn_2);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuEGLStreamConsumerDisc);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuEGLStreamConsumerRele);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuEGLStreamProducerConn);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuEGLStreamProducerDisc);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuEGLStreamProducerPres);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuEGLStreamProducerRetu);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuEventCreateFromEGLSyn);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuEventCreate_not_found);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuEventDestroy_v2_not_f);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuEventElapsedTime_not);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuEventQuery_not_found);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuEventRecordWithFlags);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuEventRecord_not_found);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuEventSynchronize_not);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuExternalMemoryGetMapp);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuExternalMemoryGetMapp_2);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuFlushGPUDirectRDMAWri);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuFuncGetAttribute_not);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuFuncGetModule_not_fou);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuFuncGetName_not_found);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuFuncGetParamInfo_not);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuFuncIsLoaded_not_foun);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuFuncLoad_not_found);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuFuncSetAttribute_not);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuFuncSetBlockShape_not);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuFuncSetCacheConfig_no);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuFuncSetSharedMemConfi);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuFuncSetSharedSize_not);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuGLGetDevices_v2_not_f);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuGetErrorName_not_foun);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuGetErrorString_not_fo);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuGetExportTable_not_fo);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuGetProcAddress_v2_not);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuGraphAddBatchMemOpNod);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuGraphAddChildGraphNod);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuGraphAddDependencies);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuGraphAddDependencies_2);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuGraphAddEmptyNode_not);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuGraphAddEventRecordNo);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuGraphAddEventWaitNode);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuGraphAddExternalSemap);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuGraphAddExternalSemap_2);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuGraphAddHostNode_not);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuGraphAddKernelNode_v2);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuGraphAddMemAllocNode);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuGraphAddMemFreeNode_n);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuGraphAddMemcpyNode_no);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuGraphAddMemsetNode_no);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuGraphAddNode_not_foun);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuGraphAddNode_v2_not_f);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuGraphBatchMemOpNodeGe);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuGraphBatchMemOpNodeSe);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuGraphChildGraphNodeGe);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuGraphClone_not_found);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuGraphConditionalHandl);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuGraphCreate_not_found);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuGraphDebugDotPrint_no);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuGraphDestroyNode_not);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuGraphDestroy_not_foun);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuGraphEventRecordNodeG);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuGraphEventRecordNodeS);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuGraphEventWaitNodeGet);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuGraphEventWaitNodeSet);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuGraphExecBatchMemOpNo);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuGraphExecChildGraphNo);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuGraphExecDestroy_not);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuGraphExecEventRecordN);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuGraphExecEventWaitNod);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuGraphExecExternalSema);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuGraphExecExternalSema_2);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuGraphExecGetFlags_not);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuGraphExecHostNodeSetP);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuGraphExecKernelNodeSe);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuGraphExecMemcpyNodeSe);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuGraphExecMemsetNodeSe);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuGraphExecNodeSetParam);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuGraphExecUpdate_v2_no);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuGraphExternalSemaphor);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuGraphExternalSemaphor_2);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuGraphExternalSemaphor_3);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuGraphExternalSemaphor_4);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuGraphGetEdges_not_fou);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuGraphGetEdges_v2_not);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuGraphGetNodes_not_fou);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuGraphGetRootNodes_not);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuGraphHostNodeGetParam);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuGraphHostNodeSetParam);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuGraphInstantiateWithF);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuGraphInstantiateWithP);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuGraphKernelNodeCopyAt);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuGraphKernelNodeGetAtt);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuGraphKernelNodeGetPar);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuGraphKernelNodeSetAtt);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuGraphKernelNodeSetPar);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuGraphLaunch_not_found);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuGraphMemAllocNodeGetP);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuGraphMemFreeNodeGetPa);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuGraphMemcpyNodeGetPar);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuGraphMemcpyNodeSetPar);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuGraphMemsetNodeGetPar);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuGraphMemsetNodeSetPar);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuGraphNodeFindInClone);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuGraphNodeGetDependenc);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuGraphNodeGetDependenc_2);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuGraphNodeGetDependent);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuGraphNodeGetDependent_2);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuGraphNodeGetEnabled_n);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuGraphNodeGetType_not);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuGraphNodeSetEnabled_n);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuGraphNodeSetParams_no);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuGraphReleaseUserObjec);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuGraphRemoveDependenci);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuGraphRemoveDependenci_2);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuGraphRetainUserObject);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuGraphUpload_not_found);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuGraphicsEGLRegisterIm);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuGraphicsGLRegisterBuf);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuGraphicsGLRegisterIma);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuGraphicsMapResources);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuGraphicsResourceGetMa);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuGraphicsResourceGetMa_2);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuGraphicsResourceGetMa_3);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuGraphicsResourceSetMa);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuGraphicsSubResourceGe);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuGraphicsUnmapResource);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuGraphicsUnregisterRes);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuGraphicsVDPAURegister);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuGraphicsVDPAURegister_2);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuGreenCtxCreate_not_fo);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuGreenCtxDestroy_not_f);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuGreenCtxGetDevResourc);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuGreenCtxRecordEvent_n);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuGreenCtxWaitEvent_not);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuImportExternalMemory);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuImportExternalSemapho);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuInit_not_found);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuIpcCloseMemHandle_not);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuIpcGetEventHandle_not);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuIpcGetMemHandle_not_f);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuIpcOpenEventHandle_no);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuIpcOpenMemHandle_v2_n);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuKernelGetAttribute_no);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuKernelGetFunction_not);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuKernelGetName_not_fou);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuKernelGetParamInfo_no);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuKernelSetAttribute_no);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuKernelSetCacheConfig);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuLaunchCooperativeKern);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuLaunchCooperativeKern_2);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuLaunchGridAsync_not_f);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuLaunchGrid_not_found);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuLaunchHostFunc_not_fo);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuLaunchKernelEx_not_fo);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuLaunchKernel_not_foun);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuLaunch_not_found);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuLibraryEnumerateKerne);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuLibraryGetGlobal_not);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuLibraryGetKernelCount);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuLibraryGetKernel_not);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuLibraryGetManaged_not);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuLibraryGetModule_not);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuLibraryGetUnifiedFunc);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuLibraryLoadData_not_f);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuLibraryLoadFromFile_n);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuLibraryUnload_not_fou);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuLinkAddData_v2_not_fo);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuLinkAddFile_v2_not_fo);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuLinkComplete_not_foun);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuLinkCreate_v2_not_fou);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuLinkDestroy_not_found);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuMemAddressFree_not_fo);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuMemAddressReserve_not);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuMemAdvise_not_found);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuMemAdvise_v2_not_foun);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuMemAllocAsync_not_fou);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuMemAllocFromPoolAsync);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuMemAllocHost_v2_not_f);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuMemAllocManaged_not_f);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuMemAllocPitch_v2_not);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuMemAlloc_v2_not_found);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuMemCreate_not_found);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuMemExportToShareableH);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuMemFreeAsync_not_foun);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuMemFreeHost_not_found);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuMemFree_v2_not_found);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuMemGetAccess_not_foun);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuMemGetAddressRange_v2);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuMemGetAllocationGranu);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuMemGetAllocationPrope);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuMemGetHandleForAddres);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuMemGetInfo_v2_not_fou);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuMemHostAlloc_not_foun);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuMemHostGetDevicePoint);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuMemHostGetFlags_not_f);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuMemHostRegister_v2_no);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuMemHostUnregister_not);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuMemImportFromShareabl);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuMemMapArrayAsync_not);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuMemMap_not_found);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuMemPoolCreate_not_fou);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuMemPoolDestroy_not_fo);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuMemPoolExportPointer);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuMemPoolExportToSharea);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuMemPoolGetAccess_not);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuMemPoolGetAttribute_n);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuMemPoolImportFromShar);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuMemPoolImportPointer);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuMemPoolSetAccess_not);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuMemPoolSetAttribute_n);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuMemPoolTrimTo_not_fou);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuMemPrefetchAsync_not);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuMemPrefetchAsync_v2_n);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuMemRangeGetAttribute);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuMemRangeGetAttributes);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuMemRelease_not_found);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuMemRetainAllocationHa);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuMemSetAccess_not_foun);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuMemUnmap_not_found);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuMemcpy2DAsync_v2_not);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuMemcpy2DUnaligned_v2);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuMemcpy2D_v2_not_found);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuMemcpy3DAsync_v2_not);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuMemcpy3DPeerAsync_not);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuMemcpy3DPeer_not_foun);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuMemcpy3D_v2_not_found);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuMemcpyAsync_not_found);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuMemcpyAtoA_v2_not_fou);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuMemcpyAtoD_v2_not_fou);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuMemcpyAtoHAsync_v2_no);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuMemcpyAtoH_v2_not_fou);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuMemcpyDtoA_v2_not_fou);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuMemcpyDtoDAsync_v2_no);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuMemcpyDtoD_v2_not_fou);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuMemcpyDtoHAsync_v2_no);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuMemcpyDtoH_v2_not_fou);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuMemcpyHtoAAsync_v2_no);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuMemcpyHtoA_v2_not_fou);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuMemcpyHtoDAsync_v2_no);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuMemcpyHtoD_v2_not_fou);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuMemcpyPeerAsync_not_f);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuMemcpyPeer_not_found);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuMemcpy_not_found);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuMemsetD16Async_not_fo);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuMemsetD16_v2_not_foun);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuMemsetD2D16Async_not);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuMemsetD2D16_v2_not_fo);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuMemsetD2D32Async_not);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuMemsetD2D32_v2_not_fo);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuMemsetD2D8Async_not_f);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuMemsetD2D8_v2_not_fou);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuMemsetD32Async_not_fo);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuMemsetD32_v2_not_foun);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuMemsetD8Async_not_fou);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuMemsetD8_v2_not_found);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuMipmappedArrayCreate);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuMipmappedArrayDestroy);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuMipmappedArrayGetLeve);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuMipmappedArrayGetMemo);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuMipmappedArrayGetSpar);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuModuleEnumerateFuncti);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuModuleGetFunctionCoun);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuModuleGetFunction_not);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuModuleGetGlobal_v2_no);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuModuleGetLoadingMode);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuModuleGetSurfRef_not);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuModuleGetTexRef_not_f);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuModuleLoadDataEx_not);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuModuleLoadData_not_fo);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuModuleLoadFatBinary_n);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuModuleLoad_not_found);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuModuleUnload_not_foun);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuMulticastAddDevice_no);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuMulticastBindAddr_not);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuMulticastBindMem_not);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuMulticastCreate_not_f);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuMulticastGetGranulari);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuMulticastUnbind_not_f);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuOccupancyAvailableDyn);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuOccupancyMaxActiveBlo);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuOccupancyMaxActiveBlo_2);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuOccupancyMaxActiveClu);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuOccupancyMaxPotential);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuOccupancyMaxPotential_2);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuOccupancyMaxPotential_3);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuParamSetSize_not_foun);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuParamSetTexRef_not_fo);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuParamSetf_not_found);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuParamSeti_not_found);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuParamSetv_not_found);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuPointerGetAttribute_n);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuPointerGetAttributes);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuPointerSetAttribute_n);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuProfilerStart_not_fou);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuProfilerStop_not_foun);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuSignalExternalSemapho);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuStreamAddCallback_not);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuStreamAttachMemAsync);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuStreamBatchMemOp_v2_n);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuStreamBeginCaptureToG);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuStreamBeginCapture_v2);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuStreamCopyAttributes);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuStreamCreateWithPrior);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuStreamCreate_not_foun);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuStreamDestroy_v2_not);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuStreamEndCapture_not);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuStreamGetAttribute_no);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuStreamGetCaptureInfo);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuStreamGetCaptureInfo_2);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuStreamGetCtx_not_foun);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuStreamGetFlags_not_fo);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuStreamGetGreenCtx_not);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuStreamGetId_not_found);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuStreamGetPriority_not);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuStreamIsCapturing_not);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuStreamQuery_not_found);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuStreamSetAttribute_no);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuStreamSynchronize_not);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuStreamUpdateCaptureDe);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuStreamUpdateCaptureDe_2);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuStreamWaitEvent_not_f);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuStreamWaitValue32_v2);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuStreamWaitValue64_v2);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuStreamWriteValue32_v2);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuStreamWriteValue64_v2);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuSurfObjectCreate_not);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuSurfObjectDestroy_not);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuSurfObjectGetResource);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuSurfRefGetArray_not_f);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuSurfRefSetArray_not_f);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuTensorMapEncodeIm2col);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuTensorMapEncodeTiled);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuTensorMapReplaceAddre);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuTexObjectCreate_not_f);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuTexObjectDestroy_not);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuTexObjectGetResourceD);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuTexObjectGetResourceV);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuTexObjectGetTextureDe);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuTexRefCreate_not_foun);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuTexRefDestroy_not_fou);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuTexRefGetAddressMode);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuTexRefGetAddress_v2_n);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuTexRefGetArray_not_fo);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuTexRefGetBorderColor);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuTexRefGetFilterMode_n);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuTexRefGetFlags_not_fo);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuTexRefGetFormat_not_f);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuTexRefGetMaxAnisotrop);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuTexRefGetMipmapFilter);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuTexRefGetMipmapLevelB);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuTexRefGetMipmapLevelC);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuTexRefGetMipmappedArr);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuTexRefSetAddress2D_v3);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuTexRefSetAddressMode);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuTexRefSetAddress_v2_n);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuTexRefSetArray_not_fo);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuTexRefSetBorderColor);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuTexRefSetFilterMode_n);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuTexRefSetFlags_not_fo);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuTexRefSetFormat_not_f);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuTexRefSetMaxAnisotrop);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuTexRefSetMipmapFilter);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuTexRefSetMipmapLevelB);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuTexRefSetMipmapLevelC);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuTexRefSetMipmappedArr);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuThreadExchangeStreamC);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuUserObjectCreate_not);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuUserObjectRelease_not);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuUserObjectRetain_not);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuVDPAUCtxCreate_v2_not);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuVDPAUGetDevice_not_fo);
  Py_CLEAR(clear_module_state->__pyx_kp_u_Function_cuWaitExternalSemaphore);
  Py_CLEAR(clear_module_state->__pyx_n_s_RuntimeError);
  Py_CLEAR(clear_module_state->__pyx_n_s__452);
  Py_CLEAR(clear_module_state->__pyx_n_s__453);
  Py_CLEAR(clear_module_state->__pyx_n_s_cline_in_traceback);
  Py_CLEAR(clear_module_state->__pyx_n_s_default);
  Py_CLEAR(clear_module_state->__pyx_n_s_encoding);
  Py_CLEAR(clear_module_state->__pyx_n_s_getenv);
  Py_CLEAR(clear_module_state->__pyx_n_s_import);
  Py_CLEAR(clear_module_state->__pyx_n_s_initializing);
  Py_CLEAR(clear_module_state->__pyx_kp_u_libcuda_so_1);
  Py_CLEAR(clear_module_state->__pyx_n_s_main);
  Py_CLEAR(clear_module_state->__pyx_n_s_maxsize);
  Py_CLEAR(clear_module_state->__pyx_n_s_name);
  Py_CLEAR(clear_module_state->__pyx_n_s_os);
  Py_CLEAR(clear_module_state->__pyx_n_s_spec);
  Py_CLEAR(clear_module_state->__pyx_n_s_sys);
  Py_CLEAR(clear_module_state->__pyx_n_s_test);
  Py_CLEAR(clear_module_state->__pyx_kp_u_utf_8);
  Py_CLEAR(clear_module_state->__pyx_int_0);
  Py_CLEAR(clear_module_state->__pyx_int_4294967296);
  Py_CLEAR(clear_module_state->__pyx_tuple_);
  Py_CLEAR(clear_module_state->__pyx_tuple__2);
  Py_CLEAR(clear_module_state->__pyx_tuple__3);
  Py_CLEAR(clear_module_state->__pyx_tuple__4);
  Py_CLEAR(clear_module_state->__pyx_tuple__5);
  Py_CLEAR(clear_module_state->__pyx_tuple__6);
  Py_CLEAR(clear_module_state->__pyx_tuple__7);
  Py_CLEAR(clear_module_state->__pyx_tuple__8);
  Py_CLEAR(clear_module_state->__pyx_tuple__9);
  Py_CLEAR(clear_module_state->__pyx_tuple__10);
  Py_CLEAR(clear_module_state->__pyx_tuple__11);
  Py_CLEAR(clear_module_state->__pyx_tuple__12);
  Py_CLEAR(clear_module_state->__pyx_tuple__13);
  Py_CLEAR(clear_module_state->__pyx_tuple__14);
  Py_CLEAR(clear_module_state->__pyx_tuple__15);
  Py_CLEAR(clear_module_state->__pyx_tuple__16);
  Py_CLEAR(clear_module_state->__pyx_tuple__17);
  Py_CLEAR(clear_module_state->__pyx_tuple__18);
  Py_CLEAR(clear_module_state->__pyx_tuple__19);
  Py_CLEAR(clear_module_state->__pyx_tuple__20);
  Py_CLEAR(clear_module_state->__pyx_tuple__21);
  Py_CLEAR(clear_module_state->__pyx_tuple__22);
  Py_CLEAR(clear_module_state->__pyx_tuple__23);
  Py_CLEAR(clear_module_state->__pyx_tuple__24);
  Py_CLEAR(clear_module_state->__pyx_tuple__25);
  Py_CLEAR(clear_module_state->__pyx_tuple__26);
  Py_CLEAR(clear_module_state->__pyx_tuple__27);
  Py_CLEAR(clear_module_state->__pyx_tuple__28);
  Py_CLEAR(clear_module_state->__pyx_tuple__29);
  Py_CLEAR(clear_module_state->__pyx_tuple__30);
  Py_CLEAR(clear_module_state->__pyx_tuple__31);
  Py_CLEAR(clear_module_state->__pyx_tuple__32);
  Py_CLEAR(clear_module_state->__pyx_tuple__33);
  Py_CLEAR(clear_module_state->__pyx_tuple__34);
  Py_CLEAR(clear_module_state->__pyx_tuple__35);
  Py_CLEAR(clear_module_state->__pyx_tuple__36);
  Py_CLEAR(clear_module_state->__pyx_tuple__37);
  Py_CLEAR(clear_module_state->__pyx_tuple__38);
  Py_CLEAR(clear_module_state->__pyx_tuple__39);
  Py_CLEAR(clear_module_state->__pyx_tuple__40);
  Py_CLEAR(clear_module_state->__pyx_tuple__41);
  Py_CLEAR(clear_module_state->__pyx_tuple__42);
  Py_CLEAR(clear_module_state->__pyx_tuple__43);
  Py_CLEAR(clear_module_state->__pyx_tuple__44);
  Py_CLEAR(clear_module_state->__pyx_tuple__45);
  Py_CLEAR(clear_module_state->__pyx_tuple__46);
  Py_CLEAR(clear_module_state->__pyx_tuple__47);
  Py_CLEAR(clear_module_state->__pyx_tuple__48);
  Py_CLEAR(clear_module_state->__pyx_tuple__49);
  Py_CLEAR(clear_module_state->__pyx_tuple__50);
  Py_CLEAR(clear_module_state->__pyx_tuple__51);
  Py_CLEAR(clear_module_state->__pyx_tuple__52);
  Py_CLEAR(clear_module_state->__pyx_tuple__53);
  Py_CLEAR(clear_module_state->__pyx_tuple__54);
  Py_CLEAR(clear_module_state->__pyx_tuple__55);
  Py_CLEAR(clear_module_state->__pyx_tuple__56);
  Py_CLEAR(clear_module_state->__pyx_tuple__57);
  Py_CLEAR(clear_module_state->__pyx_tuple__58);
  Py_CLEAR(clear_module_state->__pyx_tuple__59);
  Py_CLEAR(clear_module_state->__pyx_tuple__60);
  Py_CLEAR(clear_module_state->__pyx_tuple__61);
  Py_CLEAR(clear_module_state->__pyx_tuple__62);
  Py_CLEAR(clear_module_state->__pyx_tuple__63);
  Py_CLEAR(clear_module_state->__pyx_tuple__64);
  Py_CLEAR(clear_module_state->__pyx_tuple__65);
  Py_CLEAR(clear_module_state->__pyx_tuple__66);
  Py_CLEAR(clear_module_state->__pyx_tuple__67);
  Py_CLEAR(clear_module_state->__pyx_tuple__68);
  Py_CLEAR(clear_module_state->__pyx_tuple__69);
  Py_CLEAR(clear_module_state->__pyx_tuple__70);
  Py_CLEAR(clear_module_state->__pyx_tuple__71);
  Py_CLEAR(clear_module_state->__pyx_tuple__72);
  Py_CLEAR(clear_module_state->__pyx_tuple__73);
  Py_CLEAR(clear_module_state->__pyx_tuple__74);
  Py_CLEAR(clear_module_state->__pyx_tuple__75);
  Py_CLEAR(clear_module_state->__pyx_tuple__76);
  Py_CLEAR(clear_module_state->__pyx_tuple__77);
  Py_CLEAR(clear_module_state->__pyx_tuple__78);
  Py_CLEAR(clear_module_state->__pyx_tuple__79);
  Py_CLEAR(clear_module_state->__pyx_tuple__80);
  Py_CLEAR(clear_module_state->__pyx_tuple__81);
  Py_CLEAR(clear_module_state->__pyx_tuple__82);
  Py_CLEAR(clear_module_state->__pyx_tuple__83);
  Py_CLEAR(clear_module_state->__pyx_tuple__84);
  Py_CLEAR(clear_module_state->__pyx_tuple__85);
  Py_CLEAR(clear_module_state->__pyx_tuple__86);
  Py_CLEAR(clear_module_state->__pyx_tuple__87);
  Py_CLEAR(clear_module_state->__pyx_tuple__88);
  Py_CLEAR(clear_module_state->__pyx_tuple__89);
  Py_CLEAR(clear_module_state->__pyx_tuple__90);
  Py_CLEAR(clear_module_state->__pyx_tuple__91);
  Py_CLEAR(clear_module_state->__pyx_tuple__92);
  Py_CLEAR(clear_module_state->__pyx_tuple__93);
  Py_CLEAR(clear_module_state->__pyx_tuple__94);
  Py_CLEAR(clear_module_state->__pyx_tuple__95);
  Py_CLEAR(clear_module_state->__pyx_tuple__96);
  Py_CLEAR(clear_module_state->__pyx_tuple__97);
  Py_CLEAR(clear_module_state->__pyx_tuple__98);
  Py_CLEAR(clear_module_state->__pyx_tuple__99);
  Py_CLEAR(clear_module_state->__pyx_tuple__100);
  Py_CLEAR(clear_module_state->__pyx_tuple__101);
  Py_CLEAR(clear_module_state->__pyx_tuple__102);
  Py_CLEAR(clear_module_state->__pyx_tuple__103);
  Py_CLEAR(clear_module_state->__pyx_tuple__104);
  Py_CLEAR(clear_module_state->__pyx_tuple__105);
  Py_CLEAR(clear_module_state->__pyx_tuple__106);
  Py_CLEAR(clear_module_state->__pyx_tuple__107);
  Py_CLEAR(clear_module_state->__pyx_tuple__108);
  Py_CLEAR(clear_module_state->__pyx_tuple__109);
  Py_CLEAR(clear_module_state->__pyx_tuple__110);
  Py_CLEAR(clear_module_state->__pyx_tuple__111);
  Py_CLEAR(clear_module_state->__pyx_tuple__112);
  Py_CLEAR(clear_module_state->__pyx_tuple__113);
  Py_CLEAR(clear_module_state->__pyx_tuple__114);
  Py_CLEAR(clear_module_state->__pyx_tuple__115);
  Py_CLEAR(clear_module_state->__pyx_tuple__116);
  Py_CLEAR(clear_module_state->__pyx_tuple__117);
  Py_CLEAR(clear_module_state->__pyx_tuple__118);
  Py_CLEAR(clear_module_state->__pyx_tuple__119);
  Py_CLEAR(clear_module_state->__pyx_tuple__120);
  Py_CLEAR(clear_module_state->__pyx_tuple__121);
  Py_CLEAR(clear_module_state->__pyx_tuple__122);
  Py_CLEAR(clear_module_state->__pyx_tuple__123);
  Py_CLEAR(clear_module_state->__pyx_tuple__124);
  Py_CLEAR(clear_module_state->__pyx_tuple__125);
  Py_CLEAR(clear_module_state->__pyx_tuple__126);
  Py_CLEAR(clear_module_state->__pyx_tuple__127);
  Py_CLEAR(clear_module_state->__pyx_tuple__128);
  Py_CLEAR(clear_module_state->__pyx_tuple__129);
  Py_CLEAR(clear_module_state->__pyx_tuple__130);
  Py_CLEAR(clear_module_state->__pyx_tuple__131);
  Py_CLEAR(clear_module_state->__pyx_tuple__132);
  Py_CLEAR(clear_module_state->__pyx_tuple__133);
  Py_CLEAR(clear_module_state->__pyx_tuple__134);
  Py_CLEAR(clear_module_state->__pyx_tuple__135);
  Py_CLEAR(clear_module_state->__pyx_tuple__136);
  Py_CLEAR(clear_module_state->__pyx_tuple__137);
  Py_CLEAR(clear_module_state->__pyx_tuple__138);
  Py_CLEAR(clear_module_state->__pyx_tuple__139);
  Py_CLEAR(clear_module_state->__pyx_tuple__140);
  Py_CLEAR(clear_module_state->__pyx_tuple__141);
  Py_CLEAR(clear_module_state->__pyx_tuple__142);
  Py_CLEAR(clear_module_state->__pyx_tuple__143);
  Py_CLEAR(clear_module_state->__pyx_tuple__144);
  Py_CLEAR(clear_module_state->__pyx_tuple__145);
  Py_CLEAR(clear_module_state->__pyx_tuple__146);
  Py_CLEAR(clear_module_state->__pyx_tuple__147);
  Py_CLEAR(clear_module_state->__pyx_tuple__148);
  Py_CLEAR(clear_module_state->__pyx_tuple__149);
  Py_CLEAR(clear_module_state->__pyx_tuple__150);
  Py_CLEAR(clear_module_state->__pyx_tuple__151);
  Py_CLEAR(clear_module_state->__pyx_tuple__152);
  Py_CLEAR(clear_module_state->__pyx_tuple__153);
  Py_CLEAR(clear_module_state->__pyx_tuple__154);
  Py_CLEAR(clear_module_state->__pyx_tuple__155);
  Py_CLEAR(clear_module_state->__pyx_tuple__156);
  Py_CLEAR(clear_module_state->__pyx_tuple__157);
  Py_CLEAR(clear_module_state->__pyx_tuple__158);
  Py_CLEAR(clear_module_state->__pyx_tuple__159);
  Py_CLEAR(clear_module_state->__pyx_tuple__160);
  Py_CLEAR(clear_module_state->__pyx_tuple__161);
  Py_CLEAR(clear_module_state->__pyx_tuple__162);
  Py_CLEAR(clear_module_state->__pyx_tuple__163);
  Py_CLEAR(clear_module_state->__pyx_tuple__164);
  Py_CLEAR(clear_module_state->__pyx_tuple__165);
  Py_CLEAR(clear_module_state->__pyx_tuple__166);
  Py_CLEAR(clear_module_state->__pyx_tuple__167);
  Py_CLEAR(clear_module_state->__pyx_tuple__168);
  Py_CLEAR(clear_module_state->__pyx_tuple__169);
  Py_CLEAR(clear_module_state->__pyx_tuple__170);
  Py_CLEAR(clear_module_state->__pyx_tuple__171);
  Py_CLEAR(clear_module_state->__pyx_tuple__172);
  Py_CLEAR(clear_module_state->__pyx_tuple__173);
  Py_CLEAR(clear_module_state->__pyx_tuple__174);
  Py_CLEAR(clear_module_state->__pyx_tuple__175);
  Py_CLEAR(clear_module_state->__pyx_tuple__176);
  Py_CLEAR(clear_module_state->__pyx_tuple__177);
  Py_CLEAR(clear_module_state->__pyx_tuple__178);
  Py_CLEAR(clear_module_state->__pyx_tuple__179);
  Py_CLEAR(clear_module_state->__pyx_tuple__180);
  Py_CLEAR(clear_module_state->__pyx_tuple__181);
  Py_CLEAR(clear_module_state->__pyx_tuple__182);
  Py_CLEAR(clear_module_state->__pyx_tuple__183);
  Py_CLEAR(clear_module_state->__pyx_tuple__184);
  Py_CLEAR(clear_module_state->__pyx_tuple__185);
  Py_CLEAR(clear_module_state->__pyx_tuple__186);
  Py_CLEAR(clear_module_state->__pyx_tuple__187);
  Py_CLEAR(clear_module_state->__pyx_tuple__188);
  Py_CLEAR(clear_module_state->__pyx_tuple__189);
  Py_CLEAR(clear_module_state->__pyx_tuple__190);
  Py_CLEAR(clear_module_state->__pyx_tuple__191);
  Py_CLEAR(clear_module_state->__pyx_tuple__192);
  Py_CLEAR(clear_module_state->__pyx_tuple__193);
  Py_CLEAR(clear_module_state->__pyx_tuple__194);
  Py_CLEAR(clear_module_state->__pyx_tuple__195);
  Py_CLEAR(clear_module_state->__pyx_tuple__196);
  Py_CLEAR(clear_module_state->__pyx_tuple__197);
  Py_CLEAR(clear_module_state->__pyx_tuple__198);
  Py_CLEAR(clear_module_state->__pyx_tuple__199);
  Py_CLEAR(clear_module_state->__pyx_tuple__200);
  Py_CLEAR(clear_module_state->__pyx_tuple__201);
  Py_CLEAR(clear_module_state->__pyx_tuple__202);
  Py_CLEAR(clear_module_state->__pyx_tuple__203);
  Py_CLEAR(clear_module_state->__pyx_tuple__204);
  Py_CLEAR(clear_module_state->__pyx_tuple__205);
  Py_CLEAR(clear_module_state->__pyx_tuple__206);
  Py_CLEAR(clear_module_state->__pyx_tuple__207);
  Py_CLEAR(clear_module_state->__pyx_tuple__208);
  Py_CLEAR(clear_module_state->__pyx_tuple__209);
  Py_CLEAR(clear_module_state->__pyx_tuple__210);
  Py_CLEAR(clear_module_state->__pyx_tuple__211);
  Py_CLEAR(clear_module_state->__pyx_tuple__212);
  Py_CLEAR(clear_module_state->__pyx_tuple__213);
  Py_CLEAR(clear_module_state->__pyx_tuple__214);
  Py_CLEAR(clear_module_state->__pyx_tuple__215);
  Py_CLEAR(clear_module_state->__pyx_tuple__216);
  Py_CLEAR(clear_module_state->__pyx_tuple__217);
  Py_CLEAR(clear_module_state->__pyx_tuple__218);
  Py_CLEAR(clear_module_state->__pyx_tuple__219);
  Py_CLEAR(clear_module_state->__pyx_tuple__220);
  Py_CLEAR(clear_module_state->__pyx_tuple__221);
  Py_CLEAR(clear_module_state->__pyx_tuple__222);
  Py_CLEAR(clear_module_state->__pyx_tuple__223);
  Py_CLEAR(clear_module_state->__pyx_tuple__224);
  Py_CLEAR(clear_module_state->__pyx_tuple__225);
  Py_CLEAR(clear_module_state->__pyx_tuple__226);
  Py_CLEAR(clear_module_state->__pyx_tuple__227);
  Py_CLEAR(clear_module_state->__pyx_tuple__228);
  Py_CLEAR(clear_module_state->__pyx_tuple__229);
  Py_CLEAR(clear_module_state->__pyx_tuple__230);
  Py_CLEAR(clear_module_state->__pyx_tuple__231);
  Py_CLEAR(clear_module_state->__pyx_tuple__232);
  Py_CLEAR(clear_module_state->__pyx_tuple__233);
  Py_CLEAR(clear_module_state->__pyx_tuple__234);
  Py_CLEAR(clear_module_state->__pyx_tuple__235);
  Py_CLEAR(clear_module_state->__pyx_tuple__236);
  Py_CLEAR(clear_module_state->__pyx_tuple__237);
  Py_CLEAR(clear_module_state->__pyx_tuple__238);
  Py_CLEAR(clear_module_state->__pyx_tuple__239);
  Py_CLEAR(clear_module_state->__pyx_tuple__240);
  Py_CLEAR(clear_module_state->__pyx_tuple__241);
  Py_CLEAR(clear_module_state->__pyx_tuple__242);
  Py_CLEAR(clear_module_state->__pyx_tuple__243);
  Py_CLEAR(clear_module_state->__pyx_tuple__244);
  Py_CLEAR(clear_module_state->__pyx_tuple__245);
  Py_CLEAR(clear_module_state->__pyx_tuple__246);
  Py_CLEAR(clear_module_state->__pyx_tuple__247);
  Py_CLEAR(clear_module_state->__pyx_tuple__248);
  Py_CLEAR(clear_module_state->__pyx_tuple__249);
  Py_CLEAR(clear_module_state->__pyx_tuple__250);
  Py_CLEAR(clear_module_state->__pyx_tuple__251);
  Py_CLEAR(clear_module_state->__pyx_tuple__252);
  Py_CLEAR(clear_module_state->__pyx_tuple__253);
  Py_CLEAR(clear_module_state->__pyx_tuple__254);
  Py_CLEAR(clear_module_state->__pyx_tuple__255);
  Py_CLEAR(clear_module_state->__pyx_tuple__256);
  Py_CLEAR(clear_module_state->__pyx_tuple__257);
  Py_CLEAR(clear_module_state->__pyx_tuple__258);
  Py_CLEAR(clear_module_state->__pyx_tuple__259);
  Py_CLEAR(clear_module_state->__pyx_tuple__260);
  Py_CLEAR(clear_module_state->__pyx_tuple__261);
  Py_CLEAR(clear_module_state->__pyx_tuple__262);
  Py_CLEAR(clear_module_state->__pyx_tuple__263);
  Py_CLEAR(clear_module_state->__pyx_tuple__264);
  Py_CLEAR(clear_module_state->__pyx_tuple__265);
  Py_CLEAR(clear_module_state->__pyx_tuple__266);
  Py_CLEAR(clear_module_state->__pyx_tuple__267);
  Py_CLEAR(clear_module_state->__pyx_tuple__268);
  Py_CLEAR(clear_module_state->__pyx_tuple__269);
  Py_CLEAR(clear_module_state->__pyx_tuple__270);
  Py_CLEAR(clear_module_state->__pyx_tuple__271);
  Py_CLEAR(clear_module_state->__pyx_tuple__272);
  Py_CLEAR(clear_module_state->__pyx_tuple__273);
  Py_CLEAR(clear_module_state->__pyx_tuple__274);
  Py_CLEAR(clear_module_state->__pyx_tuple__275);
  Py_CLEAR(clear_module_state->__pyx_tuple__276);
  Py_CLEAR(clear_module_state->__pyx_tuple__277);
  Py_CLEAR(clear_module_state->__pyx_tuple__278);
  Py_CLEAR(clear_module_state->__pyx_tuple__279);
  Py_CLEAR(clear_module_state->__pyx_tuple__280);
  Py_CLEAR(clear_module_state->__pyx_tuple__281);
  Py_CLEAR(clear_module_state->__pyx_tuple__282);
  Py_CLEAR(clear_module_state->__pyx_tuple__283);
  Py_CLEAR(clear_module_state->__pyx_tuple__284);
  Py_CLEAR(clear_module_state->__pyx_tuple__285);
  Py_CLEAR(clear_module_state->__pyx_tuple__286);
  Py_CLEAR(clear_module_state->__pyx_tuple__287);
  Py_CLEAR(clear_module_state->__pyx_tuple__288);
  Py_CLEAR(clear_module_state->__pyx_tuple__289);
  Py_CLEAR(clear_module_state->__pyx_tuple__290);
  Py_CLEAR(clear_module_state->__pyx_tuple__291);
  Py_CLEAR(clear_module_state->__pyx_tuple__292);
  Py_CLEAR(clear_module_state->__pyx_tuple__293);
  Py_CLEAR(clear_module_state->__pyx_tuple__294);
  Py_CLEAR(clear_module_state->__pyx_tuple__295);
  Py_CLEAR(clear_module_state->__pyx_tuple__296);
  Py_CLEAR(clear_module_state->__pyx_tuple__297);
  Py_CLEAR(clear_module_state->__pyx_tuple__298);
  Py_CLEAR(clear_module_state->__pyx_tuple__299);
  Py_CLEAR(clear_module_state->__pyx_tuple__300);
  Py_CLEAR(clear_module_state->__pyx_tuple__301);
  Py_CLEAR(clear_module_state->__pyx_tuple__302);
  Py_CLEAR(clear_module_state->__pyx_tuple__303);
  Py_CLEAR(clear_module_state->__pyx_tuple__304);
  Py_CLEAR(clear_module_state->__pyx_tuple__305);
  Py_CLEAR(clear_module_state->__pyx_tuple__306);
  Py_CLEAR(clear_module_state->__pyx_tuple__307);
  Py_CLEAR(clear_module_state->__pyx_tuple__308);
  Py_CLEAR(clear_module_state->__pyx_tuple__309);
  Py_CLEAR(clear_module_state->__pyx_tuple__310);
  Py_CLEAR(clear_module_state->__pyx_tuple__311);
  Py_CLEAR(clear_module_state->__pyx_tuple__312);
  Py_CLEAR(clear_module_state->__pyx_tuple__313);
  Py_CLEAR(clear_module_state->__pyx_tuple__314);
  Py_CLEAR(clear_module_state->__pyx_tuple__315);
  Py_CLEAR(clear_module_state->__pyx_tuple__316);
  Py_CLEAR(clear_module_state->__pyx_tuple__317);
  Py_CLEAR(clear_module_state->__pyx_tuple__318);
  Py_CLEAR(clear_module_state->__pyx_tuple__319);
  Py_CLEAR(clear_module_state->__pyx_tuple__320);
  Py_CLEAR(clear_module_state->__pyx_tuple__321);
  Py_CLEAR(clear_module_state->__pyx_tuple__322);
  Py_CLEAR(clear_module_state->__pyx_tuple__323);
  Py_CLEAR(clear_module_state->__pyx_tuple__324);
  Py_CLEAR(clear_module_state->__pyx_tuple__325);
  Py_CLEAR(clear_module_state->__pyx_tuple__326);
  Py_CLEAR(clear_module_state->__pyx_tuple__327);
  Py_CLEAR(clear_module_state->__pyx_tuple__328);
  Py_CLEAR(clear_module_state->__pyx_tuple__329);
  Py_CLEAR(clear_module_state->__pyx_tuple__330);
  Py_CLEAR(clear_module_state->__pyx_tuple__331);
  Py_CLEAR(clear_module_state->__pyx_tuple__332);
  Py_CLEAR(clear_module_state->__pyx_tuple__333);
  Py_CLEAR(clear_module_state->__pyx_tuple__334);
  Py_CLEAR(clear_module_state->__pyx_tuple__335);
  Py_CLEAR(clear_module_state->__pyx_tuple__336);
  Py_CLEAR(clear_module_state->__pyx_tuple__337);
  Py_CLEAR(clear_module_state->__pyx_tuple__338);
  Py_CLEAR(clear_module_state->__pyx_tuple__339);
  Py_CLEAR(clear_module_state->__pyx_tuple__340);
  Py_CLEAR(clear_module_state->__pyx_tuple__341);
  Py_CLEAR(clear_module_state->__pyx_tuple__342);
  Py_CLEAR(clear_module_state->__pyx_tuple__343);
  Py_CLEAR(clear_module_state->__pyx_tuple__344);
  Py_CLEAR(clear_module_state->__pyx_tuple__345);
  Py_CLEAR(clear_module_state->__pyx_tuple__346);
  Py_CLEAR(clear_module_state->__pyx_tuple__347);
  Py_CLEAR(clear_module_state->__pyx_tuple__348);
  Py_CLEAR(clear_module_state->__pyx_tuple__349);
  Py_CLEAR(clear_module_state->__pyx_tuple__350);
  Py_CLEAR(clear_module_state->__pyx_tuple__351);
  Py_CLEAR(clear_module_state->__pyx_tuple__352);
  Py_CLEAR(clear_module_state->__pyx_tuple__353);
  Py_CLEAR(clear_module_state->__pyx_tuple__354);
  Py_CLEAR(clear_module_state->__pyx_tuple__355);
  Py_CLEAR(clear_module_state->__pyx_tuple__356);
  Py_CLEAR(clear_module_state->__pyx_tuple__357);
  Py_CLEAR(clear_module_state->__pyx_tuple__358);
  Py_CLEAR(clear_module_state->__pyx_tuple__359);
  Py_CLEAR(clear_module_state->__pyx_tuple__360);
  Py_CLEAR(clear_module_state->__pyx_tuple__361);
  Py_CLEAR(clear_module_state->__pyx_tuple__362);
  Py_CLEAR(clear_module_state->__pyx_tuple__363);
  Py_CLEAR(clear_module_state->__pyx_tuple__364);
  Py_CLEAR(clear_module_state->__pyx_tuple__365);
  Py_CLEAR(clear_module_state->__pyx_tuple__366);
  Py_CLEAR(clear_module_state->__pyx_tuple__367);
  Py_CLEAR(clear_module_state->__pyx_tuple__368);
  Py_CLEAR(clear_module_state->__pyx_tuple__369);
  Py_CLEAR(clear_module_state->__pyx_tuple__370);
  Py_CLEAR(clear_module_state->__pyx_tuple__371);
  Py_CLEAR(clear_module_state->__pyx_tuple__372);
  Py_CLEAR(clear_module_state->__pyx_tuple__373);
  Py_CLEAR(clear_module_state->__pyx_tuple__374);
  Py_CLEAR(clear_module_state->__pyx_tuple__375);
  Py_CLEAR(clear_module_state->__pyx_tuple__376);
  Py_CLEAR(clear_module_state->__pyx_tuple__377);
  Py_CLEAR(clear_module_state->__pyx_tuple__378);
  Py_CLEAR(clear_module_state->__pyx_tuple__379);
  Py_CLEAR(clear_module_state->__pyx_tuple__380);
  Py_CLEAR(clear_module_state->__pyx_tuple__381);
  Py_CLEAR(clear_module_state->__pyx_tuple__382);
  Py_CLEAR(clear_module_state->__pyx_tuple__383);
  Py_CLEAR(clear_module_state->__pyx_tuple__384);
  Py_CLEAR(clear_module_state->__pyx_tuple__385);
  Py_CLEAR(clear_module_state->__pyx_tuple__386);
  Py_CLEAR(clear_module_state->__pyx_tuple__387);
  Py_CLEAR(clear_module_state->__pyx_tuple__388);
  Py_CLEAR(clear_module_state->__pyx_tuple__389);
  Py_CLEAR(clear_module_state->__pyx_tuple__390);
  Py_CLEAR(clear_module_state->__pyx_tuple__391);
  Py_CLEAR(clear_module_state->__pyx_tuple__392);
  Py_CLEAR(clear_module_state->__pyx_tuple__393);
  Py_CLEAR(clear_module_state->__pyx_tuple__394);
  Py_CLEAR(clear_module_state->__pyx_tuple__395);
  Py_CLEAR(clear_module_state->__pyx_tuple__396);
  Py_CLEAR(clear_module_state->__pyx_tuple__397);
  Py_CLEAR(clear_module_state->__pyx_tuple__398);
  Py_CLEAR(clear_module_state->__pyx_tuple__399);
  Py_CLEAR(clear_module_state->__pyx_tuple__400);
  Py_CLEAR(clear_module_state->__pyx_tuple__401);
  Py_CLEAR(clear_module_state->__pyx_tuple__402);
  Py_CLEAR(clear_module_state->__pyx_tuple__403);
  Py_CLEAR(clear_module_state->__pyx_tuple__404);
  Py_CLEAR(clear_module_state->__pyx_tuple__405);
  Py_CLEAR(clear_module_state->__pyx_tuple__406);
  Py_CLEAR(clear_module_state->__pyx_tuple__407);
  Py_CLEAR(clear_module_state->__pyx_tuple__408);
  Py_CLEAR(clear_module_state->__pyx_tuple__409);
  Py_CLEAR(clear_module_state->__pyx_tuple__410);
  Py_CLEAR(clear_module_state->__pyx_tuple__411);
  Py_CLEAR(clear_module_state->__pyx_tuple__412);
  Py_CLEAR(clear_module_state->__pyx_tuple__413);
  Py_CLEAR(clear_module_state->__pyx_tuple__414);
  Py_CLEAR(clear_module_state->__pyx_tuple__415);
  Py_CLEAR(clear_module_state->__pyx_tuple__416);
  Py_CLEAR(clear_module_state->__pyx_tuple__417);
  Py_CLEAR(clear_module_state->__pyx_tuple__418);
  Py_CLEAR(clear_module_state->__pyx_tuple__419);
  Py_CLEAR(clear_module_state->__pyx_tuple__420);
  Py_CLEAR(clear_module_state->__pyx_tuple__421);
  Py_CLEAR(clear_module_state->__pyx_tuple__422);
  Py_CLEAR(clear_module_state->__pyx_tuple__423);
  Py_CLEAR(clear_module_state->__pyx_tuple__424);
  Py_CLEAR(clear_module_state->__pyx_tuple__425);
  Py_CLEAR(clear_module_state->__pyx_tuple__426);
  Py_CLEAR(clear_module_state->__pyx_tuple__427);
  Py_CLEAR(clear_module_state->__pyx_tuple__428);
  Py_CLEAR(clear_module_state->__pyx_tuple__429);
  Py_CLEAR(clear_module_state->__pyx_tuple__430);
  Py_CLEAR(clear_module_state->__pyx_tuple__431);
  Py_CLEAR(clear_module_state->__pyx_tuple__432);
  Py_CLEAR(clear_module_state->__pyx_tuple__433);
  Py_CLEAR(clear_module_state->__pyx_tuple__434);
  Py_CLEAR(clear_module_state->__pyx_tuple__435);
  Py_CLEAR(clear_module_state->__pyx_tuple__436);
  Py_CLEAR(clear_module_state->__pyx_tuple__437);
  Py_CLEAR(clear_module_state->__pyx_tuple__438);
  Py_CLEAR(clear_module_state->__pyx_tuple__439);
  Py_CLEAR(clear_module_state->__pyx_tuple__440);
  Py_CLEAR(clear_module_state->__pyx_tuple__441);
  Py_CLEAR(clear_module_state->__pyx_tuple__442);
  Py_CLEAR(clear_module_state->__pyx_tuple__443);
  Py_CLEAR(clear_module_state->__pyx_tuple__444);
  Py_CLEAR(clear_module_state->__pyx_tuple__445);
  Py_CLEAR(clear_module_state->__pyx_tuple__446);
  Py_CLEAR(clear_module_state->__pyx_tuple__447);
  Py_CLEAR(clear_module_state->__pyx_tuple__448);
  Py_CLEAR(clear_module_state->__pyx_tuple__449);
  Py_CLEAR(clear_module_state->__pyx_tuple__450);
  Py_CLEAR(clear_module_state->__pyx_tuple__451);
  return 0;
}
#endif
/* #### Code section: module_state_traverse ### */
#if CYTHON_USE_MODULE_STATE
static int __pyx_m_traverse(PyObject *m, visitproc visit, void *arg) {
  __pyx_mstate *traverse_module_state = __pyx_mstate(m);
  if (!traverse_module_state) return 0;
  Py_VISIT(traverse_module_state->__pyx_d);
  Py_VISIT(traverse_module_state->__pyx_b);
  Py_VISIT(traverse_module_state->__pyx_cython_runtime);
  Py_VISIT(traverse_module_state->__pyx_empty_tuple);
  Py_VISIT(traverse_module_state->__pyx_empty_bytes);
  Py_VISIT(traverse_module_state->__pyx_empty_unicode);
  #ifdef __Pyx_CyFunction_USED
  Py_VISIT(traverse_module_state->__pyx_CyFunctionType);
  #endif
  #ifdef __Pyx_FusedFunction_USED
  Py_VISIT(traverse_module_state->__pyx_FusedFunctionType);
  #endif
  Py_VISIT(traverse_module_state->__pyx_n_u_CUDA_PYTHON_CUDA_PER_THREAD_DEFA);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Failed_to_dlopen);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuArray3DCreate_v2_not);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuArray3DGetDescriptor);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuArrayCreate_v2_not_fo);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuArrayDestroy_not_foun);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuArrayGetDescriptor_v2);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuArrayGetMemoryRequire);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuArrayGetPlane_not_fou);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuArrayGetSparsePropert);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuCoredumpGetAttribute);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuCoredumpGetAttributeG);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuCoredumpSetAttribute);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuCoredumpSetAttributeG);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuCtxAttach_not_found);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuCtxCreate_v2_not_foun);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuCtxCreate_v3_not_foun);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuCtxDestroy_v2_not_fou);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuCtxDetach_not_found);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuCtxDisablePeerAccess);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuCtxEnablePeerAccess_n);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuCtxFromGreenCtx_not_f);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuCtxGetApiVersion_not);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuCtxGetCacheConfig_not);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuCtxGetCurrent_not_fou);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuCtxGetDevResource_not);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuCtxGetDevice_not_foun);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuCtxGetExecAffinity_no);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuCtxGetFlags_not_found);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuCtxGetId_not_found);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuCtxGetLimit_not_found);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuCtxGetSharedMemConfig);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuCtxGetStreamPriorityR);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuCtxPopCurrent_v2_not);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuCtxPushCurrent_v2_not);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuCtxResetPersistingL2C);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuCtxSetCacheConfig_not);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuCtxSetCurrent_not_fou);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuCtxSetFlags_not_found);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuCtxSetLimit_not_found);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuCtxSetSharedMemConfig);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuCtxSynchronize_not_fo);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuDestroyExternalMemory);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuDestroyExternalSemaph);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuDevResourceGenerateDe);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuDevSmResourceSplitByC);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuDeviceCanAccessPeer_n);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuDeviceComputeCapabili);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuDeviceGetAttribute_no);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuDeviceGetByPCIBusId_n);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuDeviceGetCount_not_fo);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuDeviceGetDefaultMemPo);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuDeviceGetDevResource);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuDeviceGetExecAffinity);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuDeviceGetGraphMemAttr);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuDeviceGetLuid_not_fou);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuDeviceGetMemPool_not);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuDeviceGetName_not_fou);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuDeviceGetNvSciSyncAtt);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuDeviceGetP2PAttribute);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuDeviceGetPCIBusId_not);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuDeviceGetProperties_n);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuDeviceGetTexture1DLin);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuDeviceGetUuid_not_fou);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuDeviceGetUuid_v2_not);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuDeviceGet_not_found);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuDeviceGraphMemTrim_no);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuDevicePrimaryCtxGetSt);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuDevicePrimaryCtxRelea);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuDevicePrimaryCtxReset);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuDevicePrimaryCtxRetai);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuDevicePrimaryCtxSetFl);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuDeviceRegisterAsyncNo);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuDeviceSetGraphMemAttr);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuDeviceSetMemPool_not);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuDeviceTotalMem_v2_not);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuDeviceUnregisterAsync);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuDriverGetVersion_not);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuEGLStreamConsumerAcqu);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuEGLStreamConsumerConn);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuEGLStreamConsumerConn_2);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuEGLStreamConsumerDisc);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuEGLStreamConsumerRele);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuEGLStreamProducerConn);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuEGLStreamProducerDisc);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuEGLStreamProducerPres);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuEGLStreamProducerRetu);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuEventCreateFromEGLSyn);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuEventCreate_not_found);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuEventDestroy_v2_not_f);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuEventElapsedTime_not);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuEventQuery_not_found);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuEventRecordWithFlags);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuEventRecord_not_found);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuEventSynchronize_not);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuExternalMemoryGetMapp);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuExternalMemoryGetMapp_2);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuFlushGPUDirectRDMAWri);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuFuncGetAttribute_not);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuFuncGetModule_not_fou);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuFuncGetName_not_found);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuFuncGetParamInfo_not);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuFuncIsLoaded_not_foun);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuFuncLoad_not_found);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuFuncSetAttribute_not);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuFuncSetBlockShape_not);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuFuncSetCacheConfig_no);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuFuncSetSharedMemConfi);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuFuncSetSharedSize_not);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuGLGetDevices_v2_not_f);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuGetErrorName_not_foun);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuGetErrorString_not_fo);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuGetExportTable_not_fo);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuGetProcAddress_v2_not);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuGraphAddBatchMemOpNod);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuGraphAddChildGraphNod);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuGraphAddDependencies);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuGraphAddDependencies_2);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuGraphAddEmptyNode_not);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuGraphAddEventRecordNo);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuGraphAddEventWaitNode);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuGraphAddExternalSemap);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuGraphAddExternalSemap_2);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuGraphAddHostNode_not);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuGraphAddKernelNode_v2);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuGraphAddMemAllocNode);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuGraphAddMemFreeNode_n);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuGraphAddMemcpyNode_no);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuGraphAddMemsetNode_no);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuGraphAddNode_not_foun);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuGraphAddNode_v2_not_f);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuGraphBatchMemOpNodeGe);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuGraphBatchMemOpNodeSe);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuGraphChildGraphNodeGe);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuGraphClone_not_found);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuGraphConditionalHandl);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuGraphCreate_not_found);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuGraphDebugDotPrint_no);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuGraphDestroyNode_not);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuGraphDestroy_not_foun);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuGraphEventRecordNodeG);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuGraphEventRecordNodeS);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuGraphEventWaitNodeGet);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuGraphEventWaitNodeSet);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuGraphExecBatchMemOpNo);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuGraphExecChildGraphNo);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuGraphExecDestroy_not);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuGraphExecEventRecordN);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuGraphExecEventWaitNod);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuGraphExecExternalSema);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuGraphExecExternalSema_2);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuGraphExecGetFlags_not);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuGraphExecHostNodeSetP);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuGraphExecKernelNodeSe);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuGraphExecMemcpyNodeSe);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuGraphExecMemsetNodeSe);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuGraphExecNodeSetParam);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuGraphExecUpdate_v2_no);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuGraphExternalSemaphor);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuGraphExternalSemaphor_2);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuGraphExternalSemaphor_3);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuGraphExternalSemaphor_4);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuGraphGetEdges_not_fou);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuGraphGetEdges_v2_not);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuGraphGetNodes_not_fou);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuGraphGetRootNodes_not);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuGraphHostNodeGetParam);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuGraphHostNodeSetParam);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuGraphInstantiateWithF);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuGraphInstantiateWithP);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuGraphKernelNodeCopyAt);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuGraphKernelNodeGetAtt);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuGraphKernelNodeGetPar);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuGraphKernelNodeSetAtt);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuGraphKernelNodeSetPar);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuGraphLaunch_not_found);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuGraphMemAllocNodeGetP);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuGraphMemFreeNodeGetPa);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuGraphMemcpyNodeGetPar);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuGraphMemcpyNodeSetPar);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuGraphMemsetNodeGetPar);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuGraphMemsetNodeSetPar);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuGraphNodeFindInClone);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuGraphNodeGetDependenc);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuGraphNodeGetDependenc_2);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuGraphNodeGetDependent);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuGraphNodeGetDependent_2);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuGraphNodeGetEnabled_n);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuGraphNodeGetType_not);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuGraphNodeSetEnabled_n);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuGraphNodeSetParams_no);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuGraphReleaseUserObjec);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuGraphRemoveDependenci);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuGraphRemoveDependenci_2);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuGraphRetainUserObject);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuGraphUpload_not_found);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuGraphicsEGLRegisterIm);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuGraphicsGLRegisterBuf);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuGraphicsGLRegisterIma);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuGraphicsMapResources);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuGraphicsResourceGetMa);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuGraphicsResourceGetMa_2);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuGraphicsResourceGetMa_3);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuGraphicsResourceSetMa);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuGraphicsSubResourceGe);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuGraphicsUnmapResource);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuGraphicsUnregisterRes);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuGraphicsVDPAURegister);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuGraphicsVDPAURegister_2);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuGreenCtxCreate_not_fo);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuGreenCtxDestroy_not_f);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuGreenCtxGetDevResourc);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuGreenCtxRecordEvent_n);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuGreenCtxWaitEvent_not);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuImportExternalMemory);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuImportExternalSemapho);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuInit_not_found);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuIpcCloseMemHandle_not);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuIpcGetEventHandle_not);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuIpcGetMemHandle_not_f);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuIpcOpenEventHandle_no);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuIpcOpenMemHandle_v2_n);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuKernelGetAttribute_no);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuKernelGetFunction_not);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuKernelGetName_not_fou);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuKernelGetParamInfo_no);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuKernelSetAttribute_no);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuKernelSetCacheConfig);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuLaunchCooperativeKern);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuLaunchCooperativeKern_2);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuLaunchGridAsync_not_f);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuLaunchGrid_not_found);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuLaunchHostFunc_not_fo);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuLaunchKernelEx_not_fo);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuLaunchKernel_not_foun);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuLaunch_not_found);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuLibraryEnumerateKerne);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuLibraryGetGlobal_not);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuLibraryGetKernelCount);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuLibraryGetKernel_not);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuLibraryGetManaged_not);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuLibraryGetModule_not);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuLibraryGetUnifiedFunc);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuLibraryLoadData_not_f);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuLibraryLoadFromFile_n);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuLibraryUnload_not_fou);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuLinkAddData_v2_not_fo);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuLinkAddFile_v2_not_fo);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuLinkComplete_not_foun);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuLinkCreate_v2_not_fou);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuLinkDestroy_not_found);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuMemAddressFree_not_fo);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuMemAddressReserve_not);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuMemAdvise_not_found);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuMemAdvise_v2_not_foun);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuMemAllocAsync_not_fou);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuMemAllocFromPoolAsync);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuMemAllocHost_v2_not_f);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuMemAllocManaged_not_f);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuMemAllocPitch_v2_not);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuMemAlloc_v2_not_found);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuMemCreate_not_found);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuMemExportToShareableH);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuMemFreeAsync_not_foun);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuMemFreeHost_not_found);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuMemFree_v2_not_found);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuMemGetAccess_not_foun);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuMemGetAddressRange_v2);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuMemGetAllocationGranu);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuMemGetAllocationPrope);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuMemGetHandleForAddres);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuMemGetInfo_v2_not_fou);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuMemHostAlloc_not_foun);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuMemHostGetDevicePoint);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuMemHostGetFlags_not_f);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuMemHostRegister_v2_no);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuMemHostUnregister_not);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuMemImportFromShareabl);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuMemMapArrayAsync_not);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuMemMap_not_found);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuMemPoolCreate_not_fou);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuMemPoolDestroy_not_fo);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuMemPoolExportPointer);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuMemPoolExportToSharea);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuMemPoolGetAccess_not);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuMemPoolGetAttribute_n);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuMemPoolImportFromShar);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuMemPoolImportPointer);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuMemPoolSetAccess_not);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuMemPoolSetAttribute_n);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuMemPoolTrimTo_not_fou);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuMemPrefetchAsync_not);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuMemPrefetchAsync_v2_n);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuMemRangeGetAttribute);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuMemRangeGetAttributes);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuMemRelease_not_found);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuMemRetainAllocationHa);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuMemSetAccess_not_foun);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuMemUnmap_not_found);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuMemcpy2DAsync_v2_not);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuMemcpy2DUnaligned_v2);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuMemcpy2D_v2_not_found);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuMemcpy3DAsync_v2_not);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuMemcpy3DPeerAsync_not);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuMemcpy3DPeer_not_foun);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuMemcpy3D_v2_not_found);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuMemcpyAsync_not_found);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuMemcpyAtoA_v2_not_fou);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuMemcpyAtoD_v2_not_fou);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuMemcpyAtoHAsync_v2_no);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuMemcpyAtoH_v2_not_fou);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuMemcpyDtoA_v2_not_fou);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuMemcpyDtoDAsync_v2_no);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuMemcpyDtoD_v2_not_fou);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuMemcpyDtoHAsync_v2_no);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuMemcpyDtoH_v2_not_fou);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuMemcpyHtoAAsync_v2_no);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuMemcpyHtoA_v2_not_fou);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuMemcpyHtoDAsync_v2_no);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuMemcpyHtoD_v2_not_fou);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuMemcpyPeerAsync_not_f);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuMemcpyPeer_not_found);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuMemcpy_not_found);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuMemsetD16Async_not_fo);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuMemsetD16_v2_not_foun);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuMemsetD2D16Async_not);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuMemsetD2D16_v2_not_fo);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuMemsetD2D32Async_not);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuMemsetD2D32_v2_not_fo);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuMemsetD2D8Async_not_f);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuMemsetD2D8_v2_not_fou);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuMemsetD32Async_not_fo);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuMemsetD32_v2_not_foun);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuMemsetD8Async_not_fou);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuMemsetD8_v2_not_found);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuMipmappedArrayCreate);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuMipmappedArrayDestroy);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuMipmappedArrayGetLeve);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuMipmappedArrayGetMemo);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuMipmappedArrayGetSpar);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuModuleEnumerateFuncti);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuModuleGetFunctionCoun);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuModuleGetFunction_not);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuModuleGetGlobal_v2_no);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuModuleGetLoadingMode);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuModuleGetSurfRef_not);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuModuleGetTexRef_not_f);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuModuleLoadDataEx_not);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuModuleLoadData_not_fo);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuModuleLoadFatBinary_n);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuModuleLoad_not_found);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuModuleUnload_not_foun);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuMulticastAddDevice_no);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuMulticastBindAddr_not);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuMulticastBindMem_not);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuMulticastCreate_not_f);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuMulticastGetGranulari);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuMulticastUnbind_not_f);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuOccupancyAvailableDyn);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuOccupancyMaxActiveBlo);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuOccupancyMaxActiveBlo_2);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuOccupancyMaxActiveClu);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuOccupancyMaxPotential);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuOccupancyMaxPotential_2);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuOccupancyMaxPotential_3);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuParamSetSize_not_foun);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuParamSetTexRef_not_fo);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuParamSetf_not_found);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuParamSeti_not_found);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuParamSetv_not_found);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuPointerGetAttribute_n);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuPointerGetAttributes);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuPointerSetAttribute_n);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuProfilerStart_not_fou);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuProfilerStop_not_foun);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuSignalExternalSemapho);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuStreamAddCallback_not);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuStreamAttachMemAsync);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuStreamBatchMemOp_v2_n);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuStreamBeginCaptureToG);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuStreamBeginCapture_v2);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuStreamCopyAttributes);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuStreamCreateWithPrior);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuStreamCreate_not_foun);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuStreamDestroy_v2_not);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuStreamEndCapture_not);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuStreamGetAttribute_no);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuStreamGetCaptureInfo);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuStreamGetCaptureInfo_2);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuStreamGetCtx_not_foun);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuStreamGetFlags_not_fo);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuStreamGetGreenCtx_not);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuStreamGetId_not_found);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuStreamGetPriority_not);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuStreamIsCapturing_not);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuStreamQuery_not_found);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuStreamSetAttribute_no);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuStreamSynchronize_not);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuStreamUpdateCaptureDe);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuStreamUpdateCaptureDe_2);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuStreamWaitEvent_not_f);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuStreamWaitValue32_v2);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuStreamWaitValue64_v2);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuStreamWriteValue32_v2);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuStreamWriteValue64_v2);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuSurfObjectCreate_not);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuSurfObjectDestroy_not);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuSurfObjectGetResource);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuSurfRefGetArray_not_f);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuSurfRefSetArray_not_f);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuTensorMapEncodeIm2col);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuTensorMapEncodeTiled);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuTensorMapReplaceAddre);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuTexObjectCreate_not_f);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuTexObjectDestroy_not);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuTexObjectGetResourceD);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuTexObjectGetResourceV);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuTexObjectGetTextureDe);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuTexRefCreate_not_foun);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuTexRefDestroy_not_fou);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuTexRefGetAddressMode);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuTexRefGetAddress_v2_n);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuTexRefGetArray_not_fo);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuTexRefGetBorderColor);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuTexRefGetFilterMode_n);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuTexRefGetFlags_not_fo);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuTexRefGetFormat_not_f);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuTexRefGetMaxAnisotrop);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuTexRefGetMipmapFilter);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuTexRefGetMipmapLevelB);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuTexRefGetMipmapLevelC);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuTexRefGetMipmappedArr);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuTexRefSetAddress2D_v3);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuTexRefSetAddressMode);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuTexRefSetAddress_v2_n);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuTexRefSetArray_not_fo);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuTexRefSetBorderColor);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuTexRefSetFilterMode_n);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuTexRefSetFlags_not_fo);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuTexRefSetFormat_not_f);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuTexRefSetMaxAnisotrop);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuTexRefSetMipmapFilter);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuTexRefSetMipmapLevelB);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuTexRefSetMipmapLevelC);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuTexRefSetMipmappedArr);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuThreadExchangeStreamC);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuUserObjectCreate_not);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuUserObjectRelease_not);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuUserObjectRetain_not);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuVDPAUCtxCreate_v2_not);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuVDPAUGetDevice_not_fo);
  Py_VISIT(traverse_module_state->__pyx_kp_u_Function_cuWaitExternalSemaphore);
  Py_VISIT(traverse_module_state->__pyx_n_s_RuntimeError);
  Py_VISIT(traverse_module_state->__pyx_n_s__452);
  Py_VISIT(traverse_module_state->__pyx_n_s__453);
  Py_VISIT(traverse_module_state->__pyx_n_s_cline_in_traceback);
  Py_VISIT(traverse_module_state->__pyx_n_s_default);
  Py_VISIT(traverse_module_state->__pyx_n_s_encoding);
  Py_VISIT(traverse_module_state->__pyx_n_s_getenv);
  Py_VISIT(traverse_module_state->__pyx_n_s_import);
  Py_VISIT(traverse_module_state->__pyx_n_s_initializing);
  Py_VISIT(traverse_module_state->__pyx_kp_u_libcuda_so_1);
  Py_VISIT(traverse_module_state->__pyx_n_s_main);
  Py_VISIT(traverse_module_state->__pyx_n_s_maxsize);
  Py_VISIT(traverse_module_state->__pyx_n_s_name);
  Py_VISIT(traverse_module_state->__pyx_n_s_os);
  Py_VISIT(traverse_module_state->__pyx_n_s_spec);
  Py_VISIT(traverse_module_state->__pyx_n_s_sys);
  Py_VISIT(traverse_module_state->__pyx_n_s_test);
  Py_VISIT(traverse_module_state->__pyx_kp_u_utf_8);
  Py_VISIT(traverse_module_state->__pyx_int_0);
  Py_VISIT(traverse_module_state->__pyx_int_4294967296);
  Py_VISIT(traverse_module_state->__pyx_tuple_);
  Py_VISIT(traverse_module_state->__pyx_tuple__2);
  Py_VISIT(traverse_module_state->__pyx_tuple__3);
  Py_VISIT(traverse_module_state->__pyx_tuple__4);
  Py_VISIT(traverse_module_state->__pyx_tuple__5);
  Py_VISIT(traverse_module_state->__pyx_tuple__6);
  Py_VISIT(traverse_module_state->__pyx_tuple__7);
  Py_VISIT(traverse_module_state->__pyx_tuple__8);
  Py_VISIT(traverse_module_state->__pyx_tuple__9);
  Py_VISIT(traverse_module_state->__pyx_tuple__10);
  Py_VISIT(traverse_module_state->__pyx_tuple__11);
  Py_VISIT(traverse_module_state->__pyx_tuple__12);
  Py_VISIT(traverse_module_state->__pyx_tuple__13);
  Py_VISIT(traverse_module_state->__pyx_tuple__14);
  Py_VISIT(traverse_module_state->__pyx_tuple__15);
  Py_VISIT(traverse_module_state->__pyx_tuple__16);
  Py_VISIT(traverse_module_state->__pyx_tuple__17);
  Py_VISIT(traverse_module_state->__pyx_tuple__18);
  Py_VISIT(traverse_module_state->__pyx_tuple__19);
  Py_VISIT(traverse_module_state->__pyx_tuple__20);
  Py_VISIT(traverse_module_state->__pyx_tuple__21);
  Py_VISIT(traverse_module_state->__pyx_tuple__22);
  Py_VISIT(traverse_module_state->__pyx_tuple__23);
  Py_VISIT(traverse_module_state->__pyx_tuple__24);
  Py_VISIT(traverse_module_state->__pyx_tuple__25);
  Py_VISIT(traverse_module_state->__pyx_tuple__26);
  Py_VISIT(traverse_module_state->__pyx_tuple__27);
  Py_VISIT(traverse_module_state->__pyx_tuple__28);
  Py_VISIT(traverse_module_state->__pyx_tuple__29);
  Py_VISIT(traverse_module_state->__pyx_tuple__30);
  Py_VISIT(traverse_module_state->__pyx_tuple__31);
  Py_VISIT(traverse_module_state->__pyx_tuple__32);
  Py_VISIT(traverse_module_state->__pyx_tuple__33);
  Py_VISIT(traverse_module_state->__pyx_tuple__34);
  Py_VISIT(traverse_module_state->__pyx_tuple__35);
  Py_VISIT(traverse_module_state->__pyx_tuple__36);
  Py_VISIT(traverse_module_state->__pyx_tuple__37);
  Py_VISIT(traverse_module_state->__pyx_tuple__38);
  Py_VISIT(traverse_module_state->__pyx_tuple__39);
  Py_VISIT(traverse_module_state->__pyx_tuple__40);
  Py_VISIT(traverse_module_state->__pyx_tuple__41);
  Py_VISIT(traverse_module_state->__pyx_tuple__42);
  Py_VISIT(traverse_module_state->__pyx_tuple__43);
  Py_VISIT(traverse_module_state->__pyx_tuple__44);
  Py_VISIT(traverse_module_state->__pyx_tuple__45);
  Py_VISIT(traverse_module_state->__pyx_tuple__46);
  Py_VISIT(traverse_module_state->__pyx_tuple__47);
  Py_VISIT(traverse_module_state->__pyx_tuple__48);
  Py_VISIT(traverse_module_state->__pyx_tuple__49);
  Py_VISIT(traverse_module_state->__pyx_tuple__50);
  Py_VISIT(traverse_module_state->__pyx_tuple__51);
  Py_VISIT(traverse_module_state->__pyx_tuple__52);
  Py_VISIT(traverse_module_state->__pyx_tuple__53);
  Py_VISIT(traverse_module_state->__pyx_tuple__54);
  Py_VISIT(traverse_module_state->__pyx_tuple__55);
  Py_VISIT(traverse_module_state->__pyx_tuple__56);
  Py_VISIT(traverse_module_state->__pyx_tuple__57);
  Py_VISIT(traverse_module_state->__pyx_tuple__58);
  Py_VISIT(traverse_module_state->__pyx_tuple__59);
  Py_VISIT(traverse_module_state->__pyx_tuple__60);
  Py_VISIT(traverse_module_state->__pyx_tuple__61);
  Py_VISIT(traverse_module_state->__pyx_tuple__62);
  Py_VISIT(traverse_module_state->__pyx_tuple__63);
  Py_VISIT(traverse_module_state->__pyx_tuple__64);
  Py_VISIT(traverse_module_state->__pyx_tuple__65);
  Py_VISIT(traverse_module_state->__pyx_tuple__66);
  Py_VISIT(traverse_module_state->__pyx_tuple__67);
  Py_VISIT(traverse_module_state->__pyx_tuple__68);
  Py_VISIT(traverse_module_state->__pyx_tuple__69);
  Py_VISIT(traverse_module_state->__pyx_tuple__70);
  Py_VISIT(traverse_module_state->__pyx_tuple__71);
  Py_VISIT(traverse_module_state->__pyx_tuple__72);
  Py_VISIT(traverse_module_state->__pyx_tuple__73);
  Py_VISIT(traverse_module_state->__pyx_tuple__74);
  Py_VISIT(traverse_module_state->__pyx_tuple__75);
  Py_VISIT(traverse_module_state->__pyx_tuple__76);
  Py_VISIT(traverse_module_state->__pyx_tuple__77);
  Py_VISIT(traverse_module_state->__pyx_tuple__78);
  Py_VISIT(traverse_module_state->__pyx_tuple__79);
  Py_VISIT(traverse_module_state->__pyx_tuple__80);
  Py_VISIT(traverse_module_state->__pyx_tuple__81);
  Py_VISIT(traverse_module_state->__pyx_tuple__82);
  Py_VISIT(traverse_module_state->__pyx_tuple__83);
  Py_VISIT(traverse_module_state->__pyx_tuple__84);
  Py_VISIT(traverse_module_state->__pyx_tuple__85);
  Py_VISIT(traverse_module_state->__pyx_tuple__86);
  Py_VISIT(traverse_module_state->__pyx_tuple__87);
  Py_VISIT(traverse_module_state->__pyx_tuple__88);
  Py_VISIT(traverse_module_state->__pyx_tuple__89);
  Py_VISIT(traverse_module_state->__pyx_tuple__90);
  Py_VISIT(traverse_module_state->__pyx_tuple__91);
  Py_VISIT(traverse_module_state->__pyx_tuple__92);
  Py_VISIT(traverse_module_state->__pyx_tuple__93);
  Py_VISIT(traverse_module_state->__pyx_tuple__94);
  Py_VISIT(traverse_module_state->__pyx_tuple__95);
  Py_VISIT(traverse_module_state->__pyx_tuple__96);
  Py_VISIT(traverse_module_state->__pyx_tuple__97);
  Py_VISIT(traverse_module_state->__pyx_tuple__98);
  Py_VISIT(traverse_module_state->__pyx_tuple__99);
  Py_VISIT(traverse_module_state->__pyx_tuple__100);
  Py_VISIT(traverse_module_state->__pyx_tuple__101);
  Py_VISIT(traverse_module_state->__pyx_tuple__102);
  Py_VISIT(traverse_module_state->__pyx_tuple__103);
  Py_VISIT(traverse_module_state->__pyx_tuple__104);
  Py_VISIT(traverse_module_state->__pyx_tuple__105);
  Py_VISIT(traverse_module_state->__pyx_tuple__106);
  Py_VISIT(traverse_module_state->__pyx_tuple__107);
  Py_VISIT(traverse_module_state->__pyx_tuple__108);
  Py_VISIT(traverse_module_state->__pyx_tuple__109);
  Py_VISIT(traverse_module_state->__pyx_tuple__110);
  Py_VISIT(traverse_module_state->__pyx_tuple__111);
  Py_VISIT(traverse_module_state->__pyx_tuple__112);
  Py_VISIT(traverse_module_state->__pyx_tuple__113);
  Py_VISIT(traverse_module_state->__pyx_tuple__114);
  Py_VISIT(traverse_module_state->__pyx_tuple__115);
  Py_VISIT(traverse_module_state->__pyx_tuple__116);
  Py_VISIT(traverse_module_state->__pyx_tuple__117);
  Py_VISIT(traverse_module_state->__pyx_tuple__118);
  Py_VISIT(traverse_module_state->__pyx_tuple__119);
  Py_VISIT(traverse_module_state->__pyx_tuple__120);
  Py_VISIT(traverse_module_state->__pyx_tuple__121);
  Py_VISIT(traverse_module_state->__pyx_tuple__122);
  Py_VISIT(traverse_module_state->__pyx_tuple__123);
  Py_VISIT(traverse_module_state->__pyx_tuple__124);
  Py_VISIT(traverse_module_state->__pyx_tuple__125);
  Py_VISIT(traverse_module_state->__pyx_tuple__126);
  Py_VISIT(traverse_module_state->__pyx_tuple__127);
  Py_VISIT(traverse_module_state->__pyx_tuple__128);
  Py_VISIT(traverse_module_state->__pyx_tuple__129);
  Py_VISIT(traverse_module_state->__pyx_tuple__130);
  Py_VISIT(traverse_module_state->__pyx_tuple__131);
  Py_VISIT(traverse_module_state->__pyx_tuple__132);
  Py_VISIT(traverse_module_state->__pyx_tuple__133);
  Py_VISIT(traverse_module_state->__pyx_tuple__134);
  Py_VISIT(traverse_module_state->__pyx_tuple__135);
  Py_VISIT(traverse_module_state->__pyx_tuple__136);
  Py_VISIT(traverse_module_state->__pyx_tuple__137);
  Py_VISIT(traverse_module_state->__pyx_tuple__138);
  Py_VISIT(traverse_module_state->__pyx_tuple__139);
  Py_VISIT(traverse_module_state->__pyx_tuple__140);
  Py_VISIT(traverse_module_state->__pyx_tuple__141);
  Py_VISIT(traverse_module_state->__pyx_tuple__142);
  Py_VISIT(traverse_module_state->__pyx_tuple__143);
  Py_VISIT(traverse_module_state->__pyx_tuple__144);
  Py_VISIT(traverse_module_state->__pyx_tuple__145);
  Py_VISIT(traverse_module_state->__pyx_tuple__146);
  Py_VISIT(traverse_module_state->__pyx_tuple__147);
  Py_VISIT(traverse_module_state->__pyx_tuple__148);
  Py_VISIT(traverse_module_state->__pyx_tuple__149);
  Py_VISIT(traverse_module_state->__pyx_tuple__150);
  Py_VISIT(traverse_module_state->__pyx_tuple__151);
  Py_VISIT(traverse_module_state->__pyx_tuple__152);
  Py_VISIT(traverse_module_state->__pyx_tuple__153);
  Py_VISIT(traverse_module_state->__pyx_tuple__154);
  Py_VISIT(traverse_module_state->__pyx_tuple__155);
  Py_VISIT(traverse_module_state->__pyx_tuple__156);
  Py_VISIT(traverse_module_state->__pyx_tuple__157);
  Py_VISIT(traverse_module_state->__pyx_tuple__158);
  Py_VISIT(traverse_module_state->__pyx_tuple__159);
  Py_VISIT(traverse_module_state->__pyx_tuple__160);
  Py_VISIT(traverse_module_state->__pyx_tuple__161);
  Py_VISIT(traverse_module_state->__pyx_tuple__162);
  Py_VISIT(traverse_module_state->__pyx_tuple__163);
  Py_VISIT(traverse_module_state->__pyx_tuple__164);
  Py_VISIT(traverse_module_state->__pyx_tuple__165);
  Py_VISIT(traverse_module_state->__pyx_tuple__166);
  Py_VISIT(traverse_module_state->__pyx_tuple__167);
  Py_VISIT(traverse_module_state->__pyx_tuple__168);
  Py_VISIT(traverse_module_state->__pyx_tuple__169);
  Py_VISIT(traverse_module_state->__pyx_tuple__170);
  Py_VISIT(traverse_module_state->__pyx_tuple__171);
  Py_VISIT(traverse_module_state->__pyx_tuple__172);
  Py_VISIT(traverse_module_state->__pyx_tuple__173);
  Py_VISIT(traverse_module_state->__pyx_tuple__174);
  Py_VISIT(traverse_module_state->__pyx_tuple__175);
  Py_VISIT(traverse_module_state->__pyx_tuple__176);
  Py_VISIT(traverse_module_state->__pyx_tuple__177);
  Py_VISIT(traverse_module_state->__pyx_tuple__178);
  Py_VISIT(traverse_module_state->__pyx_tuple__179);
  Py_VISIT(traverse_module_state->__pyx_tuple__180);
  Py_VISIT(traverse_module_state->__pyx_tuple__181);
  Py_VISIT(traverse_module_state->__pyx_tuple__182);
  Py_VISIT(traverse_module_state->__pyx_tuple__183);
  Py_VISIT(traverse_module_state->__pyx_tuple__184);
  Py_VISIT(traverse_module_state->__pyx_tuple__185);
  Py_VISIT(traverse_module_state->__pyx_tuple__186);
  Py_VISIT(traverse_module_state->__pyx_tuple__187);
  Py_VISIT(traverse_module_state->__pyx_tuple__188);
  Py_VISIT(traverse_module_state->__pyx_tuple__189);
  Py_VISIT(traverse_module_state->__pyx_tuple__190);
  Py_VISIT(traverse_module_state->__pyx_tuple__191);
  Py_VISIT(traverse_module_state->__pyx_tuple__192);
  Py_VISIT(traverse_module_state->__pyx_tuple__193);
  Py_VISIT(traverse_module_state->__pyx_tuple__194);
  Py_VISIT(traverse_module_state->__pyx_tuple__195);
  Py_VISIT(traverse_module_state->__pyx_tuple__196);
  Py_VISIT(traverse_module_state->__pyx_tuple__197);
  Py_VISIT(traverse_module_state->__pyx_tuple__198);
  Py_VISIT(traverse_module_state->__pyx_tuple__199);
  Py_VISIT(traverse_module_state->__pyx_tuple__200);
  Py_VISIT(traverse_module_state->__pyx_tuple__201);
  Py_VISIT(traverse_module_state->__pyx_tuple__202);
  Py_VISIT(traverse_module_state->__pyx_tuple__203);
  Py_VISIT(traverse_module_state->__pyx_tuple__204);
  Py_VISIT(traverse_module_state->__pyx_tuple__205);
  Py_VISIT(traverse_module_state->__pyx_tuple__206);
  Py_VISIT(traverse_module_state->__pyx_tuple__207);
  Py_VISIT(traverse_module_state->__pyx_tuple__208);
  Py_VISIT(traverse_module_state->__pyx_tuple__209);
  Py_VISIT(traverse_module_state->__pyx_tuple__210);
  Py_VISIT(traverse_module_state->__pyx_tuple__211);
  Py_VISIT(traverse_module_state->__pyx_tuple__212);
  Py_VISIT(traverse_module_state->__pyx_tuple__213);
  Py_VISIT(traverse_module_state->__pyx_tuple__214);
  Py_VISIT(traverse_module_state->__pyx_tuple__215);
  Py_VISIT(traverse_module_state->__pyx_tuple__216);
  Py_VISIT(traverse_module_state->__pyx_tuple__217);
  Py_VISIT(traverse_module_state->__pyx_tuple__218);
  Py_VISIT(traverse_module_state->__pyx_tuple__219);
  Py_VISIT(traverse_module_state->__pyx_tuple__220);
  Py_VISIT(traverse_module_state->__pyx_tuple__221);
  Py_VISIT(traverse_module_state->__pyx_tuple__222);
  Py_VISIT(traverse_module_state->__pyx_tuple__223);
  Py_VISIT(traverse_module_state->__pyx_tuple__224);
  Py_VISIT(traverse_module_state->__pyx_tuple__225);
  Py_VISIT(traverse_module_state->__pyx_tuple__226);
  Py_VISIT(traverse_module_state->__pyx_tuple__227);
  Py_VISIT(traverse_module_state->__pyx_tuple__228);
  Py_VISIT(traverse_module_state->__pyx_tuple__229);
  Py_VISIT(traverse_module_state->__pyx_tuple__230);
  Py_VISIT(traverse_module_state->__pyx_tuple__231);
  Py_VISIT(traverse_module_state->__pyx_tuple__232);
  Py_VISIT(traverse_module_state->__pyx_tuple__233);
  Py_VISIT(traverse_module_state->__pyx_tuple__234);
  Py_VISIT(traverse_module_state->__pyx_tuple__235);
  Py_VISIT(traverse_module_state->__pyx_tuple__236);
  Py_VISIT(traverse_module_state->__pyx_tuple__237);
  Py_VISIT(traverse_module_state->__pyx_tuple__238);
  Py_VISIT(traverse_module_state->__pyx_tuple__239);
  Py_VISIT(traverse_module_state->__pyx_tuple__240);
  Py_VISIT(traverse_module_state->__pyx_tuple__241);
  Py_VISIT(traverse_module_state->__pyx_tuple__242);
  Py_VISIT(traverse_module_state->__pyx_tuple__243);
  Py_VISIT(traverse_module_state->__pyx_tuple__244);
  Py_VISIT(traverse_module_state->__pyx_tuple__245);
  Py_VISIT(traverse_module_state->__pyx_tuple__246);
  Py_VISIT(traverse_module_state->__pyx_tuple__247);
  Py_VISIT(traverse_module_state->__pyx_tuple__248);
  Py_VISIT(traverse_module_state->__pyx_tuple__249);
  Py_VISIT(traverse_module_state->__pyx_tuple__250);
  Py_VISIT(traverse_module_state->__pyx_tuple__251);
  Py_VISIT(traverse_module_state->__pyx_tuple__252);
  Py_VISIT(traverse_module_state->__pyx_tuple__253);
  Py_VISIT(traverse_module_state->__pyx_tuple__254);
  Py_VISIT(traverse_module_state->__pyx_tuple__255);
  Py_VISIT(traverse_module_state->__pyx_tuple__256);
  Py_VISIT(traverse_module_state->__pyx_tuple__257);
  Py_VISIT(traverse_module_state->__pyx_tuple__258);
  Py_VISIT(traverse_module_state->__pyx_tuple__259);
  Py_VISIT(traverse_module_state->__pyx_tuple__260);
  Py_VISIT(traverse_module_state->__pyx_tuple__261);
  Py_VISIT(traverse_module_state->__pyx_tuple__262);
  Py_VISIT(traverse_module_state->__pyx_tuple__263);
  Py_VISIT(traverse_module_state->__pyx_tuple__264);
  Py_VISIT(traverse_module_state->__pyx_tuple__265);
  Py_VISIT(traverse_module_state->__pyx_tuple__266);
  Py_VISIT(traverse_module_state->__pyx_tuple__267);
  Py_VISIT(traverse_module_state->__pyx_tuple__268);
  Py_VISIT(traverse_module_state->__pyx_tuple__269);
  Py_VISIT(traverse_module_state->__pyx_tuple__270);
  Py_VISIT(traverse_module_state->__pyx_tuple__271);
  Py_VISIT(traverse_module_state->__pyx_tuple__272);
  Py_VISIT(traverse_module_state->__pyx_tuple__273);
  Py_VISIT(traverse_module_state->__pyx_tuple__274);
  Py_VISIT(traverse_module_state->__pyx_tuple__275);
  Py_VISIT(traverse_module_state->__pyx_tuple__276);
  Py_VISIT(traverse_module_state->__pyx_tuple__277);
  Py_VISIT(traverse_module_state->__pyx_tuple__278);
  Py_VISIT(traverse_module_state->__pyx_tuple__279);
  Py_VISIT(traverse_module_state->__pyx_tuple__280);
  Py_VISIT(traverse_module_state->__pyx_tuple__281);
  Py_VISIT(traverse_module_state->__pyx_tuple__282);
  Py_VISIT(traverse_module_state->__pyx_tuple__283);
  Py_VISIT(traverse_module_state->__pyx_tuple__284);
  Py_VISIT(traverse_module_state->__pyx_tuple__285);
  Py_VISIT(traverse_module_state->__pyx_tuple__286);
  Py_VISIT(traverse_module_state->__pyx_tuple__287);
  Py_VISIT(traverse_module_state->__pyx_tuple__288);
  Py_VISIT(traverse_module_state->__pyx_tuple__289);
  Py_VISIT(traverse_module_state->__pyx_tuple__290);
  Py_VISIT(traverse_module_state->__pyx_tuple__291);
  Py_VISIT(traverse_module_state->__pyx_tuple__292);
  Py_VISIT(traverse_module_state->__pyx_tuple__293);
  Py_VISIT(traverse_module_state->__pyx_tuple__294);
  Py_VISIT(traverse_module_state->__pyx_tuple__295);
  Py_VISIT(traverse_module_state->__pyx_tuple__296);
  Py_VISIT(traverse_module_state->__pyx_tuple__297);
  Py_VISIT(traverse_module_state->__pyx_tuple__298);
  Py_VISIT(traverse_module_state->__pyx_tuple__299);
  Py_VISIT(traverse_module_state->__pyx_tuple__300);
  Py_VISIT(traverse_module_state->__pyx_tuple__301);
  Py_VISIT(traverse_module_state->__pyx_tuple__302);
  Py_VISIT(traverse_module_state->__pyx_tuple__303);
  Py_VISIT(traverse_module_state->__pyx_tuple__304);
  Py_VISIT(traverse_module_state->__pyx_tuple__305);
  Py_VISIT(traverse_module_state->__pyx_tuple__306);
  Py_VISIT(traverse_module_state->__pyx_tuple__307);
  Py_VISIT(traverse_module_state->__pyx_tuple__308);
  Py_VISIT(traverse_module_state->__pyx_tuple__309);
  Py_VISIT(traverse_module_state->__pyx_tuple__310);
  Py_VISIT(traverse_module_state->__pyx_tuple__311);
  Py_VISIT(traverse_module_state->__pyx_tuple__312);
  Py_VISIT(traverse_module_state->__pyx_tuple__313);
  Py_VISIT(traverse_module_state->__pyx_tuple__314);
  Py_VISIT(traverse_module_state->__pyx_tuple__315);
  Py_VISIT(traverse_module_state->__pyx_tuple__316);
  Py_VISIT(traverse_module_state->__pyx_tuple__317);
  Py_VISIT(traverse_module_state->__pyx_tuple__318);
  Py_VISIT(traverse_module_state->__pyx_tuple__319);
  Py_VISIT(traverse_module_state->__pyx_tuple__320);
  Py_VISIT(traverse_module_state->__pyx_tuple__321);
  Py_VISIT(traverse_module_state->__pyx_tuple__322);
  Py_VISIT(traverse_module_state->__pyx_tuple__323);
  Py_VISIT(traverse_module_state->__pyx_tuple__324);
  Py_VISIT(traverse_module_state->__pyx_tuple__325);
  Py_VISIT(traverse_module_state->__pyx_tuple__326);
  Py_VISIT(traverse_module_state->__pyx_tuple__327);
  Py_VISIT(traverse_module_state->__pyx_tuple__328);
  Py_VISIT(traverse_module_state->__pyx_tuple__329);
  Py_VISIT(traverse_module_state->__pyx_tuple__330);
  Py_VISIT(traverse_module_state->__pyx_tuple__331);
  Py_VISIT(traverse_module_state->__pyx_tuple__332);
  Py_VISIT(traverse_module_state->__pyx_tuple__333);
  Py_VISIT(traverse_module_state->__pyx_tuple__334);
  Py_VISIT(traverse_module_state->__pyx_tuple__335);
  Py_VISIT(traverse_module_state->__pyx_tuple__336);
  Py_VISIT(traverse_module_state->__pyx_tuple__337);
  Py_VISIT(traverse_module_state->__pyx_tuple__338);
  Py_VISIT(traverse_module_state->__pyx_tuple__339);
  Py_VISIT(traverse_module_state->__pyx_tuple__340);
  Py_VISIT(traverse_module_state->__pyx_tuple__341);
  Py_VISIT(traverse_module_state->__pyx_tuple__342);
  Py_VISIT(traverse_module_state->__pyx_tuple__343);
  Py_VISIT(traverse_module_state->__pyx_tuple__344);
  Py_VISIT(traverse_module_state->__pyx_tuple__345);
  Py_VISIT(traverse_module_state->__pyx_tuple__346);
  Py_VISIT(traverse_module_state->__pyx_tuple__347);
  Py_VISIT(traverse_module_state->__pyx_tuple__348);
  Py_VISIT(traverse_module_state->__pyx_tuple__349);
  Py_VISIT(traverse_module_state->__pyx_tuple__350);
  Py_VISIT(traverse_module_state->__pyx_tuple__351);
  Py_VISIT(traverse_module_state->__pyx_tuple__352);
  Py_VISIT(traverse_module_state->__pyx_tuple__353);
  Py_VISIT(traverse_module_state->__pyx_tuple__354);
  Py_VISIT(traverse_module_state->__pyx_tuple__355);
  Py_VISIT(traverse_module_state->__pyx_tuple__356);
  Py_VISIT(traverse_module_state->__pyx_tuple__357);
  Py_VISIT(traverse_module_state->__pyx_tuple__358);
  Py_VISIT(traverse_module_state->__pyx_tuple__359);
  Py_VISIT(traverse_module_state->__pyx_tuple__360);
  Py_VISIT(traverse_module_state->__pyx_tuple__361);
  Py_VISIT(traverse_module_state->__pyx_tuple__362);
  Py_VISIT(traverse_module_state->__pyx_tuple__363);
  Py_VISIT(traverse_module_state->__pyx_tuple__364);
  Py_VISIT(traverse_module_state->__pyx_tuple__365);
  Py_VISIT(traverse_module_state->__pyx_tuple__366);
  Py_VISIT(traverse_module_state->__pyx_tuple__367);
  Py_VISIT(traverse_module_state->__pyx_tuple__368);
  Py_VISIT(traverse_module_state->__pyx_tuple__369);
  Py_VISIT(traverse_module_state->__pyx_tuple__370);
  Py_VISIT(traverse_module_state->__pyx_tuple__371);
  Py_VISIT(traverse_module_state->__pyx_tuple__372);
  Py_VISIT(traverse_module_state->__pyx_tuple__373);
  Py_VISIT(traverse_module_state->__pyx_tuple__374);
  Py_VISIT(traverse_module_state->__pyx_tuple__375);
  Py_VISIT(traverse_module_state->__pyx_tuple__376);
  Py_VISIT(traverse_module_state->__pyx_tuple__377);
  Py_VISIT(traverse_module_state->__pyx_tuple__378);
  Py_VISIT(traverse_module_state->__pyx_tuple__379);
  Py_VISIT(traverse_module_state->__pyx_tuple__380);
  Py_VISIT(traverse_module_state->__pyx_tuple__381);
  Py_VISIT(traverse_module_state->__pyx_tuple__382);
  Py_VISIT(traverse_module_state->__pyx_tuple__383);
  Py_VISIT(traverse_module_state->__pyx_tuple__384);
  Py_VISIT(traverse_module_state->__pyx_tuple__385);
  Py_VISIT(traverse_module_state->__pyx_tuple__386);
  Py_VISIT(traverse_module_state->__pyx_tuple__387);
  Py_VISIT(traverse_module_state->__pyx_tuple__388);
  Py_VISIT(traverse_module_state->__pyx_tuple__389);
  Py_VISIT(traverse_module_state->__pyx_tuple__390);
  Py_VISIT(traverse_module_state->__pyx_tuple__391);
  Py_VISIT(traverse_module_state->__pyx_tuple__392);
  Py_VISIT(traverse_module_state->__pyx_tuple__393);
  Py_VISIT(traverse_module_state->__pyx_tuple__394);
  Py_VISIT(traverse_module_state->__pyx_tuple__395);
  Py_VISIT(traverse_module_state->__pyx_tuple__396);
  Py_VISIT(traverse_module_state->__pyx_tuple__397);
  Py_VISIT(traverse_module_state->__pyx_tuple__398);
  Py_VISIT(traverse_module_state->__pyx_tuple__399);
  Py_VISIT(traverse_module_state->__pyx_tuple__400);
  Py_VISIT(traverse_module_state->__pyx_tuple__401);
  Py_VISIT(traverse_module_state->__pyx_tuple__402);
  Py_VISIT(traverse_module_state->__pyx_tuple__403);
  Py_VISIT(traverse_module_state->__pyx_tuple__404);
  Py_VISIT(traverse_module_state->__pyx_tuple__405);
  Py_VISIT(traverse_module_state->__pyx_tuple__406);
  Py_VISIT(traverse_module_state->__pyx_tuple__407);
  Py_VISIT(traverse_module_state->__pyx_tuple__408);
  Py_VISIT(traverse_module_state->__pyx_tuple__409);
  Py_VISIT(traverse_module_state->__pyx_tuple__410);
  Py_VISIT(traverse_module_state->__pyx_tuple__411);
  Py_VISIT(traverse_module_state->__pyx_tuple__412);
  Py_VISIT(traverse_module_state->__pyx_tuple__413);
  Py_VISIT(traverse_module_state->__pyx_tuple__414);
  Py_VISIT(traverse_module_state->__pyx_tuple__415);
  Py_VISIT(traverse_module_state->__pyx_tuple__416);
  Py_VISIT(traverse_module_state->__pyx_tuple__417);
  Py_VISIT(traverse_module_state->__pyx_tuple__418);
  Py_VISIT(traverse_module_state->__pyx_tuple__419);
  Py_VISIT(traverse_module_state->__pyx_tuple__420);
  Py_VISIT(traverse_module_state->__pyx_tuple__421);
  Py_VISIT(traverse_module_state->__pyx_tuple__422);
  Py_VISIT(traverse_module_state->__pyx_tuple__423);
  Py_VISIT(traverse_module_state->__pyx_tuple__424);
  Py_VISIT(traverse_module_state->__pyx_tuple__425);
  Py_VISIT(traverse_module_state->__pyx_tuple__426);
  Py_VISIT(traverse_module_state->__pyx_tuple__427);
  Py_VISIT(traverse_module_state->__pyx_tuple__428);
  Py_VISIT(traverse_module_state->__pyx_tuple__429);
  Py_VISIT(traverse_module_state->__pyx_tuple__430);
  Py_VISIT(traverse_module_state->__pyx_tuple__431);
  Py_VISIT(traverse_module_state->__pyx_tuple__432);
  Py_VISIT(traverse_module_state->__pyx_tuple__433);
  Py_VISIT(traverse_module_state->__pyx_tuple__434);
  Py_VISIT(traverse_module_state->__pyx_tuple__435);
  Py_VISIT(traverse_module_state->__pyx_tuple__436);
  Py_VISIT(traverse_module_state->__pyx_tuple__437);
  Py_VISIT(traverse_module_state->__pyx_tuple__438);
  Py_VISIT(traverse_module_state->__pyx_tuple__439);
  Py_VISIT(traverse_module_state->__pyx_tuple__440);
  Py_VISIT(traverse_module_state->__pyx_tuple__441);
  Py_VISIT(traverse_module_state->__pyx_tuple__442);
  Py_VISIT(traverse_module_state->__pyx_tuple__443);
  Py_VISIT(traverse_module_state->__pyx_tuple__444);
  Py_VISIT(traverse_module_state->__pyx_tuple__445);
  Py_VISIT(traverse_module_state->__pyx_tuple__446);
  Py_VISIT(traverse_module_state->__pyx_tuple__447);
  Py_VISIT(traverse_module_state->__pyx_tuple__448);
  Py_VISIT(traverse_module_state->__pyx_tuple__449);
  Py_VISIT(traverse_module_state->__pyx_tuple__450);
  Py_VISIT(traverse_module_state->__pyx_tuple__451);
  return 0;
}
#endif
/* #### Code section: module_state_defines ### */
#define __pyx_d __pyx_mstate_global->__pyx_d
#define __pyx_b __pyx_mstate_global->__pyx_b
#define __pyx_cython_runtime __pyx_mstate_global->__pyx_cython_runtime
#define __pyx_empty_tuple __pyx_mstate_global->__pyx_empty_tuple
#define __pyx_empty_bytes __pyx_mstate_global->__pyx_empty_bytes
#define __pyx_empty_unicode __pyx_mstate_global->__pyx_empty_unicode
#ifdef __Pyx_CyFunction_USED
#define __pyx_CyFunctionType __pyx_mstate_global->__pyx_CyFunctionType
#endif
#ifdef __Pyx_FusedFunction_USED
#define __pyx_FusedFunctionType __pyx_mstate_global->__pyx_FusedFunctionType
#endif
#ifdef __Pyx_Generator_USED
#define __pyx_GeneratorType __pyx_mstate_global->__pyx_GeneratorType
#endif
#ifdef __Pyx_IterableCoroutine_USED
#define __pyx_IterableCoroutineType __pyx_mstate_global->__pyx_IterableCoroutineType
#endif
#ifdef __Pyx_Coroutine_USED
#define __pyx_CoroutineAwaitType __pyx_mstate_global->__pyx_CoroutineAwaitType
#endif
#ifdef __Pyx_Coroutine_USED
#define __pyx_CoroutineType __pyx_mstate_global->__pyx_CoroutineType
#endif
#if CYTHON_USE_MODULE_STATE
#endif
#if CYTHON_USE_MODULE_STATE
#endif
#if CYTHON_USE_MODULE_STATE
#endif
#if CYTHON_USE_MODULE_STATE
#endif
#if CYTHON_USE_MODULE_STATE
#endif
#define __pyx_n_u_CUDA_PYTHON_CUDA_PER_THREAD_DEFA __pyx_mstate_global->__pyx_n_u_CUDA_PYTHON_CUDA_PER_THREAD_DEFA
#define __pyx_kp_u_Failed_to_dlopen __pyx_mstate_global->__pyx_kp_u_Failed_to_dlopen
#define __pyx_kp_u_Function_cuArray3DCreate_v2_not __pyx_mstate_global->__pyx_kp_u_Function_cuArray3DCreate_v2_not
#define __pyx_kp_u_Function_cuArray3DGetDescriptor __pyx_mstate_global->__pyx_kp_u_Function_cuArray3DGetDescriptor
#define __pyx_kp_u_Function_cuArrayCreate_v2_not_fo __pyx_mstate_global->__pyx_kp_u_Function_cuArrayCreate_v2_not_fo
#define __pyx_kp_u_Function_cuArrayDestroy_not_foun __pyx_mstate_global->__pyx_kp_u_Function_cuArrayDestroy_not_foun
#define __pyx_kp_u_Function_cuArrayGetDescriptor_v2 __pyx_mstate_global->__pyx_kp_u_Function_cuArrayGetDescriptor_v2
#define __pyx_kp_u_Function_cuArrayGetMemoryRequire __pyx_mstate_global->__pyx_kp_u_Function_cuArrayGetMemoryRequire
#define __pyx_kp_u_Function_cuArrayGetPlane_not_fou __pyx_mstate_global->__pyx_kp_u_Function_cuArrayGetPlane_not_fou
#define __pyx_kp_u_Function_cuArrayGetSparsePropert __pyx_mstate_global->__pyx_kp_u_Function_cuArrayGetSparsePropert
#define __pyx_kp_u_Function_cuCoredumpGetAttribute __pyx_mstate_global->__pyx_kp_u_Function_cuCoredumpGetAttribute
#define __pyx_kp_u_Function_cuCoredumpGetAttributeG __pyx_mstate_global->__pyx_kp_u_Function_cuCoredumpGetAttributeG
#define __pyx_kp_u_Function_cuCoredumpSetAttribute __pyx_mstate_global->__pyx_kp_u_Function_cuCoredumpSetAttribute
#define __pyx_kp_u_Function_cuCoredumpSetAttributeG __pyx_mstate_global->__pyx_kp_u_Function_cuCoredumpSetAttributeG
#define __pyx_kp_u_Function_cuCtxAttach_not_found __pyx_mstate_global->__pyx_kp_u_Function_cuCtxAttach_not_found
#define __pyx_kp_u_Function_cuCtxCreate_v2_not_foun __pyx_mstate_global->__pyx_kp_u_Function_cuCtxCreate_v2_not_foun
#define __pyx_kp_u_Function_cuCtxCreate_v3_not_foun __pyx_mstate_global->__pyx_kp_u_Function_cuCtxCreate_v3_not_foun
#define __pyx_kp_u_Function_cuCtxDestroy_v2_not_fou __pyx_mstate_global->__pyx_kp_u_Function_cuCtxDestroy_v2_not_fou
#define __pyx_kp_u_Function_cuCtxDetach_not_found __pyx_mstate_global->__pyx_kp_u_Function_cuCtxDetach_not_found
#define __pyx_kp_u_Function_cuCtxDisablePeerAccess __pyx_mstate_global->__pyx_kp_u_Function_cuCtxDisablePeerAccess
#define __pyx_kp_u_Function_cuCtxEnablePeerAccess_n __pyx_mstate_global->__pyx_kp_u_Function_cuCtxEnablePeerAccess_n
#define __pyx_kp_u_Function_cuCtxFromGreenCtx_not_f __pyx_mstate_global->__pyx_kp_u_Function_cuCtxFromGreenCtx_not_f
#define __pyx_kp_u_Function_cuCtxGetApiVersion_not __pyx_mstate_global->__pyx_kp_u_Function_cuCtxGetApiVersion_not
#define __pyx_kp_u_Function_cuCtxGetCacheConfig_not __pyx_mstate_global->__pyx_kp_u_Function_cuCtxGetCacheConfig_not
#define __pyx_kp_u_Function_cuCtxGetCurrent_not_fou __pyx_mstate_global->__pyx_kp_u_Function_cuCtxGetCurrent_not_fou
#define __pyx_kp_u_Function_cuCtxGetDevResource_not __pyx_mstate_global->__pyx_kp_u_Function_cuCtxGetDevResource_not
#define __pyx_kp_u_Function_cuCtxGetDevice_not_foun __pyx_mstate_global->__pyx_kp_u_Function_cuCtxGetDevice_not_foun
#define __pyx_kp_u_Function_cuCtxGetExecAffinity_no __pyx_mstate_global->__pyx_kp_u_Function_cuCtxGetExecAffinity_no
#define __pyx_kp_u_Function_cuCtxGetFlags_not_found __pyx_mstate_global->__pyx_kp_u_Function_cuCtxGetFlags_not_found
#define __pyx_kp_u_Function_cuCtxGetId_not_found __pyx_mstate_global->__pyx_kp_u_Function_cuCtxGetId_not_found
#define __pyx_kp_u_Function_cuCtxGetLimit_not_found __pyx_mstate_global->__pyx_kp_u_Function_cuCtxGetLimit_not_found
#define __pyx_kp_u_Function_cuCtxGetSharedMemConfig __pyx_mstate_global->__pyx_kp_u_Function_cuCtxGetSharedMemConfig
#define __pyx_kp_u_Function_cuCtxGetStreamPriorityR __pyx_mstate_global->__pyx_kp_u_Function_cuCtxGetStreamPriorityR
#define __pyx_kp_u_Function_cuCtxPopCurrent_v2_not __pyx_mstate_global->__pyx_kp_u_Function_cuCtxPopCurrent_v2_not
#define __pyx_kp_u_Function_cuCtxPushCurrent_v2_not __pyx_mstate_global->__pyx_kp_u_Function_cuCtxPushCurrent_v2_not
#define __pyx_kp_u_Function_cuCtxResetPersistingL2C __pyx_mstate_global->__pyx_kp_u_Function_cuCtxResetPersistingL2C
#define __pyx_kp_u_Function_cuCtxSetCacheConfig_not __pyx_mstate_global->__pyx_kp_u_Function_cuCtxSetCacheConfig_not
#define __pyx_kp_u_Function_cuCtxSetCurrent_not_fou __pyx_mstate_global->__pyx_kp_u_Function_cuCtxSetCurrent_not_fou
#define __pyx_kp_u_Function_cuCtxSetFlags_not_found __pyx_mstate_global->__pyx_kp_u_Function_cuCtxSetFlags_not_found
#define __pyx_kp_u_Function_cuCtxSetLimit_not_found __pyx_mstate_global->__pyx_kp_u_Function_cuCtxSetLimit_not_found
#define __pyx_kp_u_Function_cuCtxSetSharedMemConfig __pyx_mstate_global->__pyx_kp_u_Function_cuCtxSetSharedMemConfig
#define __pyx_kp_u_Function_cuCtxSynchronize_not_fo __pyx_mstate_global->__pyx_kp_u_Function_cuCtxSynchronize_not_fo
#define __pyx_kp_u_Function_cuDestroyExternalMemory __pyx_mstate_global->__pyx_kp_u_Function_cuDestroyExternalMemory
#define __pyx_kp_u_Function_cuDestroyExternalSemaph __pyx_mstate_global->__pyx_kp_u_Function_cuDestroyExternalSemaph
#define __pyx_kp_u_Function_cuDevResourceGenerateDe __pyx_mstate_global->__pyx_kp_u_Function_cuDevResourceGenerateDe
#define __pyx_kp_u_Function_cuDevSmResourceSplitByC __pyx_mstate_global->__pyx_kp_u_Function_cuDevSmResourceSplitByC
#define __pyx_kp_u_Function_cuDeviceCanAccessPeer_n __pyx_mstate_global->__pyx_kp_u_Function_cuDeviceCanAccessPeer_n
#define __pyx_kp_u_Function_cuDeviceComputeCapabili __pyx_mstate_global->__pyx_kp_u_Function_cuDeviceComputeCapabili
#define __pyx_kp_u_Function_cuDeviceGetAttribute_no __pyx_mstate_global->__pyx_kp_u_Function_cuDeviceGetAttribute_no
#define __pyx_kp_u_Function_cuDeviceGetByPCIBusId_n __pyx_mstate_global->__pyx_kp_u_Function_cuDeviceGetByPCIBusId_n
#define __pyx_kp_u_Function_cuDeviceGetCount_not_fo __pyx_mstate_global->__pyx_kp_u_Function_cuDeviceGetCount_not_fo
#define __pyx_kp_u_Function_cuDeviceGetDefaultMemPo __pyx_mstate_global->__pyx_kp_u_Function_cuDeviceGetDefaultMemPo
#define __pyx_kp_u_Function_cuDeviceGetDevResource __pyx_mstate_global->__pyx_kp_u_Function_cuDeviceGetDevResource
#define __pyx_kp_u_Function_cuDeviceGetExecAffinity __pyx_mstate_global->__pyx_kp_u_Function_cuDeviceGetExecAffinity
#define __pyx_kp_u_Function_cuDeviceGetGraphMemAttr __pyx_mstate_global->__pyx_kp_u_Function_cuDeviceGetGraphMemAttr
#define __pyx_kp_u_Function_cuDeviceGetLuid_not_fou __pyx_mstate_global->__pyx_kp_u_Function_cuDeviceGetLuid_not_fou
#define __pyx_kp_u_Function_cuDeviceGetMemPool_not __pyx_mstate_global->__pyx_kp_u_Function_cuDeviceGetMemPool_not
#define __pyx_kp_u_Function_cuDeviceGetName_not_fou __pyx_mstate_global->__pyx_kp_u_Function_cuDeviceGetName_not_fou
#define __pyx_kp_u_Function_cuDeviceGetNvSciSyncAtt __pyx_mstate_global->__pyx_kp_u_Function_cuDeviceGetNvSciSyncAtt
#define __pyx_kp_u_Function_cuDeviceGetP2PAttribute __pyx_mstate_global->__pyx_kp_u_Function_cuDeviceGetP2PAttribute
#define __pyx_kp_u_Function_cuDeviceGetPCIBusId_not __pyx_mstate_global->__pyx_kp_u_Function_cuDeviceGetPCIBusId_not
#define __pyx_kp_u_Function_cuDeviceGetProperties_n __pyx_mstate_global->__pyx_kp_u_Function_cuDeviceGetProperties_n
#define __pyx_kp_u_Function_cuDeviceGetTexture1DLin __pyx_mstate_global->__pyx_kp_u_Function_cuDeviceGetTexture1DLin
#define __pyx_kp_u_Function_cuDeviceGetUuid_not_fou __pyx_mstate_global->__pyx_kp_u_Function_cuDeviceGetUuid_not_fou
#define __pyx_kp_u_Function_cuDeviceGetUuid_v2_not __pyx_mstate_global->__pyx_kp_u_Function_cuDeviceGetUuid_v2_not
#define __pyx_kp_u_Function_cuDeviceGet_not_found __pyx_mstate_global->__pyx_kp_u_Function_cuDeviceGet_not_found
#define __pyx_kp_u_Function_cuDeviceGraphMemTrim_no __pyx_mstate_global->__pyx_kp_u_Function_cuDeviceGraphMemTrim_no
#define __pyx_kp_u_Function_cuDevicePrimaryCtxGetSt __pyx_mstate_global->__pyx_kp_u_Function_cuDevicePrimaryCtxGetSt
#define __pyx_kp_u_Function_cuDevicePrimaryCtxRelea __pyx_mstate_global->__pyx_kp_u_Function_cuDevicePrimaryCtxRelea
#define __pyx_kp_u_Function_cuDevicePrimaryCtxReset __pyx_mstate_global->__pyx_kp_u_Function_cuDevicePrimaryCtxReset
#define __pyx_kp_u_Function_cuDevicePrimaryCtxRetai __pyx_mstate_global->__pyx_kp_u_Function_cuDevicePrimaryCtxRetai
#define __pyx_kp_u_Function_cuDevicePrimaryCtxSetFl __pyx_mstate_global->__pyx_kp_u_Function_cuDevicePrimaryCtxSetFl
#define __pyx_kp_u_Function_cuDeviceRegisterAsyncNo __pyx_mstate_global->__pyx_kp_u_Function_cuDeviceRegisterAsyncNo
#define __pyx_kp_u_Function_cuDeviceSetGraphMemAttr __pyx_mstate_global->__pyx_kp_u_Function_cuDeviceSetGraphMemAttr
#define __pyx_kp_u_Function_cuDeviceSetMemPool_not __pyx_mstate_global->__pyx_kp_u_Function_cuDeviceSetMemPool_not
#define __pyx_kp_u_Function_cuDeviceTotalMem_v2_not __pyx_mstate_global->__pyx_kp_u_Function_cuDeviceTotalMem_v2_not
#define __pyx_kp_u_Function_cuDeviceUnregisterAsync __pyx_mstate_global->__pyx_kp_u_Function_cuDeviceUnregisterAsync
#define __pyx_kp_u_Function_cuDriverGetVersion_not __pyx_mstate_global->__pyx_kp_u_Function_cuDriverGetVersion_not
#define __pyx_kp_u_Function_cuEGLStreamConsumerAcqu __pyx_mstate_global->__pyx_kp_u_Function_cuEGLStreamConsumerAcqu
#define __pyx_kp_u_Function_cuEGLStreamConsumerConn __pyx_mstate_global->__pyx_kp_u_Function_cuEGLStreamConsumerConn
#define __pyx_kp_u_Function_cuEGLStreamConsumerConn_2 __pyx_mstate_global->__pyx_kp_u_Function_cuEGLStreamConsumerConn_2
#define __pyx_kp_u_Function_cuEGLStreamConsumerDisc __pyx_mstate_global->__pyx_kp_u_Function_cuEGLStreamConsumerDisc
#define __pyx_kp_u_Function_cuEGLStreamConsumerRele __pyx_mstate_global->__pyx_kp_u_Function_cuEGLStreamConsumerRele
#define __pyx_kp_u_Function_cuEGLStreamProducerConn __pyx_mstate_global->__pyx_kp_u_Function_cuEGLStreamProducerConn
#define __pyx_kp_u_Function_cuEGLStreamProducerDisc __pyx_mstate_global->__pyx_kp_u_Function_cuEGLStreamProducerDisc
#define __pyx_kp_u_Function_cuEGLStreamProducerPres __pyx_mstate_global->__pyx_kp_u_Function_cuEGLStreamProducerPres
#define __pyx_kp_u_Function_cuEGLStreamProducerRetu __pyx_mstate_global->__pyx_kp_u_Function_cuEGLStreamProducerRetu
#define __pyx_kp_u_Function_cuEventCreateFromEGLSyn __pyx_mstate_global->__pyx_kp_u_Function_cuEventCreateFromEGLSyn
#define __pyx_kp_u_Function_cuEventCreate_not_found __pyx_mstate_global->__pyx_kp_u_Function_cuEventCreate_not_found
#define __pyx_kp_u_Function_cuEventDestroy_v2_not_f __pyx_mstate_global->__pyx_kp_u_Function_cuEventDestroy_v2_not_f
#define __pyx_kp_u_Function_cuEventElapsedTime_not __pyx_mstate_global->__pyx_kp_u_Function_cuEventElapsedTime_not
#define __pyx_kp_u_Function_cuEventQuery_not_found __pyx_mstate_global->__pyx_kp_u_Function_cuEventQuery_not_found
#define __pyx_kp_u_Function_cuEventRecordWithFlags __pyx_mstate_global->__pyx_kp_u_Function_cuEventRecordWithFlags
#define __pyx_kp_u_Function_cuEventRecord_not_found __pyx_mstate_global->__pyx_kp_u_Function_cuEventRecord_not_found
#define __pyx_kp_u_Function_cuEventSynchronize_not __pyx_mstate_global->__pyx_kp_u_Function_cuEventSynchronize_not
#define __pyx_kp_u_Function_cuExternalMemoryGetMapp __pyx_mstate_global->__pyx_kp_u_Function_cuExternalMemoryGetMapp
#define __pyx_kp_u_Function_cuExternalMemoryGetMapp_2 __pyx_mstate_global->__pyx_kp_u_Function_cuExternalMemoryGetMapp_2
#define __pyx_kp_u_Function_cuFlushGPUDirectRDMAWri __pyx_mstate_global->__pyx_kp_u_Function_cuFlushGPUDirectRDMAWri
#define __pyx_kp_u_Function_cuFuncGetAttribute_not __pyx_mstate_global->__pyx_kp_u_Function_cuFuncGetAttribute_not
#define __pyx_kp_u_Function_cuFuncGetModule_not_fou __pyx_mstate_global->__pyx_kp_u_Function_cuFuncGetModule_not_fou
#define __pyx_kp_u_Function_cuFuncGetName_not_found __pyx_mstate_global->__pyx_kp_u_Function_cuFuncGetName_not_found
#define __pyx_kp_u_Function_cuFuncGetParamInfo_not __pyx_mstate_global->__pyx_kp_u_Function_cuFuncGetParamInfo_not
#define __pyx_kp_u_Function_cuFuncIsLoaded_not_foun __pyx_mstate_global->__pyx_kp_u_Function_cuFuncIsLoaded_not_foun
#define __pyx_kp_u_Function_cuFuncLoad_not_found __pyx_mstate_global->__pyx_kp_u_Function_cuFuncLoad_not_found
#define __pyx_kp_u_Function_cuFuncSetAttribute_not __pyx_mstate_global->__pyx_kp_u_Function_cuFuncSetAttribute_not
#define __pyx_kp_u_Function_cuFuncSetBlockShape_not __pyx_mstate_global->__pyx_kp_u_Function_cuFuncSetBlockShape_not
#define __pyx_kp_u_Function_cuFuncSetCacheConfig_no __pyx_mstate_global->__pyx_kp_u_Function_cuFuncSetCacheConfig_no
#define __pyx_kp_u_Function_cuFuncSetSharedMemConfi __pyx_mstate_global->__pyx_kp_u_Function_cuFuncSetSharedMemConfi
#define __pyx_kp_u_Function_cuFuncSetSharedSize_not __pyx_mstate_global->__pyx_kp_u_Function_cuFuncSetSharedSize_not
#define __pyx_kp_u_Function_cuGLGetDevices_v2_not_f __pyx_mstate_global->__pyx_kp_u_Function_cuGLGetDevices_v2_not_f
#define __pyx_kp_u_Function_cuGetErrorName_not_foun __pyx_mstate_global->__pyx_kp_u_Function_cuGetErrorName_not_foun
#define __pyx_kp_u_Function_cuGetErrorString_not_fo __pyx_mstate_global->__pyx_kp_u_Function_cuGetErrorString_not_fo
#define __pyx_kp_u_Function_cuGetExportTable_not_fo __pyx_mstate_global->__pyx_kp_u_Function_cuGetExportTable_not_fo
#define __pyx_kp_u_Function_cuGetProcAddress_v2_not __pyx_mstate_global->__pyx_kp_u_Function_cuGetProcAddress_v2_not
#define __pyx_kp_u_Function_cuGraphAddBatchMemOpNod __pyx_mstate_global->__pyx_kp_u_Function_cuGraphAddBatchMemOpNod
#define __pyx_kp_u_Function_cuGraphAddChildGraphNod __pyx_mstate_global->__pyx_kp_u_Function_cuGraphAddChildGraphNod
#define __pyx_kp_u_Function_cuGraphAddDependencies __pyx_mstate_global->__pyx_kp_u_Function_cuGraphAddDependencies
#define __pyx_kp_u_Function_cuGraphAddDependencies_2 __pyx_mstate_global->__pyx_kp_u_Function_cuGraphAddDependencies_2
#define __pyx_kp_u_Function_cuGraphAddEmptyNode_not __pyx_mstate_global->__pyx_kp_u_Function_cuGraphAddEmptyNode_not
#define __pyx_kp_u_Function_cuGraphAddEventRecordNo __pyx_mstate_global->__pyx_kp_u_Function_cuGraphAddEventRecordNo
#define __pyx_kp_u_Function_cuGraphAddEventWaitNode __pyx_mstate_global->__pyx_kp_u_Function_cuGraphAddEventWaitNode
#define __pyx_kp_u_Function_cuGraphAddExternalSemap __pyx_mstate_global->__pyx_kp_u_Function_cuGraphAddExternalSemap
#define __pyx_kp_u_Function_cuGraphAddExternalSemap_2 __pyx_mstate_global->__pyx_kp_u_Function_cuGraphAddExternalSemap_2
#define __pyx_kp_u_Function_cuGraphAddHostNode_not __pyx_mstate_global->__pyx_kp_u_Function_cuGraphAddHostNode_not
#define __pyx_kp_u_Function_cuGraphAddKernelNode_v2 __pyx_mstate_global->__pyx_kp_u_Function_cuGraphAddKernelNode_v2
#define __pyx_kp_u_Function_cuGraphAddMemAllocNode __pyx_mstate_global->__pyx_kp_u_Function_cuGraphAddMemAllocNode
#define __pyx_kp_u_Function_cuGraphAddMemFreeNode_n __pyx_mstate_global->__pyx_kp_u_Function_cuGraphAddMemFreeNode_n
#define __pyx_kp_u_Function_cuGraphAddMemcpyNode_no __pyx_mstate_global->__pyx_kp_u_Function_cuGraphAddMemcpyNode_no
#define __pyx_kp_u_Function_cuGraphAddMemsetNode_no __pyx_mstate_global->__pyx_kp_u_Function_cuGraphAddMemsetNode_no
#define __pyx_kp_u_Function_cuGraphAddNode_not_foun __pyx_mstate_global->__pyx_kp_u_Function_cuGraphAddNode_not_foun
#define __pyx_kp_u_Function_cuGraphAddNode_v2_not_f __pyx_mstate_global->__pyx_kp_u_Function_cuGraphAddNode_v2_not_f
#define __pyx_kp_u_Function_cuGraphBatchMemOpNodeGe __pyx_mstate_global->__pyx_kp_u_Function_cuGraphBatchMemOpNodeGe
#define __pyx_kp_u_Function_cuGraphBatchMemOpNodeSe __pyx_mstate_global->__pyx_kp_u_Function_cuGraphBatchMemOpNodeSe
#define __pyx_kp_u_Function_cuGraphChildGraphNodeGe __pyx_mstate_global->__pyx_kp_u_Function_cuGraphChildGraphNodeGe
#define __pyx_kp_u_Function_cuGraphClone_not_found __pyx_mstate_global->__pyx_kp_u_Function_cuGraphClone_not_found
#define __pyx_kp_u_Function_cuGraphConditionalHandl __pyx_mstate_global->__pyx_kp_u_Function_cuGraphConditionalHandl
#define __pyx_kp_u_Function_cuGraphCreate_not_found __pyx_mstate_global->__pyx_kp_u_Function_cuGraphCreate_not_found
#define __pyx_kp_u_Function_cuGraphDebugDotPrint_no __pyx_mstate_global->__pyx_kp_u_Function_cuGraphDebugDotPrint_no
#define __pyx_kp_u_Function_cuGraphDestroyNode_not __pyx_mstate_global->__pyx_kp_u_Function_cuGraphDestroyNode_not
#define __pyx_kp_u_Function_cuGraphDestroy_not_foun __pyx_mstate_global->__pyx_kp_u_Function_cuGraphDestroy_not_foun
#define __pyx_kp_u_Function_cuGraphEventRecordNodeG __pyx_mstate_global->__pyx_kp_u_Function_cuGraphEventRecordNodeG
#define __pyx_kp_u_Function_cuGraphEventRecordNodeS __pyx_mstate_global->__pyx_kp_u_Function_cuGraphEventRecordNodeS
#define __pyx_kp_u_Function_cuGraphEventWaitNodeGet __pyx_mstate_global->__pyx_kp_u_Function_cuGraphEventWaitNodeGet
#define __pyx_kp_u_Function_cuGraphEventWaitNodeSet __pyx_mstate_global->__pyx_kp_u_Function_cuGraphEventWaitNodeSet
#define __pyx_kp_u_Function_cuGraphExecBatchMemOpNo __pyx_mstate_global->__pyx_kp_u_Function_cuGraphExecBatchMemOpNo
#define __pyx_kp_u_Function_cuGraphExecChildGraphNo __pyx_mstate_global->__pyx_kp_u_Function_cuGraphExecChildGraphNo
#define __pyx_kp_u_Function_cuGraphExecDestroy_not __pyx_mstate_global->__pyx_kp_u_Function_cuGraphExecDestroy_not
#define __pyx_kp_u_Function_cuGraphExecEventRecordN __pyx_mstate_global->__pyx_kp_u_Function_cuGraphExecEventRecordN
#define __pyx_kp_u_Function_cuGraphExecEventWaitNod __pyx_mstate_global->__pyx_kp_u_Function_cuGraphExecEventWaitNod
#define __pyx_kp_u_Function_cuGraphExecExternalSema __pyx_mstate_global->__pyx_kp_u_Function_cuGraphExecExternalSema
#define __pyx_kp_u_Function_cuGraphExecExternalSema_2 __pyx_mstate_global->__pyx_kp_u_Function_cuGraphExecExternalSema_2
#define __pyx_kp_u_Function_cuGraphExecGetFlags_not __pyx_mstate_global->__pyx_kp_u_Function_cuGraphExecGetFlags_not
#define __pyx_kp_u_Function_cuGraphExecHostNodeSetP __pyx_mstate_global->__pyx_kp_u_Function_cuGraphExecHostNodeSetP
#define __pyx_kp_u_Function_cuGraphExecKernelNodeSe __pyx_mstate_global->__pyx_kp_u_Function_cuGraphExecKernelNodeSe
#define __pyx_kp_u_Function_cuGraphExecMemcpyNodeSe __pyx_mstate_global->__pyx_kp_u_Function_cuGraphExecMemcpyNodeSe
#define __pyx_kp_u_Function_cuGraphExecMemsetNodeSe __pyx_mstate_global->__pyx_kp_u_Function_cuGraphExecMemsetNodeSe
#define __pyx_kp_u_Function_cuGraphExecNodeSetParam __pyx_mstate_global->__pyx_kp_u_Function_cuGraphExecNodeSetParam
#define __pyx_kp_u_Function_cuGraphExecUpdate_v2_no __pyx_mstate_global->__pyx_kp_u_Function_cuGraphExecUpdate_v2_no
#define __pyx_kp_u_Function_cuGraphExternalSemaphor __pyx_mstate_global->__pyx_kp_u_Function_cuGraphExternalSemaphor
#define __pyx_kp_u_Function_cuGraphExternalSemaphor_2 __pyx_mstate_global->__pyx_kp_u_Function_cuGraphExternalSemaphor_2
#define __pyx_kp_u_Function_cuGraphExternalSemaphor_3 __pyx_mstate_global->__pyx_kp_u_Function_cuGraphExternalSemaphor_3
#define __pyx_kp_u_Function_cuGraphExternalSemaphor_4 __pyx_mstate_global->__pyx_kp_u_Function_cuGraphExternalSemaphor_4
#define __pyx_kp_u_Function_cuGraphGetEdges_not_fou __pyx_mstate_global->__pyx_kp_u_Function_cuGraphGetEdges_not_fou
#define __pyx_kp_u_Function_cuGraphGetEdges_v2_not __pyx_mstate_global->__pyx_kp_u_Function_cuGraphGetEdges_v2_not
#define __pyx_kp_u_Function_cuGraphGetNodes_not_fou __pyx_mstate_global->__pyx_kp_u_Function_cuGraphGetNodes_not_fou
#define __pyx_kp_u_Function_cuGraphGetRootNodes_not __pyx_mstate_global->__pyx_kp_u_Function_cuGraphGetRootNodes_not
#define __pyx_kp_u_Function_cuGraphHostNodeGetParam __pyx_mstate_global->__pyx_kp_u_Function_cuGraphHostNodeGetParam
#define __pyx_kp_u_Function_cuGraphHostNodeSetParam __pyx_mstate_global->__pyx_kp_u_Function_cuGraphHostNodeSetParam
#define __pyx_kp_u_Function_cuGraphInstantiateWithF __pyx_mstate_global->__pyx_kp_u_Function_cuGraphInstantiateWithF
#define __pyx_kp_u_Function_cuGraphInstantiateWithP __pyx_mstate_global->__pyx_kp_u_Function_cuGraphInstantiateWithP
#define __pyx_kp_u_Function_cuGraphKernelNodeCopyAt __pyx_mstate_global->__pyx_kp_u_Function_cuGraphKernelNodeCopyAt
#define __pyx_kp_u_Function_cuGraphKernelNodeGetAtt __pyx_mstate_global->__pyx_kp_u_Function_cuGraphKernelNodeGetAtt
#define __pyx_kp_u_Function_cuGraphKernelNodeGetPar __pyx_mstate_global->__pyx_kp_u_Function_cuGraphKernelNodeGetPar
#define __pyx_kp_u_Function_cuGraphKernelNodeSetAtt __pyx_mstate_global->__pyx_kp_u_Function_cuGraphKernelNodeSetAtt
#define __pyx_kp_u_Function_cuGraphKernelNodeSetPar __pyx_mstate_global->__pyx_kp_u_Function_cuGraphKernelNodeSetPar
#define __pyx_kp_u_Function_cuGraphLaunch_not_found __pyx_mstate_global->__pyx_kp_u_Function_cuGraphLaunch_not_found
#define __pyx_kp_u_Function_cuGraphMemAllocNodeGetP __pyx_mstate_global->__pyx_kp_u_Function_cuGraphMemAllocNodeGetP
#define __pyx_kp_u_Function_cuGraphMemFreeNodeGetPa __pyx_mstate_global->__pyx_kp_u_Function_cuGraphMemFreeNodeGetPa
#define __pyx_kp_u_Function_cuGraphMemcpyNodeGetPar __pyx_mstate_global->__pyx_kp_u_Function_cuGraphMemcpyNodeGetPar
#define __pyx_kp_u_Function_cuGraphMemcpyNodeSetPar __pyx_mstate_global->__pyx_kp_u_Function_cuGraphMemcpyNodeSetPar
#define __pyx_kp_u_Function_cuGraphMemsetNodeGetPar __pyx_mstate_global->__pyx_kp_u_Function_cuGraphMemsetNodeGetPar
#define __pyx_kp_u_Function_cuGraphMemsetNodeSetPar __pyx_mstate_global->__pyx_kp_u_Function_cuGraphMemsetNodeSetPar
#define __pyx_kp_u_Function_cuGraphNodeFindInClone __pyx_mstate_global->__pyx_kp_u_Function_cuGraphNodeFindInClone
#define __pyx_kp_u_Function_cuGraphNodeGetDependenc __pyx_mstate_global->__pyx_kp_u_Function_cuGraphNodeGetDependenc
#define __pyx_kp_u_Function_cuGraphNodeGetDependenc_2 __pyx_mstate_global->__pyx_kp_u_Function_cuGraphNodeGetDependenc_2
#define __pyx_kp_u_Function_cuGraphNodeGetDependent __pyx_mstate_global->__pyx_kp_u_Function_cuGraphNodeGetDependent
#define __pyx_kp_u_Function_cuGraphNodeGetDependent_2 __pyx_mstate_global->__pyx_kp_u_Function_cuGraphNodeGetDependent_2
#define __pyx_kp_u_Function_cuGraphNodeGetEnabled_n __pyx_mstate_global->__pyx_kp_u_Function_cuGraphNodeGetEnabled_n
#define __pyx_kp_u_Function_cuGraphNodeGetType_not __pyx_mstate_global->__pyx_kp_u_Function_cuGraphNodeGetType_not
#define __pyx_kp_u_Function_cuGraphNodeSetEnabled_n __pyx_mstate_global->__pyx_kp_u_Function_cuGraphNodeSetEnabled_n
#define __pyx_kp_u_Function_cuGraphNodeSetParams_no __pyx_mstate_global->__pyx_kp_u_Function_cuGraphNodeSetParams_no
#define __pyx_kp_u_Function_cuGraphReleaseUserObjec __pyx_mstate_global->__pyx_kp_u_Function_cuGraphReleaseUserObjec
#define __pyx_kp_u_Function_cuGraphRemoveDependenci __pyx_mstate_global->__pyx_kp_u_Function_cuGraphRemoveDependenci
#define __pyx_kp_u_Function_cuGraphRemoveDependenci_2 __pyx_mstate_global->__pyx_kp_u_Function_cuGraphRemoveDependenci_2
#define __pyx_kp_u_Function_cuGraphRetainUserObject __pyx_mstate_global->__pyx_kp_u_Function_cuGraphRetainUserObject
#define __pyx_kp_u_Function_cuGraphUpload_not_found __pyx_mstate_global->__pyx_kp_u_Function_cuGraphUpload_not_found
#define __pyx_kp_u_Function_cuGraphicsEGLRegisterIm __pyx_mstate_global->__pyx_kp_u_Function_cuGraphicsEGLRegisterIm
#define __pyx_kp_u_Function_cuGraphicsGLRegisterBuf __pyx_mstate_global->__pyx_kp_u_Function_cuGraphicsGLRegisterBuf
#define __pyx_kp_u_Function_cuGraphicsGLRegisterIma __pyx_mstate_global->__pyx_kp_u_Function_cuGraphicsGLRegisterIma
#define __pyx_kp_u_Function_cuGraphicsMapResources __pyx_mstate_global->__pyx_kp_u_Function_cuGraphicsMapResources
#define __pyx_kp_u_Function_cuGraphicsResourceGetMa __pyx_mstate_global->__pyx_kp_u_Function_cuGraphicsResourceGetMa
#define __pyx_kp_u_Function_cuGraphicsResourceGetMa_2 __pyx_mstate_global->__pyx_kp_u_Function_cuGraphicsResourceGetMa_2
#define __pyx_kp_u_Function_cuGraphicsResourceGetMa_3 __pyx_mstate_global->__pyx_kp_u_Function_cuGraphicsResourceGetMa_3
#define __pyx_kp_u_Function_cuGraphicsResourceSetMa __pyx_mstate_global->__pyx_kp_u_Function_cuGraphicsResourceSetMa
#define __pyx_kp_u_Function_cuGraphicsSubResourceGe __pyx_mstate_global->__pyx_kp_u_Function_cuGraphicsSubResourceGe
#define __pyx_kp_u_Function_cuGraphicsUnmapResource __pyx_mstate_global->__pyx_kp_u_Function_cuGraphicsUnmapResource
#define __pyx_kp_u_Function_cuGraphicsUnregisterRes __pyx_mstate_global->__pyx_kp_u_Function_cuGraphicsUnregisterRes
#define __pyx_kp_u_Function_cuGraphicsVDPAURegister __pyx_mstate_global->__pyx_kp_u_Function_cuGraphicsVDPAURegister
#define __pyx_kp_u_Function_cuGraphicsVDPAURegister_2 __pyx_mstate_global->__pyx_kp_u_Function_cuGraphicsVDPAURegister_2
#define __pyx_kp_u_Function_cuGreenCtxCreate_not_fo __pyx_mstate_global->__pyx_kp_u_Function_cuGreenCtxCreate_not_fo
#define __pyx_kp_u_Function_cuGreenCtxDestroy_not_f __pyx_mstate_global->__pyx_kp_u_Function_cuGreenCtxDestroy_not_f
#define __pyx_kp_u_Function_cuGreenCtxGetDevResourc __pyx_mstate_global->__pyx_kp_u_Function_cuGreenCtxGetDevResourc
#define __pyx_kp_u_Function_cuGreenCtxRecordEvent_n __pyx_mstate_global->__pyx_kp_u_Function_cuGreenCtxRecordEvent_n
#define __pyx_kp_u_Function_cuGreenCtxWaitEvent_not __pyx_mstate_global->__pyx_kp_u_Function_cuGreenCtxWaitEvent_not
#define __pyx_kp_u_Function_cuImportExternalMemory __pyx_mstate_global->__pyx_kp_u_Function_cuImportExternalMemory
#define __pyx_kp_u_Function_cuImportExternalSemapho __pyx_mstate_global->__pyx_kp_u_Function_cuImportExternalSemapho
#define __pyx_kp_u_Function_cuInit_not_found __pyx_mstate_global->__pyx_kp_u_Function_cuInit_not_found
#define __pyx_kp_u_Function_cuIpcCloseMemHandle_not __pyx_mstate_global->__pyx_kp_u_Function_cuIpcCloseMemHandle_not
#define __pyx_kp_u_Function_cuIpcGetEventHandle_not __pyx_mstate_global->__pyx_kp_u_Function_cuIpcGetEventHandle_not
#define __pyx_kp_u_Function_cuIpcGetMemHandle_not_f __pyx_mstate_global->__pyx_kp_u_Function_cuIpcGetMemHandle_not_f
#define __pyx_kp_u_Function_cuIpcOpenEventHandle_no __pyx_mstate_global->__pyx_kp_u_Function_cuIpcOpenEventHandle_no
#define __pyx_kp_u_Function_cuIpcOpenMemHandle_v2_n __pyx_mstate_global->__pyx_kp_u_Function_cuIpcOpenMemHandle_v2_n
#define __pyx_kp_u_Function_cuKernelGetAttribute_no __pyx_mstate_global->__pyx_kp_u_Function_cuKernelGetAttribute_no
#define __pyx_kp_u_Function_cuKernelGetFunction_not __pyx_mstate_global->__pyx_kp_u_Function_cuKernelGetFunction_not
#define __pyx_kp_u_Function_cuKernelGetName_not_fou __pyx_mstate_global->__pyx_kp_u_Function_cuKernelGetName_not_fou
#define __pyx_kp_u_Function_cuKernelGetParamInfo_no __pyx_mstate_global->__pyx_kp_u_Function_cuKernelGetParamInfo_no
#define __pyx_kp_u_Function_cuKernelSetAttribute_no __pyx_mstate_global->__pyx_kp_u_Function_cuKernelSetAttribute_no
#define __pyx_kp_u_Function_cuKernelSetCacheConfig __pyx_mstate_global->__pyx_kp_u_Function_cuKernelSetCacheConfig
#define __pyx_kp_u_Function_cuLaunchCooperativeKern __pyx_mstate_global->__pyx_kp_u_Function_cuLaunchCooperativeKern
#define __pyx_kp_u_Function_cuLaunchCooperativeKern_2 __pyx_mstate_global->__pyx_kp_u_Function_cuLaunchCooperativeKern_2
#define __pyx_kp_u_Function_cuLaunchGridAsync_not_f __pyx_mstate_global->__pyx_kp_u_Function_cuLaunchGridAsync_not_f
#define __pyx_kp_u_Function_cuLaunchGrid_not_found __pyx_mstate_global->__pyx_kp_u_Function_cuLaunchGrid_not_found
#define __pyx_kp_u_Function_cuLaunchHostFunc_not_fo __pyx_mstate_global->__pyx_kp_u_Function_cuLaunchHostFunc_not_fo
#define __pyx_kp_u_Function_cuLaunchKernelEx_not_fo __pyx_mstate_global->__pyx_kp_u_Function_cuLaunchKernelEx_not_fo
#define __pyx_kp_u_Function_cuLaunchKernel_not_foun __pyx_mstate_global->__pyx_kp_u_Function_cuLaunchKernel_not_foun
#define __pyx_kp_u_Function_cuLaunch_not_found __pyx_mstate_global->__pyx_kp_u_Function_cuLaunch_not_found
#define __pyx_kp_u_Function_cuLibraryEnumerateKerne __pyx_mstate_global->__pyx_kp_u_Function_cuLibraryEnumerateKerne
#define __pyx_kp_u_Function_cuLibraryGetGlobal_not __pyx_mstate_global->__pyx_kp_u_Function_cuLibraryGetGlobal_not
#define __pyx_kp_u_Function_cuLibraryGetKernelCount __pyx_mstate_global->__pyx_kp_u_Function_cuLibraryGetKernelCount
#define __pyx_kp_u_Function_cuLibraryGetKernel_not __pyx_mstate_global->__pyx_kp_u_Function_cuLibraryGetKernel_not
#define __pyx_kp_u_Function_cuLibraryGetManaged_not __pyx_mstate_global->__pyx_kp_u_Function_cuLibraryGetManaged_not
#define __pyx_kp_u_Function_cuLibraryGetModule_not __pyx_mstate_global->__pyx_kp_u_Function_cuLibraryGetModule_not
#define __pyx_kp_u_Function_cuLibraryGetUnifiedFunc __pyx_mstate_global->__pyx_kp_u_Function_cuLibraryGetUnifiedFunc
#define __pyx_kp_u_Function_cuLibraryLoadData_not_f __pyx_mstate_global->__pyx_kp_u_Function_cuLibraryLoadData_not_f
#define __pyx_kp_u_Function_cuLibraryLoadFromFile_n __pyx_mstate_global->__pyx_kp_u_Function_cuLibraryLoadFromFile_n
#define __pyx_kp_u_Function_cuLibraryUnload_not_fou __pyx_mstate_global->__pyx_kp_u_Function_cuLibraryUnload_not_fou
#define __pyx_kp_u_Function_cuLinkAddData_v2_not_fo __pyx_mstate_global->__pyx_kp_u_Function_cuLinkAddData_v2_not_fo
#define __pyx_kp_u_Function_cuLinkAddFile_v2_not_fo __pyx_mstate_global->__pyx_kp_u_Function_cuLinkAddFile_v2_not_fo
#define __pyx_kp_u_Function_cuLinkComplete_not_foun __pyx_mstate_global->__pyx_kp_u_Function_cuLinkComplete_not_foun
#define __pyx_kp_u_Function_cuLinkCreate_v2_not_fou __pyx_mstate_global->__pyx_kp_u_Function_cuLinkCreate_v2_not_fou
#define __pyx_kp_u_Function_cuLinkDestroy_not_found __pyx_mstate_global->__pyx_kp_u_Function_cuLinkDestroy_not_found
#define __pyx_kp_u_Function_cuMemAddressFree_not_fo __pyx_mstate_global->__pyx_kp_u_Function_cuMemAddressFree_not_fo
#define __pyx_kp_u_Function_cuMemAddressReserve_not __pyx_mstate_global->__pyx_kp_u_Function_cuMemAddressReserve_not
#define __pyx_kp_u_Function_cuMemAdvise_not_found __pyx_mstate_global->__pyx_kp_u_Function_cuMemAdvise_not_found
#define __pyx_kp_u_Function_cuMemAdvise_v2_not_foun __pyx_mstate_global->__pyx_kp_u_Function_cuMemAdvise_v2_not_foun
#define __pyx_kp_u_Function_cuMemAllocAsync_not_fou __pyx_mstate_global->__pyx_kp_u_Function_cuMemAllocAsync_not_fou
#define __pyx_kp_u_Function_cuMemAllocFromPoolAsync __pyx_mstate_global->__pyx_kp_u_Function_cuMemAllocFromPoolAsync
#define __pyx_kp_u_Function_cuMemAllocHost_v2_not_f __pyx_mstate_global->__pyx_kp_u_Function_cuMemAllocHost_v2_not_f
#define __pyx_kp_u_Function_cuMemAllocManaged_not_f __pyx_mstate_global->__pyx_kp_u_Function_cuMemAllocManaged_not_f
#define __pyx_kp_u_Function_cuMemAllocPitch_v2_not __pyx_mstate_global->__pyx_kp_u_Function_cuMemAllocPitch_v2_not
#define __pyx_kp_u_Function_cuMemAlloc_v2_not_found __pyx_mstate_global->__pyx_kp_u_Function_cuMemAlloc_v2_not_found
#define __pyx_kp_u_Function_cuMemCreate_not_found __pyx_mstate_global->__pyx_kp_u_Function_cuMemCreate_not_found
#define __pyx_kp_u_Function_cuMemExportToShareableH __pyx_mstate_global->__pyx_kp_u_Function_cuMemExportToShareableH
#define __pyx_kp_u_Function_cuMemFreeAsync_not_foun __pyx_mstate_global->__pyx_kp_u_Function_cuMemFreeAsync_not_foun
#define __pyx_kp_u_Function_cuMemFreeHost_not_found __pyx_mstate_global->__pyx_kp_u_Function_cuMemFreeHost_not_found
#define __pyx_kp_u_Function_cuMemFree_v2_not_found __pyx_mstate_global->__pyx_kp_u_Function_cuMemFree_v2_not_found
#define __pyx_kp_u_Function_cuMemGetAccess_not_foun __pyx_mstate_global->__pyx_kp_u_Function_cuMemGetAccess_not_foun
#define __pyx_kp_u_Function_cuMemGetAddressRange_v2 __pyx_mstate_global->__pyx_kp_u_Function_cuMemGetAddressRange_v2
#define __pyx_kp_u_Function_cuMemGetAllocationGranu __pyx_mstate_global->__pyx_kp_u_Function_cuMemGetAllocationGranu
#define __pyx_kp_u_Function_cuMemGetAllocationPrope __pyx_mstate_global->__pyx_kp_u_Function_cuMemGetAllocationPrope
#define __pyx_kp_u_Function_cuMemGetHandleForAddres __pyx_mstate_global->__pyx_kp_u_Function_cuMemGetHandleForAddres
#define __pyx_kp_u_Function_cuMemGetInfo_v2_not_fou __pyx_mstate_global->__pyx_kp_u_Function_cuMemGetInfo_v2_not_fou
#define __pyx_kp_u_Function_cuMemHostAlloc_not_foun __pyx_mstate_global->__pyx_kp_u_Function_cuMemHostAlloc_not_foun
#define __pyx_kp_u_Function_cuMemHostGetDevicePoint __pyx_mstate_global->__pyx_kp_u_Function_cuMemHostGetDevicePoint
#define __pyx_kp_u_Function_cuMemHostGetFlags_not_f __pyx_mstate_global->__pyx_kp_u_Function_cuMemHostGetFlags_not_f
#define __pyx_kp_u_Function_cuMemHostRegister_v2_no __pyx_mstate_global->__pyx_kp_u_Function_cuMemHostRegister_v2_no
#define __pyx_kp_u_Function_cuMemHostUnregister_not __pyx_mstate_global->__pyx_kp_u_Function_cuMemHostUnregister_not
#define __pyx_kp_u_Function_cuMemImportFromShareabl __pyx_mstate_global->__pyx_kp_u_Function_cuMemImportFromShareabl
#define __pyx_kp_u_Function_cuMemMapArrayAsync_not __pyx_mstate_global->__pyx_kp_u_Function_cuMemMapArrayAsync_not
#define __pyx_kp_u_Function_cuMemMap_not_found __pyx_mstate_global->__pyx_kp_u_Function_cuMemMap_not_found
#define __pyx_kp_u_Function_cuMemPoolCreate_not_fou __pyx_mstate_global->__pyx_kp_u_Function_cuMemPoolCreate_not_fou
#define __pyx_kp_u_Function_cuMemPoolDestroy_not_fo __pyx_mstate_global->__pyx_kp_u_Function_cuMemPoolDestroy_not_fo
#define __pyx_kp_u_Function_cuMemPoolExportPointer __pyx_mstate_global->__pyx_kp_u_Function_cuMemPoolExportPointer
#define __pyx_kp_u_Function_cuMemPoolExportToSharea __pyx_mstate_global->__pyx_kp_u_Function_cuMemPoolExportToSharea
#define __pyx_kp_u_Function_cuMemPoolGetAccess_not __pyx_mstate_global->__pyx_kp_u_Function_cuMemPoolGetAccess_not
#define __pyx_kp_u_Function_cuMemPoolGetAttribute_n __pyx_mstate_global->__pyx_kp_u_Function_cuMemPoolGetAttribute_n
#define __pyx_kp_u_Function_cuMemPoolImportFromShar __pyx_mstate_global->__pyx_kp_u_Function_cuMemPoolImportFromShar
#define __pyx_kp_u_Function_cuMemPoolImportPointer __pyx_mstate_global->__pyx_kp_u_Function_cuMemPoolImportPointer
#define __pyx_kp_u_Function_cuMemPoolSetAccess_not __pyx_mstate_global->__pyx_kp_u_Function_cuMemPoolSetAccess_not
#define __pyx_kp_u_Function_cuMemPoolSetAttribute_n __pyx_mstate_global->__pyx_kp_u_Function_cuMemPoolSetAttribute_n
#define __pyx_kp_u_Function_cuMemPoolTrimTo_not_fou __pyx_mstate_global->__pyx_kp_u_Function_cuMemPoolTrimTo_not_fou
#define __pyx_kp_u_Function_cuMemPrefetchAsync_not __pyx_mstate_global->__pyx_kp_u_Function_cuMemPrefetchAsync_not
#define __pyx_kp_u_Function_cuMemPrefetchAsync_v2_n __pyx_mstate_global->__pyx_kp_u_Function_cuMemPrefetchAsync_v2_n
#define __pyx_kp_u_Function_cuMemRangeGetAttribute __pyx_mstate_global->__pyx_kp_u_Function_cuMemRangeGetAttribute
#define __pyx_kp_u_Function_cuMemRangeGetAttributes __pyx_mstate_global->__pyx_kp_u_Function_cuMemRangeGetAttributes
#define __pyx_kp_u_Function_cuMemRelease_not_found __pyx_mstate_global->__pyx_kp_u_Function_cuMemRelease_not_found
#define __pyx_kp_u_Function_cuMemRetainAllocationHa __pyx_mstate_global->__pyx_kp_u_Function_cuMemRetainAllocationHa
#define __pyx_kp_u_Function_cuMemSetAccess_not_foun __pyx_mstate_global->__pyx_kp_u_Function_cuMemSetAccess_not_foun
#define __pyx_kp_u_Function_cuMemUnmap_not_found __pyx_mstate_global->__pyx_kp_u_Function_cuMemUnmap_not_found
#define __pyx_kp_u_Function_cuMemcpy2DAsync_v2_not __pyx_mstate_global->__pyx_kp_u_Function_cuMemcpy2DAsync_v2_not
#define __pyx_kp_u_Function_cuMemcpy2DUnaligned_v2 __pyx_mstate_global->__pyx_kp_u_Function_cuMemcpy2DUnaligned_v2
#define __pyx_kp_u_Function_cuMemcpy2D_v2_not_found __pyx_mstate_global->__pyx_kp_u_Function_cuMemcpy2D_v2_not_found
#define __pyx_kp_u_Function_cuMemcpy3DAsync_v2_not __pyx_mstate_global->__pyx_kp_u_Function_cuMemcpy3DAsync_v2_not
#define __pyx_kp_u_Function_cuMemcpy3DPeerAsync_not __pyx_mstate_global->__pyx_kp_u_Function_cuMemcpy3DPeerAsync_not
#define __pyx_kp_u_Function_cuMemcpy3DPeer_not_foun __pyx_mstate_global->__pyx_kp_u_Function_cuMemcpy3DPeer_not_foun
#define __pyx_kp_u_Function_cuMemcpy3D_v2_not_found __pyx_mstate_global->__pyx_kp_u_Function_cuMemcpy3D_v2_not_found
#define __pyx_kp_u_Function_cuMemcpyAsync_not_found __pyx_mstate_global->__pyx_kp_u_Function_cuMemcpyAsync_not_found
#define __pyx_kp_u_Function_cuMemcpyAtoA_v2_not_fou __pyx_mstate_global->__pyx_kp_u_Function_cuMemcpyAtoA_v2_not_fou
#define __pyx_kp_u_Function_cuMemcpyAtoD_v2_not_fou __pyx_mstate_global->__pyx_kp_u_Function_cuMemcpyAtoD_v2_not_fou
#define __pyx_kp_u_Function_cuMemcpyAtoHAsync_v2_no __pyx_mstate_global->__pyx_kp_u_Function_cuMemcpyAtoHAsync_v2_no
#define __pyx_kp_u_Function_cuMemcpyAtoH_v2_not_fou __pyx_mstate_global->__pyx_kp_u_Function_cuMemcpyAtoH_v2_not_fou
#define __pyx_kp_u_Function_cuMemcpyDtoA_v2_not_fou __pyx_mstate_global->__pyx_kp_u_Function_cuMemcpyDtoA_v2_not_fou
#define __pyx_kp_u_Function_cuMemcpyDtoDAsync_v2_no __pyx_mstate_global->__pyx_kp_u_Function_cuMemcpyDtoDAsync_v2_no
#define __pyx_kp_u_Function_cuMemcpyDtoD_v2_not_fou __pyx_mstate_global->__pyx_kp_u_Function_cuMemcpyDtoD_v2_not_fou
#define __pyx_kp_u_Function_cuMemcpyDtoHAsync_v2_no __pyx_mstate_global->__pyx_kp_u_Function_cuMemcpyDtoHAsync_v2_no
#define __pyx_kp_u_Function_cuMemcpyDtoH_v2_not_fou __pyx_mstate_global->__pyx_kp_u_Function_cuMemcpyDtoH_v2_not_fou
#define __pyx_kp_u_Function_cuMemcpyHtoAAsync_v2_no __pyx_mstate_global->__pyx_kp_u_Function_cuMemcpyHtoAAsync_v2_no
#define __pyx_kp_u_Function_cuMemcpyHtoA_v2_not_fou __pyx_mstate_global->__pyx_kp_u_Function_cuMemcpyHtoA_v2_not_fou
#define __pyx_kp_u_Function_cuMemcpyHtoDAsync_v2_no __pyx_mstate_global->__pyx_kp_u_Function_cuMemcpyHtoDAsync_v2_no
#define __pyx_kp_u_Function_cuMemcpyHtoD_v2_not_fou __pyx_mstate_global->__pyx_kp_u_Function_cuMemcpyHtoD_v2_not_fou
#define __pyx_kp_u_Function_cuMemcpyPeerAsync_not_f __pyx_mstate_global->__pyx_kp_u_Function_cuMemcpyPeerAsync_not_f
#define __pyx_kp_u_Function_cuMemcpyPeer_not_found __pyx_mstate_global->__pyx_kp_u_Function_cuMemcpyPeer_not_found
#define __pyx_kp_u_Function_cuMemcpy_not_found __pyx_mstate_global->__pyx_kp_u_Function_cuMemcpy_not_found
#define __pyx_kp_u_Function_cuMemsetD16Async_not_fo __pyx_mstate_global->__pyx_kp_u_Function_cuMemsetD16Async_not_fo
#define __pyx_kp_u_Function_cuMemsetD16_v2_not_foun __pyx_mstate_global->__pyx_kp_u_Function_cuMemsetD16_v2_not_foun
#define __pyx_kp_u_Function_cuMemsetD2D16Async_not __pyx_mstate_global->__pyx_kp_u_Function_cuMemsetD2D16Async_not
#define __pyx_kp_u_Function_cuMemsetD2D16_v2_not_fo __pyx_mstate_global->__pyx_kp_u_Function_cuMemsetD2D16_v2_not_fo
#define __pyx_kp_u_Function_cuMemsetD2D32Async_not __pyx_mstate_global->__pyx_kp_u_Function_cuMemsetD2D32Async_not
#define __pyx_kp_u_Function_cuMemsetD2D32_v2_not_fo __pyx_mstate_global->__pyx_kp_u_Function_cuMemsetD2D32_v2_not_fo
#define __pyx_kp_u_Function_cuMemsetD2D8Async_not_f __pyx_mstate_global->__pyx_kp_u_Function_cuMemsetD2D8Async_not_f
#define __pyx_kp_u_Function_cuMemsetD2D8_v2_not_fou __pyx_mstate_global->__pyx_kp_u_Function_cuMemsetD2D8_v2_not_fou
#define __pyx_kp_u_Function_cuMemsetD32Async_not_fo __pyx_mstate_global->__pyx_kp_u_Function_cuMemsetD32Async_not_fo
#define __pyx_kp_u_Function_cuMemsetD32_v2_not_foun __pyx_mstate_global->__pyx_kp_u_Function_cuMemsetD32_v2_not_foun
#define __pyx_kp_u_Function_cuMemsetD8Async_not_fou __pyx_mstate_global->__pyx_kp_u_Function_cuMemsetD8Async_not_fou
#define __pyx_kp_u_Function_cuMemsetD8_v2_not_found __pyx_mstate_global->__pyx_kp_u_Function_cuMemsetD8_v2_not_found
#define __pyx_kp_u_Function_cuMipmappedArrayCreate __pyx_mstate_global->__pyx_kp_u_Function_cuMipmappedArrayCreate
#define __pyx_kp_u_Function_cuMipmappedArrayDestroy __pyx_mstate_global->__pyx_kp_u_Function_cuMipmappedArrayDestroy
#define __pyx_kp_u_Function_cuMipmappedArrayGetLeve __pyx_mstate_global->__pyx_kp_u_Function_cuMipmappedArrayGetLeve
#define __pyx_kp_u_Function_cuMipmappedArrayGetMemo __pyx_mstate_global->__pyx_kp_u_Function_cuMipmappedArrayGetMemo
#define __pyx_kp_u_Function_cuMipmappedArrayGetSpar __pyx_mstate_global->__pyx_kp_u_Function_cuMipmappedArrayGetSpar
#define __pyx_kp_u_Function_cuModuleEnumerateFuncti __pyx_mstate_global->__pyx_kp_u_Function_cuModuleEnumerateFuncti
#define __pyx_kp_u_Function_cuModuleGetFunctionCoun __pyx_mstate_global->__pyx_kp_u_Function_cuModuleGetFunctionCoun
#define __pyx_kp_u_Function_cuModuleGetFunction_not __pyx_mstate_global->__pyx_kp_u_Function_cuModuleGetFunction_not
#define __pyx_kp_u_Function_cuModuleGetGlobal_v2_no __pyx_mstate_global->__pyx_kp_u_Function_cuModuleGetGlobal_v2_no
#define __pyx_kp_u_Function_cuModuleGetLoadingMode __pyx_mstate_global->__pyx_kp_u_Function_cuModuleGetLoadingMode
#define __pyx_kp_u_Function_cuModuleGetSurfRef_not __pyx_mstate_global->__pyx_kp_u_Function_cuModuleGetSurfRef_not
#define __pyx_kp_u_Function_cuModuleGetTexRef_not_f __pyx_mstate_global->__pyx_kp_u_Function_cuModuleGetTexRef_not_f
#define __pyx_kp_u_Function_cuModuleLoadDataEx_not __pyx_mstate_global->__pyx_kp_u_Function_cuModuleLoadDataEx_not
#define __pyx_kp_u_Function_cuModuleLoadData_not_fo __pyx_mstate_global->__pyx_kp_u_Function_cuModuleLoadData_not_fo
#define __pyx_kp_u_Function_cuModuleLoadFatBinary_n __pyx_mstate_global->__pyx_kp_u_Function_cuModuleLoadFatBinary_n
#define __pyx_kp_u_Function_cuModuleLoad_not_found __pyx_mstate_global->__pyx_kp_u_Function_cuModuleLoad_not_found
#define __pyx_kp_u_Function_cuModuleUnload_not_foun __pyx_mstate_global->__pyx_kp_u_Function_cuModuleUnload_not_foun
#define __pyx_kp_u_Function_cuMulticastAddDevice_no __pyx_mstate_global->__pyx_kp_u_Function_cuMulticastAddDevice_no
#define __pyx_kp_u_Function_cuMulticastBindAddr_not __pyx_mstate_global->__pyx_kp_u_Function_cuMulticastBindAddr_not
#define __pyx_kp_u_Function_cuMulticastBindMem_not __pyx_mstate_global->__pyx_kp_u_Function_cuMulticastBindMem_not
#define __pyx_kp_u_Function_cuMulticastCreate_not_f __pyx_mstate_global->__pyx_kp_u_Function_cuMulticastCreate_not_f
#define __pyx_kp_u_Function_cuMulticastGetGranulari __pyx_mstate_global->__pyx_kp_u_Function_cuMulticastGetGranulari
#define __pyx_kp_u_Function_cuMulticastUnbind_not_f __pyx_mstate_global->__pyx_kp_u_Function_cuMulticastUnbind_not_f
#define __pyx_kp_u_Function_cuOccupancyAvailableDyn __pyx_mstate_global->__pyx_kp_u_Function_cuOccupancyAvailableDyn
#define __pyx_kp_u_Function_cuOccupancyMaxActiveBlo __pyx_mstate_global->__pyx_kp_u_Function_cuOccupancyMaxActiveBlo
#define __pyx_kp_u_Function_cuOccupancyMaxActiveBlo_2 __pyx_mstate_global->__pyx_kp_u_Function_cuOccupancyMaxActiveBlo_2
#define __pyx_kp_u_Function_cuOccupancyMaxActiveClu __pyx_mstate_global->__pyx_kp_u_Function_cuOccupancyMaxActiveClu
#define __pyx_kp_u_Function_cuOccupancyMaxPotential __pyx_mstate_global->__pyx_kp_u_Function_cuOccupancyMaxPotential
#define __pyx_kp_u_Function_cuOccupancyMaxPotential_2 __pyx_mstate_global->__pyx_kp_u_Function_cuOccupancyMaxPotential_2
#define __pyx_kp_u_Function_cuOccupancyMaxPotential_3 __pyx_mstate_global->__pyx_kp_u_Function_cuOccupancyMaxPotential_3
#define __pyx_kp_u_Function_cuParamSetSize_not_foun __pyx_mstate_global->__pyx_kp_u_Function_cuParamSetSize_not_foun
#define __pyx_kp_u_Function_cuParamSetTexRef_not_fo __pyx_mstate_global->__pyx_kp_u_Function_cuParamSetTexRef_not_fo
#define __pyx_kp_u_Function_cuParamSetf_not_found __pyx_mstate_global->__pyx_kp_u_Function_cuParamSetf_not_found
#define __pyx_kp_u_Function_cuParamSeti_not_found __pyx_mstate_global->__pyx_kp_u_Function_cuParamSeti_not_found
#define __pyx_kp_u_Function_cuParamSetv_not_found __pyx_mstate_global->__pyx_kp_u_Function_cuParamSetv_not_found
#define __pyx_kp_u_Function_cuPointerGetAttribute_n __pyx_mstate_global->__pyx_kp_u_Function_cuPointerGetAttribute_n
#define __pyx_kp_u_Function_cuPointerGetAttributes __pyx_mstate_global->__pyx_kp_u_Function_cuPointerGetAttributes
#define __pyx_kp_u_Function_cuPointerSetAttribute_n __pyx_mstate_global->__pyx_kp_u_Function_cuPointerSetAttribute_n
#define __pyx_kp_u_Function_cuProfilerStart_not_fou __pyx_mstate_global->__pyx_kp_u_Function_cuProfilerStart_not_fou
#define __pyx_kp_u_Function_cuProfilerStop_not_foun __pyx_mstate_global->__pyx_kp_u_Function_cuProfilerStop_not_foun
#define __pyx_kp_u_Function_cuSignalExternalSemapho __pyx_mstate_global->__pyx_kp_u_Function_cuSignalExternalSemapho
#define __pyx_kp_u_Function_cuStreamAddCallback_not __pyx_mstate_global->__pyx_kp_u_Function_cuStreamAddCallback_not
#define __pyx_kp_u_Function_cuStreamAttachMemAsync __pyx_mstate_global->__pyx_kp_u_Function_cuStreamAttachMemAsync
#define __pyx_kp_u_Function_cuStreamBatchMemOp_v2_n __pyx_mstate_global->__pyx_kp_u_Function_cuStreamBatchMemOp_v2_n
#define __pyx_kp_u_Function_cuStreamBeginCaptureToG __pyx_mstate_global->__pyx_kp_u_Function_cuStreamBeginCaptureToG
#define __pyx_kp_u_Function_cuStreamBeginCapture_v2 __pyx_mstate_global->__pyx_kp_u_Function_cuStreamBeginCapture_v2
#define __pyx_kp_u_Function_cuStreamCopyAttributes __pyx_mstate_global->__pyx_kp_u_Function_cuStreamCopyAttributes
#define __pyx_kp_u_Function_cuStreamCreateWithPrior __pyx_mstate_global->__pyx_kp_u_Function_cuStreamCreateWithPrior
#define __pyx_kp_u_Function_cuStreamCreate_not_foun __pyx_mstate_global->__pyx_kp_u_Function_cuStreamCreate_not_foun
#define __pyx_kp_u_Function_cuStreamDestroy_v2_not __pyx_mstate_global->__pyx_kp_u_Function_cuStreamDestroy_v2_not
#define __pyx_kp_u_Function_cuStreamEndCapture_not __pyx_mstate_global->__pyx_kp_u_Function_cuStreamEndCapture_not
#define __pyx_kp_u_Function_cuStreamGetAttribute_no __pyx_mstate_global->__pyx_kp_u_Function_cuStreamGetAttribute_no
#define __pyx_kp_u_Function_cuStreamGetCaptureInfo __pyx_mstate_global->__pyx_kp_u_Function_cuStreamGetCaptureInfo
#define __pyx_kp_u_Function_cuStreamGetCaptureInfo_2 __pyx_mstate_global->__pyx_kp_u_Function_cuStreamGetCaptureInfo_2
#define __pyx_kp_u_Function_cuStreamGetCtx_not_foun __pyx_mstate_global->__pyx_kp_u_Function_cuStreamGetCtx_not_foun
#define __pyx_kp_u_Function_cuStreamGetFlags_not_fo __pyx_mstate_global->__pyx_kp_u_Function_cuStreamGetFlags_not_fo
#define __pyx_kp_u_Function_cuStreamGetGreenCtx_not __pyx_mstate_global->__pyx_kp_u_Function_cuStreamGetGreenCtx_not
#define __pyx_kp_u_Function_cuStreamGetId_not_found __pyx_mstate_global->__pyx_kp_u_Function_cuStreamGetId_not_found
#define __pyx_kp_u_Function_cuStreamGetPriority_not __pyx_mstate_global->__pyx_kp_u_Function_cuStreamGetPriority_not
#define __pyx_kp_u_Function_cuStreamIsCapturing_not __pyx_mstate_global->__pyx_kp_u_Function_cuStreamIsCapturing_not
#define __pyx_kp_u_Function_cuStreamQuery_not_found __pyx_mstate_global->__pyx_kp_u_Function_cuStreamQuery_not_found
#define __pyx_kp_u_Function_cuStreamSetAttribute_no __pyx_mstate_global->__pyx_kp_u_Function_cuStreamSetAttribute_no
#define __pyx_kp_u_Function_cuStreamSynchronize_not __pyx_mstate_global->__pyx_kp_u_Function_cuStreamSynchronize_not
#define __pyx_kp_u_Function_cuStreamUpdateCaptureDe __pyx_mstate_global->__pyx_kp_u_Function_cuStreamUpdateCaptureDe
#define __pyx_kp_u_Function_cuStreamUpdateCaptureDe_2 __pyx_mstate_global->__pyx_kp_u_Function_cuStreamUpdateCaptureDe_2
#define __pyx_kp_u_Function_cuStreamWaitEvent_not_f __pyx_mstate_global->__pyx_kp_u_Function_cuStreamWaitEvent_not_f
#define __pyx_kp_u_Function_cuStreamWaitValue32_v2 __pyx_mstate_global->__pyx_kp_u_Function_cuStreamWaitValue32_v2
#define __pyx_kp_u_Function_cuStreamWaitValue64_v2 __pyx_mstate_global->__pyx_kp_u_Function_cuStreamWaitValue64_v2
#define __pyx_kp_u_Function_cuStreamWriteValue32_v2 __pyx_mstate_global->__pyx_kp_u_Function_cuStreamWriteValue32_v2
#define __pyx_kp_u_Function_cuStreamWriteValue64_v2 __pyx_mstate_global->__pyx_kp_u_Function_cuStreamWriteValue64_v2
#define __pyx_kp_u_Function_cuSurfObjectCreate_not __pyx_mstate_global->__pyx_kp_u_Function_cuSurfObjectCreate_not
#define __pyx_kp_u_Function_cuSurfObjectDestroy_not __pyx_mstate_global->__pyx_kp_u_Function_cuSurfObjectDestroy_not
#define __pyx_kp_u_Function_cuSurfObjectGetResource __pyx_mstate_global->__pyx_kp_u_Function_cuSurfObjectGetResource
#define __pyx_kp_u_Function_cuSurfRefGetArray_not_f __pyx_mstate_global->__pyx_kp_u_Function_cuSurfRefGetArray_not_f
#define __pyx_kp_u_Function_cuSurfRefSetArray_not_f __pyx_mstate_global->__pyx_kp_u_Function_cuSurfRefSetArray_not_f
#define __pyx_kp_u_Function_cuTensorMapEncodeIm2col __pyx_mstate_global->__pyx_kp_u_Function_cuTensorMapEncodeIm2col
#define __pyx_kp_u_Function_cuTensorMapEncodeTiled __pyx_mstate_global->__pyx_kp_u_Function_cuTensorMapEncodeTiled
#define __pyx_kp_u_Function_cuTensorMapReplaceAddre __pyx_mstate_global->__pyx_kp_u_Function_cuTensorMapReplaceAddre
#define __pyx_kp_u_Function_cuTexObjectCreate_not_f __pyx_mstate_global->__pyx_kp_u_Function_cuTexObjectCreate_not_f
#define __pyx_kp_u_Function_cuTexObjectDestroy_not __pyx_mstate_global->__pyx_kp_u_Function_cuTexObjectDestroy_not
#define __pyx_kp_u_Function_cuTexObjectGetResourceD __pyx_mstate_global->__pyx_kp_u_Function_cuTexObjectGetResourceD
#define __pyx_kp_u_Function_cuTexObjectGetResourceV __pyx_mstate_global->__pyx_kp_u_Function_cuTexObjectGetResourceV
#define __pyx_kp_u_Function_cuTexObjectGetTextureDe __pyx_mstate_global->__pyx_kp_u_Function_cuTexObjectGetTextureDe
#define __pyx_kp_u_Function_cuTexRefCreate_not_foun __pyx_mstate_global->__pyx_kp_u_Function_cuTexRefCreate_not_foun
#define __pyx_kp_u_Function_cuTexRefDestroy_not_fou __pyx_mstate_global->__pyx_kp_u_Function_cuTexRefDestroy_not_fou
#define __pyx_kp_u_Function_cuTexRefGetAddressMode __pyx_mstate_global->__pyx_kp_u_Function_cuTexRefGetAddressMode
#define __pyx_kp_u_Function_cuTexRefGetAddress_v2_n __pyx_mstate_global->__pyx_kp_u_Function_cuTexRefGetAddress_v2_n
#define __pyx_kp_u_Function_cuTexRefGetArray_not_fo __pyx_mstate_global->__pyx_kp_u_Function_cuTexRefGetArray_not_fo
#define __pyx_kp_u_Function_cuTexRefGetBorderColor __pyx_mstate_global->__pyx_kp_u_Function_cuTexRefGetBorderColor
#define __pyx_kp_u_Function_cuTexRefGetFilterMode_n __pyx_mstate_global->__pyx_kp_u_Function_cuTexRefGetFilterMode_n
#define __pyx_kp_u_Function_cuTexRefGetFlags_not_fo __pyx_mstate_global->__pyx_kp_u_Function_cuTexRefGetFlags_not_fo
#define __pyx_kp_u_Function_cuTexRefGetFormat_not_f __pyx_mstate_global->__pyx_kp_u_Function_cuTexRefGetFormat_not_f
#define __pyx_kp_u_Function_cuTexRefGetMaxAnisotrop __pyx_mstate_global->__pyx_kp_u_Function_cuTexRefGetMaxAnisotrop
#define __pyx_kp_u_Function_cuTexRefGetMipmapFilter __pyx_mstate_global->__pyx_kp_u_Function_cuTexRefGetMipmapFilter
#define __pyx_kp_u_Function_cuTexRefGetMipmapLevelB __pyx_mstate_global->__pyx_kp_u_Function_cuTexRefGetMipmapLevelB
#define __pyx_kp_u_Function_cuTexRefGetMipmapLevelC __pyx_mstate_global->__pyx_kp_u_Function_cuTexRefGetMipmapLevelC
#define __pyx_kp_u_Function_cuTexRefGetMipmappedArr __pyx_mstate_global->__pyx_kp_u_Function_cuTexRefGetMipmappedArr
#define __pyx_kp_u_Function_cuTexRefSetAddress2D_v3 __pyx_mstate_global->__pyx_kp_u_Function_cuTexRefSetAddress2D_v3
#define __pyx_kp_u_Function_cuTexRefSetAddressMode __pyx_mstate_global->__pyx_kp_u_Function_cuTexRefSetAddressMode
#define __pyx_kp_u_Function_cuTexRefSetAddress_v2_n __pyx_mstate_global->__pyx_kp_u_Function_cuTexRefSetAddress_v2_n
#define __pyx_kp_u_Function_cuTexRefSetArray_not_fo __pyx_mstate_global->__pyx_kp_u_Function_cuTexRefSetArray_not_fo
#define __pyx_kp_u_Function_cuTexRefSetBorderColor __pyx_mstate_global->__pyx_kp_u_Function_cuTexRefSetBorderColor
#define __pyx_kp_u_Function_cuTexRefSetFilterMode_n __pyx_mstate_global->__pyx_kp_u_Function_cuTexRefSetFilterMode_n
#define __pyx_kp_u_Function_cuTexRefSetFlags_not_fo __pyx_mstate_global->__pyx_kp_u_Function_cuTexRefSetFlags_not_fo
#define __pyx_kp_u_Function_cuTexRefSetFormat_not_f __pyx_mstate_global->__pyx_kp_u_Function_cuTexRefSetFormat_not_f
#define __pyx_kp_u_Function_cuTexRefSetMaxAnisotrop __pyx_mstate_global->__pyx_kp_u_Function_cuTexRefSetMaxAnisotrop
#define __pyx_kp_u_Function_cuTexRefSetMipmapFilter __pyx_mstate_global->__pyx_kp_u_Function_cuTexRefSetMipmapFilter
#define __pyx_kp_u_Function_cuTexRefSetMipmapLevelB __pyx_mstate_global->__pyx_kp_u_Function_cuTexRefSetMipmapLevelB
#define __pyx_kp_u_Function_cuTexRefSetMipmapLevelC __pyx_mstate_global->__pyx_kp_u_Function_cuTexRefSetMipmapLevelC
#define __pyx_kp_u_Function_cuTexRefSetMipmappedArr __pyx_mstate_global->__pyx_kp_u_Function_cuTexRefSetMipmappedArr
#define __pyx_kp_u_Function_cuThreadExchangeStreamC __pyx_mstate_global->__pyx_kp_u_Function_cuThreadExchangeStreamC
#define __pyx_kp_u_Function_cuUserObjectCreate_not __pyx_mstate_global->__pyx_kp_u_Function_cuUserObjectCreate_not
#define __pyx_kp_u_Function_cuUserObjectRelease_not __pyx_mstate_global->__pyx_kp_u_Function_cuUserObjectRelease_not
#define __pyx_kp_u_Function_cuUserObjectRetain_not __pyx_mstate_global->__pyx_kp_u_Function_cuUserObjectRetain_not
#define __pyx_kp_u_Function_cuVDPAUCtxCreate_v2_not __pyx_mstate_global->__pyx_kp_u_Function_cuVDPAUCtxCreate_v2_not
#define __pyx_kp_u_Function_cuVDPAUGetDevice_not_fo __pyx_mstate_global->__pyx_kp_u_Function_cuVDPAUGetDevice_not_fo
#define __pyx_kp_u_Function_cuWaitExternalSemaphore __pyx_mstate_global->__pyx_kp_u_Function_cuWaitExternalSemaphore
#define __pyx_n_s_RuntimeError __pyx_mstate_global->__pyx_n_s_RuntimeError
#define __pyx_n_s__452 __pyx_mstate_global->__pyx_n_s__452
#define __pyx_n_s__453 __pyx_mstate_global->__pyx_n_s__453
#define __pyx_n_s_cline_in_traceback __pyx_mstate_global->__pyx_n_s_cline_in_traceback
#define __pyx_n_s_default __pyx_mstate_global->__pyx_n_s_default
#define __pyx_n_s_encoding __pyx_mstate_global->__pyx_n_s_encoding
#define __pyx_n_s_getenv __pyx_mstate_global->__pyx_n_s_getenv
#define __pyx_n_s_import __pyx_mstate_global->__pyx_n_s_import
#define __pyx_n_s_initializing __pyx_mstate_global->__pyx_n_s_initializing
#define __pyx_kp_u_libcuda_so_1 __pyx_mstate_global->__pyx_kp_u_libcuda_so_1
#define __pyx_n_s_main __pyx_mstate_global->__pyx_n_s_main
#define __pyx_n_s_maxsize __pyx_mstate_global->__pyx_n_s_maxsize
#define __pyx_n_s_name __pyx_mstate_global->__pyx_n_s_name
#define __pyx_n_s_os __pyx_mstate_global->__pyx_n_s_os
#define __pyx_n_s_spec __pyx_mstate_global->__pyx_n_s_spec
#define __pyx_n_s_sys __pyx_mstate_global->__pyx_n_s_sys
#define __pyx_n_s_test __pyx_mstate_global->__pyx_n_s_test
#define __pyx_kp_u_utf_8 __pyx_mstate_global->__pyx_kp_u_utf_8
#define __pyx_int_0 __pyx_mstate_global->__pyx_int_0
#define __pyx_int_4294967296 __pyx_mstate_global->__pyx_int_4294967296
#define __pyx_tuple_ __pyx_mstate_global->__pyx_tuple_
#define __pyx_tuple__2 __pyx_mstate_global->__pyx_tuple__2
#define __pyx_tuple__3 __pyx_mstate_global->__pyx_tuple__3
#define __pyx_tuple__4 __pyx_mstate_global->__pyx_tuple__4
#define __pyx_tuple__5 __pyx_mstate_global->__pyx_tuple__5
#define __pyx_tuple__6 __pyx_mstate_global->__pyx_tuple__6
#define __pyx_tuple__7 __pyx_mstate_global->__pyx_tuple__7
#define __pyx_tuple__8 __pyx_mstate_global->__pyx_tuple__8
#define __pyx_tuple__9 __pyx_mstate_global->__pyx_tuple__9
#define __pyx_tuple__10 __pyx_mstate_global->__pyx_tuple__10
#define __pyx_tuple__11 __pyx_mstate_global->__pyx_tuple__11
#define __pyx_tuple__12 __pyx_mstate_global->__pyx_tuple__12
#define __pyx_tuple__13 __pyx_mstate_global->__pyx_tuple__13
#define __pyx_tuple__14 __pyx_mstate_global->__pyx_tuple__14
#define __pyx_tuple__15 __pyx_mstate_global->__pyx_tuple__15
#define __pyx_tuple__16 __pyx_mstate_global->__pyx_tuple__16
#define __pyx_tuple__17 __pyx_mstate_global->__pyx_tuple__17
#define __pyx_tuple__18 __pyx_mstate_global->__pyx_tuple__18
#define __pyx_tuple__19 __pyx_mstate_global->__pyx_tuple__19
#define __pyx_tuple__20 __pyx_mstate_global->__pyx_tuple__20
#define __pyx_tuple__21 __pyx_mstate_global->__pyx_tuple__21
#define __pyx_tuple__22 __pyx_mstate_global->__pyx_tuple__22
#define __pyx_tuple__23 __pyx_mstate_global->__pyx_tuple__23
#define __pyx_tuple__24 __pyx_mstate_global->__pyx_tuple__24
#define __pyx_tuple__25 __pyx_mstate_global->__pyx_tuple__25
#define __pyx_tuple__26 __pyx_mstate_global->__pyx_tuple__26
#define __pyx_tuple__27 __pyx_mstate_global->__pyx_tuple__27
#define __pyx_tuple__28 __pyx_mstate_global->__pyx_tuple__28
#define __pyx_tuple__29 __pyx_mstate_global->__pyx_tuple__29
#define __pyx_tuple__30 __pyx_mstate_global->__pyx_tuple__30
#define __pyx_tuple__31 __pyx_mstate_global->__pyx_tuple__31
#define __pyx_tuple__32 __pyx_mstate_global->__pyx_tuple__32
#define __pyx_tuple__33 __pyx_mstate_global->__pyx_tuple__33
#define __pyx_tuple__34 __pyx_mstate_global->__pyx_tuple__34
#define __pyx_tuple__35 __pyx_mstate_global->__pyx_tuple__35
#define __pyx_tuple__36 __pyx_mstate_global->__pyx_tuple__36
#define __pyx_tuple__37 __pyx_mstate_global->__pyx_tuple__37
#define __pyx_tuple__38 __pyx_mstate_global->__pyx_tuple__38
#define __pyx_tuple__39 __pyx_mstate_global->__pyx_tuple__39
#define __pyx_tuple__40 __pyx_mstate_global->__pyx_tuple__40
#define __pyx_tuple__41 __pyx_mstate_global->__pyx_tuple__41
#define __pyx_tuple__42 __pyx_mstate_global->__pyx_tuple__42
#define __pyx_tuple__43 __pyx_mstate_global->__pyx_tuple__43
#define __pyx_tuple__44 __pyx_mstate_global->__pyx_tuple__44
#define __pyx_tuple__45 __pyx_mstate_global->__pyx_tuple__45
#define __pyx_tuple__46 __pyx_mstate_global->__pyx_tuple__46
#define __pyx_tuple__47 __pyx_mstate_global->__pyx_tuple__47
#define __pyx_tuple__48 __pyx_mstate_global->__pyx_tuple__48
#define __pyx_tuple__49 __pyx_mstate_global->__pyx_tuple__49
#define __pyx_tuple__50 __pyx_mstate_global->__pyx_tuple__50
#define __pyx_tuple__51 __pyx_mstate_global->__pyx_tuple__51
#define __pyx_tuple__52 __pyx_mstate_global->__pyx_tuple__52
#define __pyx_tuple__53 __pyx_mstate_global->__pyx_tuple__53
#define __pyx_tuple__54 __pyx_mstate_global->__pyx_tuple__54
#define __pyx_tuple__55 __pyx_mstate_global->__pyx_tuple__55
#define __pyx_tuple__56 __pyx_mstate_global->__pyx_tuple__56
#define __pyx_tuple__57 __pyx_mstate_global->__pyx_tuple__57
#define __pyx_tuple__58 __pyx_mstate_global->__pyx_tuple__58
#define __pyx_tuple__59 __pyx_mstate_global->__pyx_tuple__59
#define __pyx_tuple__60 __pyx_mstate_global->__pyx_tuple__60
#define __pyx_tuple__61 __pyx_mstate_global->__pyx_tuple__61
#define __pyx_tuple__62 __pyx_mstate_global->__pyx_tuple__62
#define __pyx_tuple__63 __pyx_mstate_global->__pyx_tuple__63
#define __pyx_tuple__64 __pyx_mstate_global->__pyx_tuple__64
#define __pyx_tuple__65 __pyx_mstate_global->__pyx_tuple__65
#define __pyx_tuple__66 __pyx_mstate_global->__pyx_tuple__66
#define __pyx_tuple__67 __pyx_mstate_global->__pyx_tuple__67
#define __pyx_tuple__68 __pyx_mstate_global->__pyx_tuple__68
#define __pyx_tuple__69 __pyx_mstate_global->__pyx_tuple__69
#define __pyx_tuple__70 __pyx_mstate_global->__pyx_tuple__70
#define __pyx_tuple__71 __pyx_mstate_global->__pyx_tuple__71
#define __pyx_tuple__72 __pyx_mstate_global->__pyx_tuple__72
#define __pyx_tuple__73 __pyx_mstate_global->__pyx_tuple__73
#define __pyx_tuple__74 __pyx_mstate_global->__pyx_tuple__74
#define __pyx_tuple__75 __pyx_mstate_global->__pyx_tuple__75
#define __pyx_tuple__76 __pyx_mstate_global->__pyx_tuple__76
#define __pyx_tuple__77 __pyx_mstate_global->__pyx_tuple__77
#define __pyx_tuple__78 __pyx_mstate_global->__pyx_tuple__78
#define __pyx_tuple__79 __pyx_mstate_global->__pyx_tuple__79
#define __pyx_tuple__80 __pyx_mstate_global->__pyx_tuple__80
#define __pyx_tuple__81 __pyx_mstate_global->__pyx_tuple__81
#define __pyx_tuple__82 __pyx_mstate_global->__pyx_tuple__82
#define __pyx_tuple__83 __pyx_mstate_global->__pyx_tuple__83
#define __pyx_tuple__84 __pyx_mstate_global->__pyx_tuple__84
#define __pyx_tuple__85 __pyx_mstate_global->__pyx_tuple__85
#define __pyx_tuple__86 __pyx_mstate_global->__pyx_tuple__86
#define __pyx_tuple__87 __pyx_mstate_global->__pyx_tuple__87
#define __pyx_tuple__88 __pyx_mstate_global->__pyx_tuple__88
#define __pyx_tuple__89 __pyx_mstate_global->__pyx_tuple__89
#define __pyx_tuple__90 __pyx_mstate_global->__pyx_tuple__90
#define __pyx_tuple__91 __pyx_mstate_global->__pyx_tuple__91
#define __pyx_tuple__92 __pyx_mstate_global->__pyx_tuple__92
#define __pyx_tuple__93 __pyx_mstate_global->__pyx_tuple__93
#define __pyx_tuple__94 __pyx_mstate_global->__pyx_tuple__94
#define __pyx_tuple__95 __pyx_mstate_global->__pyx_tuple__95
#define __pyx_tuple__96 __pyx_mstate_global->__pyx_tuple__96
#define __pyx_tuple__97 __pyx_mstate_global->__pyx_tuple__97
#define __pyx_tuple__98 __pyx_mstate_global->__pyx_tuple__98
#define __pyx_tuple__99 __pyx_mstate_global->__pyx_tuple__99
#define __pyx_tuple__100 __pyx_mstate_global->__pyx_tuple__100
#define __pyx_tuple__101 __pyx_mstate_global->__pyx_tuple__101
#define __pyx_tuple__102 __pyx_mstate_global->__pyx_tuple__102
#define __pyx_tuple__103 __pyx_mstate_global->__pyx_tuple__103
#define __pyx_tuple__104 __pyx_mstate_global->__pyx_tuple__104
#define __pyx_tuple__105 __pyx_mstate_global->__pyx_tuple__105
#define __pyx_tuple__106 __pyx_mstate_global->__pyx_tuple__106
#define __pyx_tuple__107 __pyx_mstate_global->__pyx_tuple__107
#define __pyx_tuple__108 __pyx_mstate_global->__pyx_tuple__108
#define __pyx_tuple__109 __pyx_mstate_global->__pyx_tuple__109
#define __pyx_tuple__110 __pyx_mstate_global->__pyx_tuple__110
#define __pyx_tuple__111 __pyx_mstate_global->__pyx_tuple__111
#define __pyx_tuple__112 __pyx_mstate_global->__pyx_tuple__112
#define __pyx_tuple__113 __pyx_mstate_global->__pyx_tuple__113
#define __pyx_tuple__114 __pyx_mstate_global->__pyx_tuple__114
#define __pyx_tuple__115 __pyx_mstate_global->__pyx_tuple__115
#define __pyx_tuple__116 __pyx_mstate_global->__pyx_tuple__116
#define __pyx_tuple__117 __pyx_mstate_global->__pyx_tuple__117
#define __pyx_tuple__118 __pyx_mstate_global->__pyx_tuple__118
#define __pyx_tuple__119 __pyx_mstate_global->__pyx_tuple__119
#define __pyx_tuple__120 __pyx_mstate_global->__pyx_tuple__120
#define __pyx_tuple__121 __pyx_mstate_global->__pyx_tuple__121
#define __pyx_tuple__122 __pyx_mstate_global->__pyx_tuple__122
#define __pyx_tuple__123 __pyx_mstate_global->__pyx_tuple__123
#define __pyx_tuple__124 __pyx_mstate_global->__pyx_tuple__124
#define __pyx_tuple__125 __pyx_mstate_global->__pyx_tuple__125
#define __pyx_tuple__126 __pyx_mstate_global->__pyx_tuple__126
#define __pyx_tuple__127 __pyx_mstate_global->__pyx_tuple__127
#define __pyx_tuple__128 __pyx_mstate_global->__pyx_tuple__128
#define __pyx_tuple__129 __pyx_mstate_global->__pyx_tuple__129
#define __pyx_tuple__130 __pyx_mstate_global->__pyx_tuple__130
#define __pyx_tuple__131 __pyx_mstate_global->__pyx_tuple__131
#define __pyx_tuple__132 __pyx_mstate_global->__pyx_tuple__132
#define __pyx_tuple__133 __pyx_mstate_global->__pyx_tuple__133
#define __pyx_tuple__134 __pyx_mstate_global->__pyx_tuple__134
#define __pyx_tuple__135 __pyx_mstate_global->__pyx_tuple__135
#define __pyx_tuple__136 __pyx_mstate_global->__pyx_tuple__136
#define __pyx_tuple__137 __pyx_mstate_global->__pyx_tuple__137
#define __pyx_tuple__138 __pyx_mstate_global->__pyx_tuple__138
#define __pyx_tuple__139 __pyx_mstate_global->__pyx_tuple__139
#define __pyx_tuple__140 __pyx_mstate_global->__pyx_tuple__140
#define __pyx_tuple__141 __pyx_mstate_global->__pyx_tuple__141
#define __pyx_tuple__142 __pyx_mstate_global->__pyx_tuple__142
#define __pyx_tuple__143 __pyx_mstate_global->__pyx_tuple__143
#define __pyx_tuple__144 __pyx_mstate_global->__pyx_tuple__144
#define __pyx_tuple__145 __pyx_mstate_global->__pyx_tuple__145
#define __pyx_tuple__146 __pyx_mstate_global->__pyx_tuple__146
#define __pyx_tuple__147 __pyx_mstate_global->__pyx_tuple__147
#define __pyx_tuple__148 __pyx_mstate_global->__pyx_tuple__148
#define __pyx_tuple__149 __pyx_mstate_global->__pyx_tuple__149
#define __pyx_tuple__150 __pyx_mstate_global->__pyx_tuple__150
#define __pyx_tuple__151 __pyx_mstate_global->__pyx_tuple__151
#define __pyx_tuple__152 __pyx_mstate_global->__pyx_tuple__152
#define __pyx_tuple__153 __pyx_mstate_global->__pyx_tuple__153
#define __pyx_tuple__154 __pyx_mstate_global->__pyx_tuple__154
#define __pyx_tuple__155 __pyx_mstate_global->__pyx_tuple__155
#define __pyx_tuple__156 __pyx_mstate_global->__pyx_tuple__156
#define __pyx_tuple__157 __pyx_mstate_global->__pyx_tuple__157
#define __pyx_tuple__158 __pyx_mstate_global->__pyx_tuple__158
#define __pyx_tuple__159 __pyx_mstate_global->__pyx_tuple__159
#define __pyx_tuple__160 __pyx_mstate_global->__pyx_tuple__160
#define __pyx_tuple__161 __pyx_mstate_global->__pyx_tuple__161
#define __pyx_tuple__162 __pyx_mstate_global->__pyx_tuple__162
#define __pyx_tuple__163 __pyx_mstate_global->__pyx_tuple__163
#define __pyx_tuple__164 __pyx_mstate_global->__pyx_tuple__164
#define __pyx_tuple__165 __pyx_mstate_global->__pyx_tuple__165
#define __pyx_tuple__166 __pyx_mstate_global->__pyx_tuple__166
#define __pyx_tuple__167 __pyx_mstate_global->__pyx_tuple__167
#define __pyx_tuple__168 __pyx_mstate_global->__pyx_tuple__168
#define __pyx_tuple__169 __pyx_mstate_global->__pyx_tuple__169
#define __pyx_tuple__170 __pyx_mstate_global->__pyx_tuple__170
#define __pyx_tuple__171 __pyx_mstate_global->__pyx_tuple__171
#define __pyx_tuple__172 __pyx_mstate_global->__pyx_tuple__172
#define __pyx_tuple__173 __pyx_mstate_global->__pyx_tuple__173
#define __pyx_tuple__174 __pyx_mstate_global->__pyx_tuple__174
#define __pyx_tuple__175 __pyx_mstate_global->__pyx_tuple__175
#define __pyx_tuple__176 __pyx_mstate_global->__pyx_tuple__176
#define __pyx_tuple__177 __pyx_mstate_global->__pyx_tuple__177
#define __pyx_tuple__178 __pyx_mstate_global->__pyx_tuple__178
#define __pyx_tuple__179 __pyx_mstate_global->__pyx_tuple__179
#define __pyx_tuple__180 __pyx_mstate_global->__pyx_tuple__180
#define __pyx_tuple__181 __pyx_mstate_global->__pyx_tuple__181
#define __pyx_tuple__182 __pyx_mstate_global->__pyx_tuple__182
#define __pyx_tuple__183 __pyx_mstate_global->__pyx_tuple__183
#define __pyx_tuple__184 __pyx_mstate_global->__pyx_tuple__184
#define __pyx_tuple__185 __pyx_mstate_global->__pyx_tuple__185
#define __pyx_tuple__186 __pyx_mstate_global->__pyx_tuple__186
#define __pyx_tuple__187 __pyx_mstate_global->__pyx_tuple__187
#define __pyx_tuple__188 __pyx_mstate_global->__pyx_tuple__188
#define __pyx_tuple__189 __pyx_mstate_global->__pyx_tuple__189
#define __pyx_tuple__190 __pyx_mstate_global->__pyx_tuple__190
#define __pyx_tuple__191 __pyx_mstate_global->__pyx_tuple__191
#define __pyx_tuple__192 __pyx_mstate_global->__pyx_tuple__192
#define __pyx_tuple__193 __pyx_mstate_global->__pyx_tuple__193
#define __pyx_tuple__194 __pyx_mstate_global->__pyx_tuple__194
#define __pyx_tuple__195 __pyx_mstate_global->__pyx_tuple__195
#define __pyx_tuple__196 __pyx_mstate_global->__pyx_tuple__196
#define __pyx_tuple__197 __pyx_mstate_global->__pyx_tuple__197
#define __pyx_tuple__198 __pyx_mstate_global->__pyx_tuple__198
#define __pyx_tuple__199 __pyx_mstate_global->__pyx_tuple__199
#define __pyx_tuple__200 __pyx_mstate_global->__pyx_tuple__200
#define __pyx_tuple__201 __pyx_mstate_global->__pyx_tuple__201
#define __pyx_tuple__202 __pyx_mstate_global->__pyx_tuple__202
#define __pyx_tuple__203 __pyx_mstate_global->__pyx_tuple__203
#define __pyx_tuple__204 __pyx_mstate_global->__pyx_tuple__204
#define __pyx_tuple__205 __pyx_mstate_global->__pyx_tuple__205
#define __pyx_tuple__206 __pyx_mstate_global->__pyx_tuple__206
#define __pyx_tuple__207 __pyx_mstate_global->__pyx_tuple__207
#define __pyx_tuple__208 __pyx_mstate_global->__pyx_tuple__208
#define __pyx_tuple__209 __pyx_mstate_global->__pyx_tuple__209
#define __pyx_tuple__210 __pyx_mstate_global->__pyx_tuple__210
#define __pyx_tuple__211 __pyx_mstate_global->__pyx_tuple__211
#define __pyx_tuple__212 __pyx_mstate_global->__pyx_tuple__212
#define __pyx_tuple__213 __pyx_mstate_global->__pyx_tuple__213
#define __pyx_tuple__214 __pyx_mstate_global->__pyx_tuple__214
#define __pyx_tuple__215 __pyx_mstate_global->__pyx_tuple__215
#define __pyx_tuple__216 __pyx_mstate_global->__pyx_tuple__216
#define __pyx_tuple__217 __pyx_mstate_global->__pyx_tuple__217
#define __pyx_tuple__218 __pyx_mstate_global->__pyx_tuple__218
#define __pyx_tuple__219 __pyx_mstate_global->__pyx_tuple__219
#define __pyx_tuple__220 __pyx_mstate_global->__pyx_tuple__220
#define __pyx_tuple__221 __pyx_mstate_global->__pyx_tuple__221
#define __pyx_tuple__222 __pyx_mstate_global->__pyx_tuple__222
#define __pyx_tuple__223 __pyx_mstate_global->__pyx_tuple__223
#define __pyx_tuple__224 __pyx_mstate_global->__pyx_tuple__224
#define __pyx_tuple__225 __pyx_mstate_global->__pyx_tuple__225
#define __pyx_tuple__226 __pyx_mstate_global->__pyx_tuple__226
#define __pyx_tuple__227 __pyx_mstate_global->__pyx_tuple__227
#define __pyx_tuple__228 __pyx_mstate_global->__pyx_tuple__228
#define __pyx_tuple__229 __pyx_mstate_global->__pyx_tuple__229
#define __pyx_tuple__230 __pyx_mstate_global->__pyx_tuple__230
#define __pyx_tuple__231 __pyx_mstate_global->__pyx_tuple__231
#define __pyx_tuple__232 __pyx_mstate_global->__pyx_tuple__232
#define __pyx_tuple__233 __pyx_mstate_global->__pyx_tuple__233
#define __pyx_tuple__234 __pyx_mstate_global->__pyx_tuple__234
#define __pyx_tuple__235 __pyx_mstate_global->__pyx_tuple__235
#define __pyx_tuple__236 __pyx_mstate_global->__pyx_tuple__236
#define __pyx_tuple__237 __pyx_mstate_global->__pyx_tuple__237
#define __pyx_tuple__238 __pyx_mstate_global->__pyx_tuple__238
#define __pyx_tuple__239 __pyx_mstate_global->__pyx_tuple__239
#define __pyx_tuple__240 __pyx_mstate_global->__pyx_tuple__240
#define __pyx_tuple__241 __pyx_mstate_global->__pyx_tuple__241
#define __pyx_tuple__242 __pyx_mstate_global->__pyx_tuple__242
#define __pyx_tuple__243 __pyx_mstate_global->__pyx_tuple__243
#define __pyx_tuple__244 __pyx_mstate_global->__pyx_tuple__244
#define __pyx_tuple__245 __pyx_mstate_global->__pyx_tuple__245
#define __pyx_tuple__246 __pyx_mstate_global->__pyx_tuple__246
#define __pyx_tuple__247 __pyx_mstate_global->__pyx_tuple__247
#define __pyx_tuple__248 __pyx_mstate_global->__pyx_tuple__248
#define __pyx_tuple__249 __pyx_mstate_global->__pyx_tuple__249
#define __pyx_tuple__250 __pyx_mstate_global->__pyx_tuple__250
#define __pyx_tuple__251 __pyx_mstate_global->__pyx_tuple__251
#define __pyx_tuple__252 __pyx_mstate_global->__pyx_tuple__252
#define __pyx_tuple__253 __pyx_mstate_global->__pyx_tuple__253
#define __pyx_tuple__254 __pyx_mstate_global->__pyx_tuple__254
#define __pyx_tuple__255 __pyx_mstate_global->__pyx_tuple__255
#define __pyx_tuple__256 __pyx_mstate_global->__pyx_tuple__256
#define __pyx_tuple__257 __pyx_mstate_global->__pyx_tuple__257
#define __pyx_tuple__258 __pyx_mstate_global->__pyx_tuple__258
#define __pyx_tuple__259 __pyx_mstate_global->__pyx_tuple__259
#define __pyx_tuple__260 __pyx_mstate_global->__pyx_tuple__260
#define __pyx_tuple__261 __pyx_mstate_global->__pyx_tuple__261
#define __pyx_tuple__262 __pyx_mstate_global->__pyx_tuple__262
#define __pyx_tuple__263 __pyx_mstate_global->__pyx_tuple__263
#define __pyx_tuple__264 __pyx_mstate_global->__pyx_tuple__264
#define __pyx_tuple__265 __pyx_mstate_global->__pyx_tuple__265
#define __pyx_tuple__266 __pyx_mstate_global->__pyx_tuple__266
#define __pyx_tuple__267 __pyx_mstate_global->__pyx_tuple__267
#define __pyx_tuple__268 __pyx_mstate_global->__pyx_tuple__268
#define __pyx_tuple__269 __pyx_mstate_global->__pyx_tuple__269
#define __pyx_tuple__270 __pyx_mstate_global->__pyx_tuple__270
#define __pyx_tuple__271 __pyx_mstate_global->__pyx_tuple__271
#define __pyx_tuple__272 __pyx_mstate_global->__pyx_tuple__272
#define __pyx_tuple__273 __pyx_mstate_global->__pyx_tuple__273
#define __pyx_tuple__274 __pyx_mstate_global->__pyx_tuple__274
#define __pyx_tuple__275 __pyx_mstate_global->__pyx_tuple__275
#define __pyx_tuple__276 __pyx_mstate_global->__pyx_tuple__276
#define __pyx_tuple__277 __pyx_mstate_global->__pyx_tuple__277
#define __pyx_tuple__278 __pyx_mstate_global->__pyx_tuple__278
#define __pyx_tuple__279 __pyx_mstate_global->__pyx_tuple__279
#define __pyx_tuple__280 __pyx_mstate_global->__pyx_tuple__280
#define __pyx_tuple__281 __pyx_mstate_global->__pyx_tuple__281
#define __pyx_tuple__282 __pyx_mstate_global->__pyx_tuple__282
#define __pyx_tuple__283 __pyx_mstate_global->__pyx_tuple__283
#define __pyx_tuple__284 __pyx_mstate_global->__pyx_tuple__284
#define __pyx_tuple__285 __pyx_mstate_global->__pyx_tuple__285
#define __pyx_tuple__286 __pyx_mstate_global->__pyx_tuple__286
#define __pyx_tuple__287 __pyx_mstate_global->__pyx_tuple__287
#define __pyx_tuple__288 __pyx_mstate_global->__pyx_tuple__288
#define __pyx_tuple__289 __pyx_mstate_global->__pyx_tuple__289
#define __pyx_tuple__290 __pyx_mstate_global->__pyx_tuple__290
#define __pyx_tuple__291 __pyx_mstate_global->__pyx_tuple__291
#define __pyx_tuple__292 __pyx_mstate_global->__pyx_tuple__292
#define __pyx_tuple__293 __pyx_mstate_global->__pyx_tuple__293
#define __pyx_tuple__294 __pyx_mstate_global->__pyx_tuple__294
#define __pyx_tuple__295 __pyx_mstate_global->__pyx_tuple__295
#define __pyx_tuple__296 __pyx_mstate_global->__pyx_tuple__296
#define __pyx_tuple__297 __pyx_mstate_global->__pyx_tuple__297
#define __pyx_tuple__298 __pyx_mstate_global->__pyx_tuple__298
#define __pyx_tuple__299 __pyx_mstate_global->__pyx_tuple__299
#define __pyx_tuple__300 __pyx_mstate_global->__pyx_tuple__300
#define __pyx_tuple__301 __pyx_mstate_global->__pyx_tuple__301
#define __pyx_tuple__302 __pyx_mstate_global->__pyx_tuple__302
#define __pyx_tuple__303 __pyx_mstate_global->__pyx_tuple__303
#define __pyx_tuple__304 __pyx_mstate_global->__pyx_tuple__304
#define __pyx_tuple__305 __pyx_mstate_global->__pyx_tuple__305
#define __pyx_tuple__306 __pyx_mstate_global->__pyx_tuple__306
#define __pyx_tuple__307 __pyx_mstate_global->__pyx_tuple__307
#define __pyx_tuple__308 __pyx_mstate_global->__pyx_tuple__308
#define __pyx_tuple__309 __pyx_mstate_global->__pyx_tuple__309
#define __pyx_tuple__310 __pyx_mstate_global->__pyx_tuple__310
#define __pyx_tuple__311 __pyx_mstate_global->__pyx_tuple__311
#define __pyx_tuple__312 __pyx_mstate_global->__pyx_tuple__312
#define __pyx_tuple__313 __pyx_mstate_global->__pyx_tuple__313
#define __pyx_tuple__314 __pyx_mstate_global->__pyx_tuple__314
#define __pyx_tuple__315 __pyx_mstate_global->__pyx_tuple__315
#define __pyx_tuple__316 __pyx_mstate_global->__pyx_tuple__316
#define __pyx_tuple__317 __pyx_mstate_global->__pyx_tuple__317
#define __pyx_tuple__318 __pyx_mstate_global->__pyx_tuple__318
#define __pyx_tuple__319 __pyx_mstate_global->__pyx_tuple__319
#define __pyx_tuple__320 __pyx_mstate_global->__pyx_tuple__320
#define __pyx_tuple__321 __pyx_mstate_global->__pyx_tuple__321
#define __pyx_tuple__322 __pyx_mstate_global->__pyx_tuple__322
#define __pyx_tuple__323 __pyx_mstate_global->__pyx_tuple__323
#define __pyx_tuple__324 __pyx_mstate_global->__pyx_tuple__324
#define __pyx_tuple__325 __pyx_mstate_global->__pyx_tuple__325
#define __pyx_tuple__326 __pyx_mstate_global->__pyx_tuple__326
#define __pyx_tuple__327 __pyx_mstate_global->__pyx_tuple__327
#define __pyx_tuple__328 __pyx_mstate_global->__pyx_tuple__328
#define __pyx_tuple__329 __pyx_mstate_global->__pyx_tuple__329
#define __pyx_tuple__330 __pyx_mstate_global->__pyx_tuple__330
#define __pyx_tuple__331 __pyx_mstate_global->__pyx_tuple__331
#define __pyx_tuple__332 __pyx_mstate_global->__pyx_tuple__332
#define __pyx_tuple__333 __pyx_mstate_global->__pyx_tuple__333
#define __pyx_tuple__334 __pyx_mstate_global->__pyx_tuple__334
#define __pyx_tuple__335 __pyx_mstate_global->__pyx_tuple__335
#define __pyx_tuple__336 __pyx_mstate_global->__pyx_tuple__336
#define __pyx_tuple__337 __pyx_mstate_global->__pyx_tuple__337
#define __pyx_tuple__338 __pyx_mstate_global->__pyx_tuple__338
#define __pyx_tuple__339 __pyx_mstate_global->__pyx_tuple__339
#define __pyx_tuple__340 __pyx_mstate_global->__pyx_tuple__340
#define __pyx_tuple__341 __pyx_mstate_global->__pyx_tuple__341
#define __pyx_tuple__342 __pyx_mstate_global->__pyx_tuple__342
#define __pyx_tuple__343 __pyx_mstate_global->__pyx_tuple__343
#define __pyx_tuple__344 __pyx_mstate_global->__pyx_tuple__344
#define __pyx_tuple__345 __pyx_mstate_global->__pyx_tuple__345
#define __pyx_tuple__346 __pyx_mstate_global->__pyx_tuple__346
#define __pyx_tuple__347 __pyx_mstate_global->__pyx_tuple__347
#define __pyx_tuple__348 __pyx_mstate_global->__pyx_tuple__348
#define __pyx_tuple__349 __pyx_mstate_global->__pyx_tuple__349
#define __pyx_tuple__350 __pyx_mstate_global->__pyx_tuple__350
#define __pyx_tuple__351 __pyx_mstate_global->__pyx_tuple__351
#define __pyx_tuple__352 __pyx_mstate_global->__pyx_tuple__352
#define __pyx_tuple__353 __pyx_mstate_global->__pyx_tuple__353
#define __pyx_tuple__354 __pyx_mstate_global->__pyx_tuple__354
#define __pyx_tuple__355 __pyx_mstate_global->__pyx_tuple__355
#define __pyx_tuple__356 __pyx_mstate_global->__pyx_tuple__356
#define __pyx_tuple__357 __pyx_mstate_global->__pyx_tuple__357
#define __pyx_tuple__358 __pyx_mstate_global->__pyx_tuple__358
#define __pyx_tuple__359 __pyx_mstate_global->__pyx_tuple__359
#define __pyx_tuple__360 __pyx_mstate_global->__pyx_tuple__360
#define __pyx_tuple__361 __pyx_mstate_global->__pyx_tuple__361
#define __pyx_tuple__362 __pyx_mstate_global->__pyx_tuple__362
#define __pyx_tuple__363 __pyx_mstate_global->__pyx_tuple__363
#define __pyx_tuple__364 __pyx_mstate_global->__pyx_tuple__364
#define __pyx_tuple__365 __pyx_mstate_global->__pyx_tuple__365
#define __pyx_tuple__366 __pyx_mstate_global->__pyx_tuple__366
#define __pyx_tuple__367 __pyx_mstate_global->__pyx_tuple__367
#define __pyx_tuple__368 __pyx_mstate_global->__pyx_tuple__368
#define __pyx_tuple__369 __pyx_mstate_global->__pyx_tuple__369
#define __pyx_tuple__370 __pyx_mstate_global->__pyx_tuple__370
#define __pyx_tuple__371 __pyx_mstate_global->__pyx_tuple__371
#define __pyx_tuple__372 __pyx_mstate_global->__pyx_tuple__372
#define __pyx_tuple__373 __pyx_mstate_global->__pyx_tuple__373
#define __pyx_tuple__374 __pyx_mstate_global->__pyx_tuple__374
#define __pyx_tuple__375 __pyx_mstate_global->__pyx_tuple__375
#define __pyx_tuple__376 __pyx_mstate_global->__pyx_tuple__376
#define __pyx_tuple__377 __pyx_mstate_global->__pyx_tuple__377
#define __pyx_tuple__378 __pyx_mstate_global->__pyx_tuple__378
#define __pyx_tuple__379 __pyx_mstate_global->__pyx_tuple__379
#define __pyx_tuple__380 __pyx_mstate_global->__pyx_tuple__380
#define __pyx_tuple__381 __pyx_mstate_global->__pyx_tuple__381
#define __pyx_tuple__382 __pyx_mstate_global->__pyx_tuple__382
#define __pyx_tuple__383 __pyx_mstate_global->__pyx_tuple__383
#define __pyx_tuple__384 __pyx_mstate_global->__pyx_tuple__384
#define __pyx_tuple__385 __pyx_mstate_global->__pyx_tuple__385
#define __pyx_tuple__386 __pyx_mstate_global->__pyx_tuple__386
#define __pyx_tuple__387 __pyx_mstate_global->__pyx_tuple__387
#define __pyx_tuple__388 __pyx_mstate_global->__pyx_tuple__388
#define __pyx_tuple__389 __pyx_mstate_global->__pyx_tuple__389
#define __pyx_tuple__390 __pyx_mstate_global->__pyx_tuple__390
#define __pyx_tuple__391 __pyx_mstate_global->__pyx_tuple__391
#define __pyx_tuple__392 __pyx_mstate_global->__pyx_tuple__392
#define __pyx_tuple__393 __pyx_mstate_global->__pyx_tuple__393
#define __pyx_tuple__394 __pyx_mstate_global->__pyx_tuple__394
#define __pyx_tuple__395 __pyx_mstate_global->__pyx_tuple__395
#define __pyx_tuple__396 __pyx_mstate_global->__pyx_tuple__396
#define __pyx_tuple__397 __pyx_mstate_global->__pyx_tuple__397
#define __pyx_tuple__398 __pyx_mstate_global->__pyx_tuple__398
#define __pyx_tuple__399 __pyx_mstate_global->__pyx_tuple__399
#define __pyx_tuple__400 __pyx_mstate_global->__pyx_tuple__400
#define __pyx_tuple__401 __pyx_mstate_global->__pyx_tuple__401
#define __pyx_tuple__402 __pyx_mstate_global->__pyx_tuple__402
#define __pyx_tuple__403 __pyx_mstate_global->__pyx_tuple__403
#define __pyx_tuple__404 __pyx_mstate_global->__pyx_tuple__404
#define __pyx_tuple__405 __pyx_mstate_global->__pyx_tuple__405
#define __pyx_tuple__406 __pyx_mstate_global->__pyx_tuple__406
#define __pyx_tuple__407 __pyx_mstate_global->__pyx_tuple__407
#define __pyx_tuple__408 __pyx_mstate_global->__pyx_tuple__408
#define __pyx_tuple__409 __pyx_mstate_global->__pyx_tuple__409
#define __pyx_tuple__410 __pyx_mstate_global->__pyx_tuple__410
#define __pyx_tuple__411 __pyx_mstate_global->__pyx_tuple__411
#define __pyx_tuple__412 __pyx_mstate_global->__pyx_tuple__412
#define __pyx_tuple__413 __pyx_mstate_global->__pyx_tuple__413
#define __pyx_tuple__414 __pyx_mstate_global->__pyx_tuple__414
#define __pyx_tuple__415 __pyx_mstate_global->__pyx_tuple__415
#define __pyx_tuple__416 __pyx_mstate_global->__pyx_tuple__416
#define __pyx_tuple__417 __pyx_mstate_global->__pyx_tuple__417
#define __pyx_tuple__418 __pyx_mstate_global->__pyx_tuple__418
#define __pyx_tuple__419 __pyx_mstate_global->__pyx_tuple__419
#define __pyx_tuple__420 __pyx_mstate_global->__pyx_tuple__420
#define __pyx_tuple__421 __pyx_mstate_global->__pyx_tuple__421
#define __pyx_tuple__422 __pyx_mstate_global->__pyx_tuple__422
#define __pyx_tuple__423 __pyx_mstate_global->__pyx_tuple__423
#define __pyx_tuple__424 __pyx_mstate_global->__pyx_tuple__424
#define __pyx_tuple__425 __pyx_mstate_global->__pyx_tuple__425
#define __pyx_tuple__426 __pyx_mstate_global->__pyx_tuple__426
#define __pyx_tuple__427 __pyx_mstate_global->__pyx_tuple__427
#define __pyx_tuple__428 __pyx_mstate_global->__pyx_tuple__428
#define __pyx_tuple__429 __pyx_mstate_global->__pyx_tuple__429
#define __pyx_tuple__430 __pyx_mstate_global->__pyx_tuple__430
#define __pyx_tuple__431 __pyx_mstate_global->__pyx_tuple__431
#define __pyx_tuple__432 __pyx_mstate_global->__pyx_tuple__432
#define __pyx_tuple__433 __pyx_mstate_global->__pyx_tuple__433
#define __pyx_tuple__434 __pyx_mstate_global->__pyx_tuple__434
#define __pyx_tuple__435 __pyx_mstate_global->__pyx_tuple__435
#define __pyx_tuple__436 __pyx_mstate_global->__pyx_tuple__436
#define __pyx_tuple__437 __pyx_mstate_global->__pyx_tuple__437
#define __pyx_tuple__438 __pyx_mstate_global->__pyx_tuple__438
#define __pyx_tuple__439 __pyx_mstate_global->__pyx_tuple__439
#define __pyx_tuple__440 __pyx_mstate_global->__pyx_tuple__440
#define __pyx_tuple__441 __pyx_mstate_global->__pyx_tuple__441
#define __pyx_tuple__442 __pyx_mstate_global->__pyx_tuple__442
#define __pyx_tuple__443 __pyx_mstate_global->__pyx_tuple__443
#define __pyx_tuple__444 __pyx_mstate_global->__pyx_tuple__444
#define __pyx_tuple__445 __pyx_mstate_global->__pyx_tuple__445
#define __pyx_tuple__446 __pyx_mstate_global->__pyx_tuple__446
#define __pyx_tuple__447 __pyx_mstate_global->__pyx_tuple__447
#define __pyx_tuple__448 __pyx_mstate_global->__pyx_tuple__448
#define __pyx_tuple__449 __pyx_mstate_global->__pyx_tuple__449
#define __pyx_tuple__450 __pyx_mstate_global->__pyx_tuple__450
#define __pyx_tuple__451 __pyx_mstate_global->__pyx_tuple__451
/* #### Code section: module_code ### */

/* "cuda/_cuda/ccuda.pyx":464
 * cdef void *__cuGraphicsVDPAURegisterOutputSurface = NULL
 * 
 * cdef int cuPythonInit() except -1 nogil:             # <<<<<<<<<<<<<<
 *     global __cuPythonInit
 *     cdef bint usePTDS
 */

static int __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(void) {
  int __pyx_v_usePTDS;
  char __pyx_v_libPath[0x104];
  int __pyx_v_status;
  PyObject *__pyx_v_path = NULL;
  void *__pyx_v_handle;
  int __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  PyObject *__pyx_t_3 = NULL;
  int __pyx_t_4;
  int __pyx_t_5;
  Py_ssize_t __pyx_t_6;
  char const *__pyx_t_7;
  CUresult __pyx_t_8;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("cuPythonInit", 1);
  __Pyx_TraceCall("cuPythonInit", __pyx_f[0], 464, 1, __PYX_ERR(0, 464, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":467
 *     global __cuPythonInit
 *     cdef bint usePTDS
 *     if __cuPythonInit:             # <<<<<<<<<<<<<<
 *         return 0
 *     __cuPythonInit = True
 */
  if (__pyx_v_4cuda_5_cuda_5ccuda___cuPythonInit) {

    /* "cuda/_cuda/ccuda.pyx":468
 *     cdef bint usePTDS
 *     if __cuPythonInit:
 *         return 0             # <<<<<<<<<<<<<<
 *     __cuPythonInit = True
 *     with gil:
 */
    __pyx_r = 0;
    goto __pyx_L0;

    /* "cuda/_cuda/ccuda.pyx":467
 *     global __cuPythonInit
 *     cdef bint usePTDS
 *     if __cuPythonInit:             # <<<<<<<<<<<<<<
 *         return 0
 *     __cuPythonInit = True
 */
  }

  /* "cuda/_cuda/ccuda.pyx":469
 *     if __cuPythonInit:
 *         return 0
 *     __cuPythonInit = True             # <<<<<<<<<<<<<<
 *     with gil:
 *         usePTDS = os.getenv('CUDA_PYTHON_CUDA_PER_THREAD_DEFAULT_STREAM', default=0)
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuPythonInit = 1;

  /* "cuda/_cuda/ccuda.pyx":470
 *         return 0
 *     __cuPythonInit = True
 *     with gil:             # <<<<<<<<<<<<<<
 *         usePTDS = os.getenv('CUDA_PYTHON_CUDA_PER_THREAD_DEFAULT_STREAM', default=0)
 * 
 */
  {
      #ifdef WITH_THREAD
      PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
      #endif
      /*try:*/ {

        /* "cuda/_cuda/ccuda.pyx":471
 *     __cuPythonInit = True
 *     with gil:
 *         usePTDS = os.getenv('CUDA_PYTHON_CUDA_PER_THREAD_DEFAULT_STREAM', default=0)             # <<<<<<<<<<<<<<
 * 
 *     # Load library
 */
        __Pyx_GetModuleGlobalName(__pyx_t_1, __pyx_n_s_os); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 471, __pyx_L5_error)
        __Pyx_GOTREF(__pyx_t_1);
        __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_getenv); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 471, __pyx_L5_error)
        __Pyx_GOTREF(__pyx_t_2);
        __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
        __pyx_t_1 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 471, __pyx_L5_error)
        __Pyx_GOTREF(__pyx_t_1);
        if (PyDict_SetItem(__pyx_t_1, __pyx_n_s_default, __pyx_int_0) < 0) __PYX_ERR(0, 471, __pyx_L5_error)
        __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_2, __pyx_tuple_, __pyx_t_1); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 471, __pyx_L5_error)
        __Pyx_GOTREF(__pyx_t_3);
        __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
        __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
        __pyx_t_4 = __Pyx_PyObject_IsTrue(__pyx_t_3); if (unlikely((__pyx_t_4 == (int)-1) && PyErr_Occurred())) __PYX_ERR(0, 471, __pyx_L5_error)
        __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
        __pyx_v_usePTDS = __pyx_t_4;
      }

      /* "cuda/_cuda/ccuda.pyx":470
 *         return 0
 *     __cuPythonInit = True
 *     with gil:             # <<<<<<<<<<<<<<
 *         usePTDS = os.getenv('CUDA_PYTHON_CUDA_PER_THREAD_DEFAULT_STREAM', default=0)
 * 
 */
      /*finally:*/ {
        /*normal exit:*/{
          #ifdef WITH_THREAD
          __Pyx_PyGILState_Release(__pyx_gilstate_save);
          #endif
          goto __pyx_L6;
        }
        __pyx_L5_error: {
          #ifdef WITH_THREAD
          __Pyx_PyGILState_Release(__pyx_gilstate_save);
          #endif
          goto __pyx_L1_error;
        }
        __pyx_L6:;
      }
  }

  /* "cuda/_cuda/ccuda.pyx":475
 *     # Load library
 *     cdef char libPath[260]
 *     libPath[0] = 0             # <<<<<<<<<<<<<<
 *     with gil:
 *         status = loader.getCUDALibraryPath(libPath, sys.maxsize > 2**32)
 */
  (__pyx_v_libPath[0]) = 0;

  /* "cuda/_cuda/ccuda.pyx":476
 *     cdef char libPath[260]
 *     libPath[0] = 0
 *     with gil:             # <<<<<<<<<<<<<<
 *         status = loader.getCUDALibraryPath(libPath, sys.maxsize > 2**32)
 *         if status == 0 and len(libPath) != 0:
 */
  {
      #ifdef WITH_THREAD
      PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
      #endif
      /*try:*/ {

        /* "cuda/_cuda/ccuda.pyx":477
 *     libPath[0] = 0
 *     with gil:
 *         status = loader.getCUDALibraryPath(libPath, sys.maxsize > 2**32)             # <<<<<<<<<<<<<<
 *         if status == 0 and len(libPath) != 0:
 *             path = libPath.decode('utf-8')
 */
        __Pyx_GetModuleGlobalName(__pyx_t_3, __pyx_n_s_sys); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 477, __pyx_L8_error)
        __Pyx_GOTREF(__pyx_t_3);
        __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_3, __pyx_n_s_maxsize); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 477, __pyx_L8_error)
        __Pyx_GOTREF(__pyx_t_1);
        __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
        __pyx_t_3 = PyObject_RichCompare(__pyx_t_1, __pyx_int_4294967296, Py_GT); __Pyx_XGOTREF(__pyx_t_3); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 477, __pyx_L8_error)
        __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
        __pyx_t_4 = __Pyx_PyObject_IsTrue(__pyx_t_3); if (unlikely((__pyx_t_4 == (int)-1) && PyErr_Occurred())) __PYX_ERR(0, 477, __pyx_L8_error)
        __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
        __pyx_v_status = getCUDALibraryPath(__pyx_v_libPath, __pyx_t_4);

        /* "cuda/_cuda/ccuda.pyx":478
 *     with gil:
 *         status = loader.getCUDALibraryPath(libPath, sys.maxsize > 2**32)
 *         if status == 0 and len(libPath) != 0:             # <<<<<<<<<<<<<<
 *             path = libPath.decode('utf-8')
 *         else:
 */
        __pyx_t_5 = (__pyx_v_status == 0);
        if (__pyx_t_5) {
        } else {
          __pyx_t_4 = __pyx_t_5;
          goto __pyx_L11_bool_binop_done;
        }
        __pyx_t_6 = __Pyx_ssize_strlen(__pyx_v_libPath); if (unlikely(__pyx_t_6 == ((Py_ssize_t)-1))) __PYX_ERR(0, 478, __pyx_L8_error)
        __pyx_t_5 = (__pyx_t_6 != 0);
        __pyx_t_4 = __pyx_t_5;
        __pyx_L11_bool_binop_done:;
        if (__pyx_t_4) {

          /* "cuda/_cuda/ccuda.pyx":479
 *         status = loader.getCUDALibraryPath(libPath, sys.maxsize > 2**32)
 *         if status == 0 and len(libPath) != 0:
 *             path = libPath.decode('utf-8')             # <<<<<<<<<<<<<<
 *         else:
 *             path = 'libcuda.so.1'
 */
          __pyx_t_6 = __Pyx_ssize_strlen(__pyx_v_libPath); if (unlikely(__pyx_t_6 == ((Py_ssize_t)-1))) __PYX_ERR(0, 479, __pyx_L8_error)
          __pyx_t_3 = __Pyx_decode_c_string(__pyx_v_libPath, 0, __pyx_t_6, NULL, NULL, PyUnicode_DecodeUTF8); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 479, __pyx_L8_error)
          __Pyx_GOTREF(__pyx_t_3);
          __pyx_v_path = __pyx_t_3;
          __pyx_t_3 = 0;

          /* "cuda/_cuda/ccuda.pyx":478
 *     with gil:
 *         status = loader.getCUDALibraryPath(libPath, sys.maxsize > 2**32)
 *         if status == 0 and len(libPath) != 0:             # <<<<<<<<<<<<<<
 *             path = libPath.decode('utf-8')
 *         else:
 */
          goto __pyx_L10;
        }

        /* "cuda/_cuda/ccuda.pyx":481
 *             path = libPath.decode('utf-8')
 *         else:
 *             path = 'libcuda.so.1'             # <<<<<<<<<<<<<<
 *         handle = dlfcn.dlopen(bytes(path, encoding='utf-8'), dlfcn.RTLD_NOW)
 *         if (handle == NULL):
 */
        /*else*/ {
          __Pyx_INCREF(__pyx_kp_u_libcuda_so_1);
          __pyx_v_path = __pyx_kp_u_libcuda_so_1;
        }
        __pyx_L10:;

        /* "cuda/_cuda/ccuda.pyx":482
 *         else:
 *             path = 'libcuda.so.1'
 *         handle = dlfcn.dlopen(bytes(path, encoding='utf-8'), dlfcn.RTLD_NOW)             # <<<<<<<<<<<<<<
 *         if (handle == NULL):
 *             raise RuntimeError('Failed to dlopen ' + path)
 */
        __pyx_t_3 = PyTuple_New(1); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 482, __pyx_L8_error)
        __Pyx_GOTREF(__pyx_t_3);
        __Pyx_INCREF(__pyx_v_path);
        __Pyx_GIVEREF(__pyx_v_path);
        if (__Pyx_PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_v_path)) __PYX_ERR(0, 482, __pyx_L8_error);
        __pyx_t_1 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 482, __pyx_L8_error)
        __Pyx_GOTREF(__pyx_t_1);
        if (PyDict_SetItem(__pyx_t_1, __pyx_n_s_encoding, __pyx_kp_u_utf_8) < 0) __PYX_ERR(0, 482, __pyx_L8_error)
        __pyx_t_2 = __Pyx_PyObject_Call(((PyObject *)(&PyBytes_Type)), __pyx_t_3, __pyx_t_1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 482, __pyx_L8_error)
        __Pyx_GOTREF(__pyx_t_2);
        __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
        __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
        __pyx_t_7 = __Pyx_PyBytes_AsString(__pyx_t_2); if (unlikely((!__pyx_t_7) && PyErr_Occurred())) __PYX_ERR(0, 482, __pyx_L8_error)
        __pyx_v_handle = dlopen(__pyx_t_7, RTLD_NOW);
        __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;

        /* "cuda/_cuda/ccuda.pyx":483
 *             path = 'libcuda.so.1'
 *         handle = dlfcn.dlopen(bytes(path, encoding='utf-8'), dlfcn.RTLD_NOW)
 *         if (handle == NULL):             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Failed to dlopen ' + path)
 * 
 */
        __pyx_t_4 = (__pyx_v_handle == NULL);
        if (unlikely(__pyx_t_4)) {

          /* "cuda/_cuda/ccuda.pyx":484
 *         handle = dlfcn.dlopen(bytes(path, encoding='utf-8'), dlfcn.RTLD_NOW)
 *         if (handle == NULL):
 *             raise RuntimeError('Failed to dlopen ' + path)             # <<<<<<<<<<<<<<
 * 
 *     # Get latest __cuGetProcAddress_v2
 */
          __pyx_t_2 = PyNumber_Add(__pyx_kp_u_Failed_to_dlopen, __pyx_v_path); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 484, __pyx_L8_error)
          __Pyx_GOTREF(__pyx_t_2);
          __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_builtin_RuntimeError, __pyx_t_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 484, __pyx_L8_error)
          __Pyx_GOTREF(__pyx_t_1);
          __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
          __Pyx_Raise(__pyx_t_1, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
          __PYX_ERR(0, 484, __pyx_L8_error)

          /* "cuda/_cuda/ccuda.pyx":483
 *             path = 'libcuda.so.1'
 *         handle = dlfcn.dlopen(bytes(path, encoding='utf-8'), dlfcn.RTLD_NOW)
 *         if (handle == NULL):             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Failed to dlopen ' + path)
 * 
 */
        }
      }

      /* "cuda/_cuda/ccuda.pyx":476
 *     cdef char libPath[260]
 *     libPath[0] = 0
 *     with gil:             # <<<<<<<<<<<<<<
 *         status = loader.getCUDALibraryPath(libPath, sys.maxsize > 2**32)
 *         if status == 0 and len(libPath) != 0:
 */
      /*finally:*/ {
        /*normal exit:*/{
          #ifdef WITH_THREAD
          __Pyx_PyGILState_Release(__pyx_gilstate_save);
          #endif
          goto __pyx_L9;
        }
        __pyx_L8_error: {
          #ifdef WITH_THREAD
          __Pyx_PyGILState_Release(__pyx_gilstate_save);
          #endif
          goto __pyx_L1_error;
        }
        __pyx_L9:;
      }
  }

  /* "cuda/_cuda/ccuda.pyx":488
 *     # Get latest __cuGetProcAddress_v2
 *     global __cuGetProcAddress_v2
 *     __cuGetProcAddress_v2 = dlfcn.dlsym(handle, 'cuGetProcAddress_v2')             # <<<<<<<<<<<<<<
 * 
 *     # Load using cuGetProcAddress if available
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuGetProcAddress_v2 = dlsym(__pyx_v_handle, ((char const *)"cuGetProcAddress_v2"));

  /* "cuda/_cuda/ccuda.pyx":491
 * 
 *     # Load using cuGetProcAddress if available
 *     if __cuGetProcAddress_v2 != NULL:             # <<<<<<<<<<<<<<
 *         if usePTDS:
 *             # Get all PTDS version of functions
 */
  __pyx_t_4 = (__pyx_v_4cuda_5_cuda_5ccuda___cuGetProcAddress_v2 != NULL);
  if (__pyx_t_4) {

    /* "cuda/_cuda/ccuda.pyx":492
 *     # Load using cuGetProcAddress if available
 *     if __cuGetProcAddress_v2 != NULL:
 *         if usePTDS:             # <<<<<<<<<<<<<<
 *             # Get all PTDS version of functions
 *             pass
 */
    if (__pyx_v_usePTDS) {

      /* "cuda/_cuda/ccuda.pyx":496
 *             pass
 *             global __cuMemcpy
 *             cuGetProcAddress('cuMemcpy', &__cuMemcpy, 7000, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL)             # <<<<<<<<<<<<<<
 *             global __cuMemcpyPeer
 *             cuGetProcAddress('cuMemcpyPeer', &__cuMemcpyPeer, 7000, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL)
 */
      __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuMemcpy"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuMemcpy), 0x1B58, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 496, __pyx_L1_error)

      /* "cuda/_cuda/ccuda.pyx":498
 *             cuGetProcAddress('cuMemcpy', &__cuMemcpy, 7000, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL)
 *             global __cuMemcpyPeer
 *             cuGetProcAddress('cuMemcpyPeer', &__cuMemcpyPeer, 7000, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL)             # <<<<<<<<<<<<<<
 *             global __cuMemcpyHtoD_v2
 *             cuGetProcAddress('cuMemcpyHtoD', &__cuMemcpyHtoD_v2, 7000, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL)
 */
      __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuMemcpyPeer"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuMemcpyPeer), 0x1B58, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 498, __pyx_L1_error)

      /* "cuda/_cuda/ccuda.pyx":500
 *             cuGetProcAddress('cuMemcpyPeer', &__cuMemcpyPeer, 7000, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL)
 *             global __cuMemcpyHtoD_v2
 *             cuGetProcAddress('cuMemcpyHtoD', &__cuMemcpyHtoD_v2, 7000, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL)             # <<<<<<<<<<<<<<
 *             global __cuMemcpyDtoH_v2
 *             cuGetProcAddress('cuMemcpyDtoH', &__cuMemcpyDtoH_v2, 7000, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL)
 */
      __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuMemcpyHtoD"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuMemcpyHtoD_v2), 0x1B58, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 500, __pyx_L1_error)

      /* "cuda/_cuda/ccuda.pyx":502
 *             cuGetProcAddress('cuMemcpyHtoD', &__cuMemcpyHtoD_v2, 7000, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL)
 *             global __cuMemcpyDtoH_v2
 *             cuGetProcAddress('cuMemcpyDtoH', &__cuMemcpyDtoH_v2, 7000, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL)             # <<<<<<<<<<<<<<
 *             global __cuMemcpyDtoD_v2
 *             cuGetProcAddress('cuMemcpyDtoD', &__cuMemcpyDtoD_v2, 7000, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL)
 */
      __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuMemcpyDtoH"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuMemcpyDtoH_v2), 0x1B58, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 502, __pyx_L1_error)

      /* "cuda/_cuda/ccuda.pyx":504
 *             cuGetProcAddress('cuMemcpyDtoH', &__cuMemcpyDtoH_v2, 7000, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL)
 *             global __cuMemcpyDtoD_v2
 *             cuGetProcAddress('cuMemcpyDtoD', &__cuMemcpyDtoD_v2, 7000, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL)             # <<<<<<<<<<<<<<
 *             global __cuMemcpyDtoA_v2
 *             cuGetProcAddress('cuMemcpyDtoA', &__cuMemcpyDtoA_v2, 7000, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL)
 */
      __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuMemcpyDtoD"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuMemcpyDtoD_v2), 0x1B58, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 504, __pyx_L1_error)

      /* "cuda/_cuda/ccuda.pyx":506
 *             cuGetProcAddress('cuMemcpyDtoD', &__cuMemcpyDtoD_v2, 7000, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL)
 *             global __cuMemcpyDtoA_v2
 *             cuGetProcAddress('cuMemcpyDtoA', &__cuMemcpyDtoA_v2, 7000, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL)             # <<<<<<<<<<<<<<
 *             global __cuMemcpyAtoD_v2
 *             cuGetProcAddress('cuMemcpyAtoD', &__cuMemcpyAtoD_v2, 7000, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL)
 */
      __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuMemcpyDtoA"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuMemcpyDtoA_v2), 0x1B58, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 506, __pyx_L1_error)

      /* "cuda/_cuda/ccuda.pyx":508
 *             cuGetProcAddress('cuMemcpyDtoA', &__cuMemcpyDtoA_v2, 7000, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL)
 *             global __cuMemcpyAtoD_v2
 *             cuGetProcAddress('cuMemcpyAtoD', &__cuMemcpyAtoD_v2, 7000, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL)             # <<<<<<<<<<<<<<
 *             global __cuMemcpyHtoA_v2
 *             cuGetProcAddress('cuMemcpyHtoA', &__cuMemcpyHtoA_v2, 7000, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL)
 */
      __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuMemcpyAtoD"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuMemcpyAtoD_v2), 0x1B58, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 508, __pyx_L1_error)

      /* "cuda/_cuda/ccuda.pyx":510
 *             cuGetProcAddress('cuMemcpyAtoD', &__cuMemcpyAtoD_v2, 7000, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL)
 *             global __cuMemcpyHtoA_v2
 *             cuGetProcAddress('cuMemcpyHtoA', &__cuMemcpyHtoA_v2, 7000, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL)             # <<<<<<<<<<<<<<
 *             global __cuMemcpyAtoH_v2
 *             cuGetProcAddress('cuMemcpyAtoH', &__cuMemcpyAtoH_v2, 7000, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL)
 */
      __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuMemcpyHtoA"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuMemcpyHtoA_v2), 0x1B58, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 510, __pyx_L1_error)

      /* "cuda/_cuda/ccuda.pyx":512
 *             cuGetProcAddress('cuMemcpyHtoA', &__cuMemcpyHtoA_v2, 7000, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL)
 *             global __cuMemcpyAtoH_v2
 *             cuGetProcAddress('cuMemcpyAtoH', &__cuMemcpyAtoH_v2, 7000, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL)             # <<<<<<<<<<<<<<
 *             global __cuMemcpyAtoA_v2
 *             cuGetProcAddress('cuMemcpyAtoA', &__cuMemcpyAtoA_v2, 7000, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL)
 */
      __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuMemcpyAtoH"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuMemcpyAtoH_v2), 0x1B58, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 512, __pyx_L1_error)

      /* "cuda/_cuda/ccuda.pyx":514
 *             cuGetProcAddress('cuMemcpyAtoH', &__cuMemcpyAtoH_v2, 7000, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL)
 *             global __cuMemcpyAtoA_v2
 *             cuGetProcAddress('cuMemcpyAtoA', &__cuMemcpyAtoA_v2, 7000, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL)             # <<<<<<<<<<<<<<
 *             global __cuMemcpy2D_v2
 *             cuGetProcAddress('cuMemcpy2D', &__cuMemcpy2D_v2, 7000, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL)
 */
      __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuMemcpyAtoA"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuMemcpyAtoA_v2), 0x1B58, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 514, __pyx_L1_error)

      /* "cuda/_cuda/ccuda.pyx":516
 *             cuGetProcAddress('cuMemcpyAtoA', &__cuMemcpyAtoA_v2, 7000, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL)
 *             global __cuMemcpy2D_v2
 *             cuGetProcAddress('cuMemcpy2D', &__cuMemcpy2D_v2, 7000, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL)             # <<<<<<<<<<<<<<
 *             global __cuMemcpy2DUnaligned_v2
 *             cuGetProcAddress('cuMemcpy2DUnaligned', &__cuMemcpy2DUnaligned_v2, 7000, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL)
 */
      __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuMemcpy2D"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuMemcpy2D_v2), 0x1B58, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 516, __pyx_L1_error)

      /* "cuda/_cuda/ccuda.pyx":518
 *             cuGetProcAddress('cuMemcpy2D', &__cuMemcpy2D_v2, 7000, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL)
 *             global __cuMemcpy2DUnaligned_v2
 *             cuGetProcAddress('cuMemcpy2DUnaligned', &__cuMemcpy2DUnaligned_v2, 7000, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL)             # <<<<<<<<<<<<<<
 *             global __cuMemcpy3D_v2
 *             cuGetProcAddress('cuMemcpy3D', &__cuMemcpy3D_v2, 7000, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL)
 */
      __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuMemcpy2DUnaligned"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuMemcpy2DUnaligned_v2), 0x1B58, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 518, __pyx_L1_error)

      /* "cuda/_cuda/ccuda.pyx":520
 *             cuGetProcAddress('cuMemcpy2DUnaligned', &__cuMemcpy2DUnaligned_v2, 7000, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL)
 *             global __cuMemcpy3D_v2
 *             cuGetProcAddress('cuMemcpy3D', &__cuMemcpy3D_v2, 7000, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL)             # <<<<<<<<<<<<<<
 *             global __cuMemcpy3DPeer
 *             cuGetProcAddress('cuMemcpy3DPeer', &__cuMemcpy3DPeer, 7000, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL)
 */
      __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuMemcpy3D"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuMemcpy3D_v2), 0x1B58, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 520, __pyx_L1_error)

      /* "cuda/_cuda/ccuda.pyx":522
 *             cuGetProcAddress('cuMemcpy3D', &__cuMemcpy3D_v2, 7000, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL)
 *             global __cuMemcpy3DPeer
 *             cuGetProcAddress('cuMemcpy3DPeer', &__cuMemcpy3DPeer, 7000, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL)             # <<<<<<<<<<<<<<
 *             global __cuMemcpyAsync
 *             cuGetProcAddress('cuMemcpyAsync', &__cuMemcpyAsync, 7000, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL)
 */
      __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuMemcpy3DPeer"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuMemcpy3DPeer), 0x1B58, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 522, __pyx_L1_error)

      /* "cuda/_cuda/ccuda.pyx":524
 *             cuGetProcAddress('cuMemcpy3DPeer', &__cuMemcpy3DPeer, 7000, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL)
 *             global __cuMemcpyAsync
 *             cuGetProcAddress('cuMemcpyAsync', &__cuMemcpyAsync, 7000, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL)             # <<<<<<<<<<<<<<
 *             global __cuMemcpyPeerAsync
 *             cuGetProcAddress('cuMemcpyPeerAsync', &__cuMemcpyPeerAsync, 7000, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL)
 */
      __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuMemcpyAsync"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuMemcpyAsync), 0x1B58, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 524, __pyx_L1_error)

      /* "cuda/_cuda/ccuda.pyx":526
 *             cuGetProcAddress('cuMemcpyAsync', &__cuMemcpyAsync, 7000, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL)
 *             global __cuMemcpyPeerAsync
 *             cuGetProcAddress('cuMemcpyPeerAsync', &__cuMemcpyPeerAsync, 7000, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL)             # <<<<<<<<<<<<<<
 *             global __cuMemcpyHtoDAsync_v2
 *             cuGetProcAddress('cuMemcpyHtoDAsync', &__cuMemcpyHtoDAsync_v2, 7000, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL)
 */
      __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuMemcpyPeerAsync"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuMemcpyPeerAsync), 0x1B58, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 526, __pyx_L1_error)

      /* "cuda/_cuda/ccuda.pyx":528
 *             cuGetProcAddress('cuMemcpyPeerAsync', &__cuMemcpyPeerAsync, 7000, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL)
 *             global __cuMemcpyHtoDAsync_v2
 *             cuGetProcAddress('cuMemcpyHtoDAsync', &__cuMemcpyHtoDAsync_v2, 7000, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL)             # <<<<<<<<<<<<<<
 *             global __cuMemcpyDtoHAsync_v2
 *             cuGetProcAddress('cuMemcpyDtoHAsync', &__cuMemcpyDtoHAsync_v2, 7000, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL)
 */
      __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuMemcpyHtoDAsync"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuMemcpyHtoDAsync_v2), 0x1B58, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 528, __pyx_L1_error)

      /* "cuda/_cuda/ccuda.pyx":530
 *             cuGetProcAddress('cuMemcpyHtoDAsync', &__cuMemcpyHtoDAsync_v2, 7000, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL)
 *             global __cuMemcpyDtoHAsync_v2
 *             cuGetProcAddress('cuMemcpyDtoHAsync', &__cuMemcpyDtoHAsync_v2, 7000, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL)             # <<<<<<<<<<<<<<
 *             global __cuMemcpyDtoDAsync_v2
 *             cuGetProcAddress('cuMemcpyDtoDAsync', &__cuMemcpyDtoDAsync_v2, 7000, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL)
 */
      __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuMemcpyDtoHAsync"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuMemcpyDtoHAsync_v2), 0x1B58, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 530, __pyx_L1_error)

      /* "cuda/_cuda/ccuda.pyx":532
 *             cuGetProcAddress('cuMemcpyDtoHAsync', &__cuMemcpyDtoHAsync_v2, 7000, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL)
 *             global __cuMemcpyDtoDAsync_v2
 *             cuGetProcAddress('cuMemcpyDtoDAsync', &__cuMemcpyDtoDAsync_v2, 7000, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL)             # <<<<<<<<<<<<<<
 *             global __cuMemcpyHtoAAsync_v2
 *             cuGetProcAddress('cuMemcpyHtoAAsync', &__cuMemcpyHtoAAsync_v2, 7000, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL)
 */
      __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuMemcpyDtoDAsync"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuMemcpyDtoDAsync_v2), 0x1B58, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 532, __pyx_L1_error)

      /* "cuda/_cuda/ccuda.pyx":534
 *             cuGetProcAddress('cuMemcpyDtoDAsync', &__cuMemcpyDtoDAsync_v2, 7000, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL)
 *             global __cuMemcpyHtoAAsync_v2
 *             cuGetProcAddress('cuMemcpyHtoAAsync', &__cuMemcpyHtoAAsync_v2, 7000, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL)             # <<<<<<<<<<<<<<
 *             global __cuMemcpyAtoHAsync_v2
 *             cuGetProcAddress('cuMemcpyAtoHAsync', &__cuMemcpyAtoHAsync_v2, 7000, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL)
 */
      __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuMemcpyHtoAAsync"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuMemcpyHtoAAsync_v2), 0x1B58, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 534, __pyx_L1_error)

      /* "cuda/_cuda/ccuda.pyx":536
 *             cuGetProcAddress('cuMemcpyHtoAAsync', &__cuMemcpyHtoAAsync_v2, 7000, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL)
 *             global __cuMemcpyAtoHAsync_v2
 *             cuGetProcAddress('cuMemcpyAtoHAsync', &__cuMemcpyAtoHAsync_v2, 7000, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL)             # <<<<<<<<<<<<<<
 *             global __cuMemcpy2DAsync_v2
 *             cuGetProcAddress('cuMemcpy2DAsync', &__cuMemcpy2DAsync_v2, 7000, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL)
 */
      __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuMemcpyAtoHAsync"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuMemcpyAtoHAsync_v2), 0x1B58, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 536, __pyx_L1_error)

      /* "cuda/_cuda/ccuda.pyx":538
 *             cuGetProcAddress('cuMemcpyAtoHAsync', &__cuMemcpyAtoHAsync_v2, 7000, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL)
 *             global __cuMemcpy2DAsync_v2
 *             cuGetProcAddress('cuMemcpy2DAsync', &__cuMemcpy2DAsync_v2, 7000, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL)             # <<<<<<<<<<<<<<
 *             global __cuMemcpy3DAsync_v2
 *             cuGetProcAddress('cuMemcpy3DAsync', &__cuMemcpy3DAsync_v2, 7000, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL)
 */
      __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuMemcpy2DAsync"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuMemcpy2DAsync_v2), 0x1B58, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 538, __pyx_L1_error)

      /* "cuda/_cuda/ccuda.pyx":540
 *             cuGetProcAddress('cuMemcpy2DAsync', &__cuMemcpy2DAsync_v2, 7000, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL)
 *             global __cuMemcpy3DAsync_v2
 *             cuGetProcAddress('cuMemcpy3DAsync', &__cuMemcpy3DAsync_v2, 7000, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL)             # <<<<<<<<<<<<<<
 *             global __cuMemcpy3DPeerAsync
 *             cuGetProcAddress('cuMemcpy3DPeerAsync', &__cuMemcpy3DPeerAsync, 7000, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL)
 */
      __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuMemcpy3DAsync"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuMemcpy3DAsync_v2), 0x1B58, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 540, __pyx_L1_error)

      /* "cuda/_cuda/ccuda.pyx":542
 *             cuGetProcAddress('cuMemcpy3DAsync', &__cuMemcpy3DAsync_v2, 7000, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL)
 *             global __cuMemcpy3DPeerAsync
 *             cuGetProcAddress('cuMemcpy3DPeerAsync', &__cuMemcpy3DPeerAsync, 7000, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL)             # <<<<<<<<<<<<<<
 *             global __cuMemsetD8_v2
 *             cuGetProcAddress('cuMemsetD8', &__cuMemsetD8_v2, 7000, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL)
 */
      __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuMemcpy3DPeerAsync"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuMemcpy3DPeerAsync), 0x1B58, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 542, __pyx_L1_error)

      /* "cuda/_cuda/ccuda.pyx":544
 *             cuGetProcAddress('cuMemcpy3DPeerAsync', &__cuMemcpy3DPeerAsync, 7000, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL)
 *             global __cuMemsetD8_v2
 *             cuGetProcAddress('cuMemsetD8', &__cuMemsetD8_v2, 7000, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL)             # <<<<<<<<<<<<<<
 *             global __cuMemsetD16_v2
 *             cuGetProcAddress('cuMemsetD16', &__cuMemsetD16_v2, 7000, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL)
 */
      __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuMemsetD8"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuMemsetD8_v2), 0x1B58, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 544, __pyx_L1_error)

      /* "cuda/_cuda/ccuda.pyx":546
 *             cuGetProcAddress('cuMemsetD8', &__cuMemsetD8_v2, 7000, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL)
 *             global __cuMemsetD16_v2
 *             cuGetProcAddress('cuMemsetD16', &__cuMemsetD16_v2, 7000, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL)             # <<<<<<<<<<<<<<
 *             global __cuMemsetD32_v2
 *             cuGetProcAddress('cuMemsetD32', &__cuMemsetD32_v2, 7000, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL)
 */
      __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuMemsetD16"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuMemsetD16_v2), 0x1B58, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 546, __pyx_L1_error)

      /* "cuda/_cuda/ccuda.pyx":548
 *             cuGetProcAddress('cuMemsetD16', &__cuMemsetD16_v2, 7000, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL)
 *             global __cuMemsetD32_v2
 *             cuGetProcAddress('cuMemsetD32', &__cuMemsetD32_v2, 7000, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL)             # <<<<<<<<<<<<<<
 *             global __cuMemsetD2D8_v2
 *             cuGetProcAddress('cuMemsetD2D8', &__cuMemsetD2D8_v2, 7000, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL)
 */
      __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuMemsetD32"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuMemsetD32_v2), 0x1B58, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 548, __pyx_L1_error)

      /* "cuda/_cuda/ccuda.pyx":550
 *             cuGetProcAddress('cuMemsetD32', &__cuMemsetD32_v2, 7000, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL)
 *             global __cuMemsetD2D8_v2
 *             cuGetProcAddress('cuMemsetD2D8', &__cuMemsetD2D8_v2, 7000, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL)             # <<<<<<<<<<<<<<
 *             global __cuMemsetD2D16_v2
 *             cuGetProcAddress('cuMemsetD2D16', &__cuMemsetD2D16_v2, 7000, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL)
 */
      __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuMemsetD2D8"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuMemsetD2D8_v2), 0x1B58, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 550, __pyx_L1_error)

      /* "cuda/_cuda/ccuda.pyx":552
 *             cuGetProcAddress('cuMemsetD2D8', &__cuMemsetD2D8_v2, 7000, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL)
 *             global __cuMemsetD2D16_v2
 *             cuGetProcAddress('cuMemsetD2D16', &__cuMemsetD2D16_v2, 7000, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL)             # <<<<<<<<<<<<<<
 *             global __cuMemsetD2D32_v2
 *             cuGetProcAddress('cuMemsetD2D32', &__cuMemsetD2D32_v2, 7000, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL)
 */
      __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuMemsetD2D16"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuMemsetD2D16_v2), 0x1B58, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 552, __pyx_L1_error)

      /* "cuda/_cuda/ccuda.pyx":554
 *             cuGetProcAddress('cuMemsetD2D16', &__cuMemsetD2D16_v2, 7000, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL)
 *             global __cuMemsetD2D32_v2
 *             cuGetProcAddress('cuMemsetD2D32', &__cuMemsetD2D32_v2, 7000, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL)             # <<<<<<<<<<<<<<
 *             global __cuMemsetD8Async
 *             cuGetProcAddress('cuMemsetD8Async', &__cuMemsetD8Async, 7000, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL)
 */
      __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuMemsetD2D32"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuMemsetD2D32_v2), 0x1B58, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 554, __pyx_L1_error)

      /* "cuda/_cuda/ccuda.pyx":556
 *             cuGetProcAddress('cuMemsetD2D32', &__cuMemsetD2D32_v2, 7000, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL)
 *             global __cuMemsetD8Async
 *             cuGetProcAddress('cuMemsetD8Async', &__cuMemsetD8Async, 7000, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL)             # <<<<<<<<<<<<<<
 *             global __cuMemsetD16Async
 *             cuGetProcAddress('cuMemsetD16Async', &__cuMemsetD16Async, 7000, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL)
 */
      __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuMemsetD8Async"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuMemsetD8Async), 0x1B58, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 556, __pyx_L1_error)

      /* "cuda/_cuda/ccuda.pyx":558
 *             cuGetProcAddress('cuMemsetD8Async', &__cuMemsetD8Async, 7000, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL)
 *             global __cuMemsetD16Async
 *             cuGetProcAddress('cuMemsetD16Async', &__cuMemsetD16Async, 7000, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL)             # <<<<<<<<<<<<<<
 *             global __cuMemsetD32Async
 *             cuGetProcAddress('cuMemsetD32Async', &__cuMemsetD32Async, 7000, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL)
 */
      __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuMemsetD16Async"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuMemsetD16Async), 0x1B58, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 558, __pyx_L1_error)

      /* "cuda/_cuda/ccuda.pyx":560
 *             cuGetProcAddress('cuMemsetD16Async', &__cuMemsetD16Async, 7000, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL)
 *             global __cuMemsetD32Async
 *             cuGetProcAddress('cuMemsetD32Async', &__cuMemsetD32Async, 7000, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL)             # <<<<<<<<<<<<<<
 *             global __cuMemsetD2D8Async
 *             cuGetProcAddress('cuMemsetD2D8Async', &__cuMemsetD2D8Async, 7000, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL)
 */
      __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuMemsetD32Async"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuMemsetD32Async), 0x1B58, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 560, __pyx_L1_error)

      /* "cuda/_cuda/ccuda.pyx":562
 *             cuGetProcAddress('cuMemsetD32Async', &__cuMemsetD32Async, 7000, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL)
 *             global __cuMemsetD2D8Async
 *             cuGetProcAddress('cuMemsetD2D8Async', &__cuMemsetD2D8Async, 7000, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL)             # <<<<<<<<<<<<<<
 *             global __cuMemsetD2D16Async
 *             cuGetProcAddress('cuMemsetD2D16Async', &__cuMemsetD2D16Async, 7000, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL)
 */
      __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuMemsetD2D8Async"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuMemsetD2D8Async), 0x1B58, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 562, __pyx_L1_error)

      /* "cuda/_cuda/ccuda.pyx":564
 *             cuGetProcAddress('cuMemsetD2D8Async', &__cuMemsetD2D8Async, 7000, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL)
 *             global __cuMemsetD2D16Async
 *             cuGetProcAddress('cuMemsetD2D16Async', &__cuMemsetD2D16Async, 7000, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL)             # <<<<<<<<<<<<<<
 *             global __cuMemsetD2D32Async
 *             cuGetProcAddress('cuMemsetD2D32Async', &__cuMemsetD2D32Async, 7000, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL)
 */
      __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuMemsetD2D16Async"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuMemsetD2D16Async), 0x1B58, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 564, __pyx_L1_error)

      /* "cuda/_cuda/ccuda.pyx":566
 *             cuGetProcAddress('cuMemsetD2D16Async', &__cuMemsetD2D16Async, 7000, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL)
 *             global __cuMemsetD2D32Async
 *             cuGetProcAddress('cuMemsetD2D32Async', &__cuMemsetD2D32Async, 7000, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL)             # <<<<<<<<<<<<<<
 *             global __cuMemMapArrayAsync
 *             cuGetProcAddress('cuMemMapArrayAsync', &__cuMemMapArrayAsync, 11010, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL)
 */
      __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuMemsetD2D32Async"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuMemsetD2D32Async), 0x1B58, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 566, __pyx_L1_error)

      /* "cuda/_cuda/ccuda.pyx":568
 *             cuGetProcAddress('cuMemsetD2D32Async', &__cuMemsetD2D32Async, 7000, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL)
 *             global __cuMemMapArrayAsync
 *             cuGetProcAddress('cuMemMapArrayAsync', &__cuMemMapArrayAsync, 11010, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL)             # <<<<<<<<<<<<<<
 *             global __cuMemFreeAsync
 *             cuGetProcAddress('cuMemFreeAsync', &__cuMemFreeAsync, 11020, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL)
 */
      __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuMemMapArrayAsync"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuMemMapArrayAsync), 0x2B02, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 568, __pyx_L1_error)

      /* "cuda/_cuda/ccuda.pyx":570
 *             cuGetProcAddress('cuMemMapArrayAsync', &__cuMemMapArrayAsync, 11010, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL)
 *             global __cuMemFreeAsync
 *             cuGetProcAddress('cuMemFreeAsync', &__cuMemFreeAsync, 11020, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL)             # <<<<<<<<<<<<<<
 *             global __cuMemAllocAsync
 *             cuGetProcAddress('cuMemAllocAsync', &__cuMemAllocAsync, 11020, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL)
 */
      __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuMemFreeAsync"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuMemFreeAsync), 0x2B0C, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 570, __pyx_L1_error)

      /* "cuda/_cuda/ccuda.pyx":572
 *             cuGetProcAddress('cuMemFreeAsync', &__cuMemFreeAsync, 11020, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL)
 *             global __cuMemAllocAsync
 *             cuGetProcAddress('cuMemAllocAsync', &__cuMemAllocAsync, 11020, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL)             # <<<<<<<<<<<<<<
 *             global __cuMemAllocFromPoolAsync
 *             cuGetProcAddress('cuMemAllocFromPoolAsync', &__cuMemAllocFromPoolAsync, 11020, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL)
 */
      __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuMemAllocAsync"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuMemAllocAsync), 0x2B0C, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 572, __pyx_L1_error)

      /* "cuda/_cuda/ccuda.pyx":574
 *             cuGetProcAddress('cuMemAllocAsync', &__cuMemAllocAsync, 11020, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL)
 *             global __cuMemAllocFromPoolAsync
 *             cuGetProcAddress('cuMemAllocFromPoolAsync', &__cuMemAllocFromPoolAsync, 11020, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL)             # <<<<<<<<<<<<<<
 *             global __cuMemPrefetchAsync
 *             cuGetProcAddress('cuMemPrefetchAsync', &__cuMemPrefetchAsync, 8000, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL)
 */
      __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuMemAllocFromPoolAsync"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuMemAllocFromPoolAsync), 0x2B0C, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 574, __pyx_L1_error)

      /* "cuda/_cuda/ccuda.pyx":576
 *             cuGetProcAddress('cuMemAllocFromPoolAsync', &__cuMemAllocFromPoolAsync, 11020, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL)
 *             global __cuMemPrefetchAsync
 *             cuGetProcAddress('cuMemPrefetchAsync', &__cuMemPrefetchAsync, 8000, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL)             # <<<<<<<<<<<<<<
 *             global __cuMemPrefetchAsync_v2
 *             cuGetProcAddress('cuMemPrefetchAsync', &__cuMemPrefetchAsync_v2, 12020, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL)
 */
      __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuMemPrefetchAsync"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuMemPrefetchAsync), 0x1F40, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 576, __pyx_L1_error)

      /* "cuda/_cuda/ccuda.pyx":578
 *             cuGetProcAddress('cuMemPrefetchAsync', &__cuMemPrefetchAsync, 8000, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL)
 *             global __cuMemPrefetchAsync_v2
 *             cuGetProcAddress('cuMemPrefetchAsync', &__cuMemPrefetchAsync_v2, 12020, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL)             # <<<<<<<<<<<<<<
 *             global __cuStreamGetPriority
 *             cuGetProcAddress('cuStreamGetPriority', &__cuStreamGetPriority, 7000, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL)
 */
      __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuMemPrefetchAsync"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuMemPrefetchAsync_v2), 0x2EF4, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 578, __pyx_L1_error)

      /* "cuda/_cuda/ccuda.pyx":580
 *             cuGetProcAddress('cuMemPrefetchAsync', &__cuMemPrefetchAsync_v2, 12020, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL)
 *             global __cuStreamGetPriority
 *             cuGetProcAddress('cuStreamGetPriority', &__cuStreamGetPriority, 7000, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL)             # <<<<<<<<<<<<<<
 *             global __cuStreamGetFlags
 *             cuGetProcAddress('cuStreamGetFlags', &__cuStreamGetFlags, 7000, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL)
 */
      __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuStreamGetPriority"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuStreamGetPriority), 0x1B58, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 580, __pyx_L1_error)

      /* "cuda/_cuda/ccuda.pyx":582
 *             cuGetProcAddress('cuStreamGetPriority', &__cuStreamGetPriority, 7000, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL)
 *             global __cuStreamGetFlags
 *             cuGetProcAddress('cuStreamGetFlags', &__cuStreamGetFlags, 7000, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL)             # <<<<<<<<<<<<<<
 *             global __cuStreamGetId
 *             cuGetProcAddress('cuStreamGetId', &__cuStreamGetId, 12000, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL)
 */
      __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuStreamGetFlags"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuStreamGetFlags), 0x1B58, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 582, __pyx_L1_error)

      /* "cuda/_cuda/ccuda.pyx":584
 *             cuGetProcAddress('cuStreamGetFlags', &__cuStreamGetFlags, 7000, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL)
 *             global __cuStreamGetId
 *             cuGetProcAddress('cuStreamGetId', &__cuStreamGetId, 12000, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL)             # <<<<<<<<<<<<<<
 *             global __cuStreamGetCtx
 *             cuGetProcAddress('cuStreamGetCtx', &__cuStreamGetCtx, 9020, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL)
 */
      __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuStreamGetId"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuStreamGetId), 0x2EE0, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 584, __pyx_L1_error)

      /* "cuda/_cuda/ccuda.pyx":586
 *             cuGetProcAddress('cuStreamGetId', &__cuStreamGetId, 12000, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL)
 *             global __cuStreamGetCtx
 *             cuGetProcAddress('cuStreamGetCtx', &__cuStreamGetCtx, 9020, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL)             # <<<<<<<<<<<<<<
 *             global __cuStreamWaitEvent
 *             cuGetProcAddress('cuStreamWaitEvent', &__cuStreamWaitEvent, 7000, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL)
 */
      __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuStreamGetCtx"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuStreamGetCtx), 0x233C, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 586, __pyx_L1_error)

      /* "cuda/_cuda/ccuda.pyx":588
 *             cuGetProcAddress('cuStreamGetCtx', &__cuStreamGetCtx, 9020, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL)
 *             global __cuStreamWaitEvent
 *             cuGetProcAddress('cuStreamWaitEvent', &__cuStreamWaitEvent, 7000, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL)             # <<<<<<<<<<<<<<
 *             global __cuStreamAddCallback
 *             cuGetProcAddress('cuStreamAddCallback', &__cuStreamAddCallback, 7000, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL)
 */
      __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuStreamWaitEvent"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuStreamWaitEvent), 0x1B58, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 588, __pyx_L1_error)

      /* "cuda/_cuda/ccuda.pyx":590
 *             cuGetProcAddress('cuStreamWaitEvent', &__cuStreamWaitEvent, 7000, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL)
 *             global __cuStreamAddCallback
 *             cuGetProcAddress('cuStreamAddCallback', &__cuStreamAddCallback, 7000, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL)             # <<<<<<<<<<<<<<
 *             global __cuStreamBeginCapture_v2
 *             cuGetProcAddress('cuStreamBeginCapture', &__cuStreamBeginCapture_v2, 10010, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL)
 */
      __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuStreamAddCallback"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuStreamAddCallback), 0x1B58, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 590, __pyx_L1_error)

      /* "cuda/_cuda/ccuda.pyx":592
 *             cuGetProcAddress('cuStreamAddCallback', &__cuStreamAddCallback, 7000, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL)
 *             global __cuStreamBeginCapture_v2
 *             cuGetProcAddress('cuStreamBeginCapture', &__cuStreamBeginCapture_v2, 10010, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL)             # <<<<<<<<<<<<<<
 *             global __cuStreamBeginCaptureToGraph
 *             cuGetProcAddress('cuStreamBeginCaptureToGraph', &__cuStreamBeginCaptureToGraph, 12030, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL)
 */
      __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuStreamBeginCapture"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuStreamBeginCapture_v2), 0x271A, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 592, __pyx_L1_error)

      /* "cuda/_cuda/ccuda.pyx":594
 *             cuGetProcAddress('cuStreamBeginCapture', &__cuStreamBeginCapture_v2, 10010, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL)
 *             global __cuStreamBeginCaptureToGraph
 *             cuGetProcAddress('cuStreamBeginCaptureToGraph', &__cuStreamBeginCaptureToGraph, 12030, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL)             # <<<<<<<<<<<<<<
 *             global __cuStreamEndCapture
 *             cuGetProcAddress('cuStreamEndCapture', &__cuStreamEndCapture, 10000, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL)
 */
      __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuStreamBeginCaptureToGraph"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuStreamBeginCaptureToGraph), 0x2EFE, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 594, __pyx_L1_error)

      /* "cuda/_cuda/ccuda.pyx":596
 *             cuGetProcAddress('cuStreamBeginCaptureToGraph', &__cuStreamBeginCaptureToGraph, 12030, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL)
 *             global __cuStreamEndCapture
 *             cuGetProcAddress('cuStreamEndCapture', &__cuStreamEndCapture, 10000, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL)             # <<<<<<<<<<<<<<
 *             global __cuStreamIsCapturing
 *             cuGetProcAddress('cuStreamIsCapturing', &__cuStreamIsCapturing, 10000, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL)
 */
      __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuStreamEndCapture"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuStreamEndCapture), 0x2710, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 596, __pyx_L1_error)

      /* "cuda/_cuda/ccuda.pyx":598
 *             cuGetProcAddress('cuStreamEndCapture', &__cuStreamEndCapture, 10000, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL)
 *             global __cuStreamIsCapturing
 *             cuGetProcAddress('cuStreamIsCapturing', &__cuStreamIsCapturing, 10000, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL)             # <<<<<<<<<<<<<<
 *             global __cuStreamGetCaptureInfo_v2
 *             cuGetProcAddress('cuStreamGetCaptureInfo', &__cuStreamGetCaptureInfo_v2, 11030, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL)
 */
      __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuStreamIsCapturing"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuStreamIsCapturing), 0x2710, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 598, __pyx_L1_error)

      /* "cuda/_cuda/ccuda.pyx":600
 *             cuGetProcAddress('cuStreamIsCapturing', &__cuStreamIsCapturing, 10000, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL)
 *             global __cuStreamGetCaptureInfo_v2
 *             cuGetProcAddress('cuStreamGetCaptureInfo', &__cuStreamGetCaptureInfo_v2, 11030, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL)             # <<<<<<<<<<<<<<
 *             global __cuStreamGetCaptureInfo_v3
 *             cuGetProcAddress('cuStreamGetCaptureInfo', &__cuStreamGetCaptureInfo_v3, 12030, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL)
 */
      __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuStreamGetCaptureInfo"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuStreamGetCaptureInfo_v2), 0x2B16, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 600, __pyx_L1_error)

      /* "cuda/_cuda/ccuda.pyx":602
 *             cuGetProcAddress('cuStreamGetCaptureInfo', &__cuStreamGetCaptureInfo_v2, 11030, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL)
 *             global __cuStreamGetCaptureInfo_v3
 *             cuGetProcAddress('cuStreamGetCaptureInfo', &__cuStreamGetCaptureInfo_v3, 12030, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL)             # <<<<<<<<<<<<<<
 *             global __cuStreamUpdateCaptureDependencies
 *             cuGetProcAddress('cuStreamUpdateCaptureDependencies', &__cuStreamUpdateCaptureDependencies, 11030, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL)
 */
      __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuStreamGetCaptureInfo"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuStreamGetCaptureInfo_v3), 0x2EFE, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 602, __pyx_L1_error)

      /* "cuda/_cuda/ccuda.pyx":604
 *             cuGetProcAddress('cuStreamGetCaptureInfo', &__cuStreamGetCaptureInfo_v3, 12030, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL)
 *             global __cuStreamUpdateCaptureDependencies
 *             cuGetProcAddress('cuStreamUpdateCaptureDependencies', &__cuStreamUpdateCaptureDependencies, 11030, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL)             # <<<<<<<<<<<<<<
 *             global __cuStreamUpdateCaptureDependencies_v2
 *             cuGetProcAddress('cuStreamUpdateCaptureDependencies', &__cuStreamUpdateCaptureDependencies_v2, 12030, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL)
 */
      __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuStreamUpdateCaptureDependencies"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuStreamUpdateCaptureDependencies), 0x2B16, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 604, __pyx_L1_error)

      /* "cuda/_cuda/ccuda.pyx":606
 *             cuGetProcAddress('cuStreamUpdateCaptureDependencies', &__cuStreamUpdateCaptureDependencies, 11030, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL)
 *             global __cuStreamUpdateCaptureDependencies_v2
 *             cuGetProcAddress('cuStreamUpdateCaptureDependencies', &__cuStreamUpdateCaptureDependencies_v2, 12030, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL)             # <<<<<<<<<<<<<<
 *             global __cuStreamAttachMemAsync
 *             cuGetProcAddress('cuStreamAttachMemAsync', &__cuStreamAttachMemAsync, 7000, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL)
 */
      __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuStreamUpdateCaptureDependencies"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuStreamUpdateCaptureDependencies_v2), 0x2EFE, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 606, __pyx_L1_error)

      /* "cuda/_cuda/ccuda.pyx":608
 *             cuGetProcAddress('cuStreamUpdateCaptureDependencies', &__cuStreamUpdateCaptureDependencies_v2, 12030, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL)
 *             global __cuStreamAttachMemAsync
 *             cuGetProcAddress('cuStreamAttachMemAsync', &__cuStreamAttachMemAsync, 7000, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL)             # <<<<<<<<<<<<<<
 *             global __cuStreamQuery
 *             cuGetProcAddress('cuStreamQuery', &__cuStreamQuery, 7000, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL)
 */
      __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuStreamAttachMemAsync"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuStreamAttachMemAsync), 0x1B58, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 608, __pyx_L1_error)

      /* "cuda/_cuda/ccuda.pyx":610
 *             cuGetProcAddress('cuStreamAttachMemAsync', &__cuStreamAttachMemAsync, 7000, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL)
 *             global __cuStreamQuery
 *             cuGetProcAddress('cuStreamQuery', &__cuStreamQuery, 7000, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL)             # <<<<<<<<<<<<<<
 *             global __cuStreamSynchronize
 *             cuGetProcAddress('cuStreamSynchronize', &__cuStreamSynchronize, 7000, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL)
 */
      __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuStreamQuery"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuStreamQuery), 0x1B58, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 610, __pyx_L1_error)

      /* "cuda/_cuda/ccuda.pyx":612
 *             cuGetProcAddress('cuStreamQuery', &__cuStreamQuery, 7000, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL)
 *             global __cuStreamSynchronize
 *             cuGetProcAddress('cuStreamSynchronize', &__cuStreamSynchronize, 7000, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL)             # <<<<<<<<<<<<<<
 *             global __cuStreamCopyAttributes
 *             cuGetProcAddress('cuStreamCopyAttributes', &__cuStreamCopyAttributes, 11000, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL)
 */
      __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuStreamSynchronize"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuStreamSynchronize), 0x1B58, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 612, __pyx_L1_error)

      /* "cuda/_cuda/ccuda.pyx":614
 *             cuGetProcAddress('cuStreamSynchronize', &__cuStreamSynchronize, 7000, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL)
 *             global __cuStreamCopyAttributes
 *             cuGetProcAddress('cuStreamCopyAttributes', &__cuStreamCopyAttributes, 11000, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL)             # <<<<<<<<<<<<<<
 *             global __cuStreamGetAttribute
 *             cuGetProcAddress('cuStreamGetAttribute', &__cuStreamGetAttribute, 11000, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL)
 */
      __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuStreamCopyAttributes"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuStreamCopyAttributes), 0x2AF8, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 614, __pyx_L1_error)

      /* "cuda/_cuda/ccuda.pyx":616
 *             cuGetProcAddress('cuStreamCopyAttributes', &__cuStreamCopyAttributes, 11000, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL)
 *             global __cuStreamGetAttribute
 *             cuGetProcAddress('cuStreamGetAttribute', &__cuStreamGetAttribute, 11000, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL)             # <<<<<<<<<<<<<<
 *             global __cuStreamSetAttribute
 *             cuGetProcAddress('cuStreamSetAttribute', &__cuStreamSetAttribute, 11000, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL)
 */
      __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuStreamGetAttribute"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuStreamGetAttribute), 0x2AF8, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 616, __pyx_L1_error)

      /* "cuda/_cuda/ccuda.pyx":618
 *             cuGetProcAddress('cuStreamGetAttribute', &__cuStreamGetAttribute, 11000, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL)
 *             global __cuStreamSetAttribute
 *             cuGetProcAddress('cuStreamSetAttribute', &__cuStreamSetAttribute, 11000, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL)             # <<<<<<<<<<<<<<
 *             global __cuEventRecord
 *             cuGetProcAddress('cuEventRecord', &__cuEventRecord, 7000, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL)
 */
      __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuStreamSetAttribute"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuStreamSetAttribute), 0x2AF8, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 618, __pyx_L1_error)

      /* "cuda/_cuda/ccuda.pyx":620
 *             cuGetProcAddress('cuStreamSetAttribute', &__cuStreamSetAttribute, 11000, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL)
 *             global __cuEventRecord
 *             cuGetProcAddress('cuEventRecord', &__cuEventRecord, 7000, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL)             # <<<<<<<<<<<<<<
 *             global __cuEventRecordWithFlags
 *             cuGetProcAddress('cuEventRecordWithFlags', &__cuEventRecordWithFlags, 11010, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL)
 */
      __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuEventRecord"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuEventRecord), 0x1B58, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 620, __pyx_L1_error)

      /* "cuda/_cuda/ccuda.pyx":622
 *             cuGetProcAddress('cuEventRecord', &__cuEventRecord, 7000, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL)
 *             global __cuEventRecordWithFlags
 *             cuGetProcAddress('cuEventRecordWithFlags', &__cuEventRecordWithFlags, 11010, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL)             # <<<<<<<<<<<<<<
 *             global __cuSignalExternalSemaphoresAsync
 *             cuGetProcAddress('cuSignalExternalSemaphoresAsync', &__cuSignalExternalSemaphoresAsync, 10000, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL)
 */
      __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuEventRecordWithFlags"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuEventRecordWithFlags), 0x2B02, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 622, __pyx_L1_error)

      /* "cuda/_cuda/ccuda.pyx":624
 *             cuGetProcAddress('cuEventRecordWithFlags', &__cuEventRecordWithFlags, 11010, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL)
 *             global __cuSignalExternalSemaphoresAsync
 *             cuGetProcAddress('cuSignalExternalSemaphoresAsync', &__cuSignalExternalSemaphoresAsync, 10000, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL)             # <<<<<<<<<<<<<<
 *             global __cuWaitExternalSemaphoresAsync
 *             cuGetProcAddress('cuWaitExternalSemaphoresAsync', &__cuWaitExternalSemaphoresAsync, 10000, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL)
 */
      __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuSignalExternalSemaphoresAsync"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuSignalExternalSemaphoresAsync), 0x2710, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 624, __pyx_L1_error)

      /* "cuda/_cuda/ccuda.pyx":626
 *             cuGetProcAddress('cuSignalExternalSemaphoresAsync', &__cuSignalExternalSemaphoresAsync, 10000, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL)
 *             global __cuWaitExternalSemaphoresAsync
 *             cuGetProcAddress('cuWaitExternalSemaphoresAsync', &__cuWaitExternalSemaphoresAsync, 10000, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL)             # <<<<<<<<<<<<<<
 *             global __cuStreamWaitValue32_v2
 *             cuGetProcAddress('cuStreamWaitValue32', &__cuStreamWaitValue32_v2, 11070, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL)
 */
      __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuWaitExternalSemaphoresAsync"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuWaitExternalSemaphoresAsync), 0x2710, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 626, __pyx_L1_error)

      /* "cuda/_cuda/ccuda.pyx":628
 *             cuGetProcAddress('cuWaitExternalSemaphoresAsync', &__cuWaitExternalSemaphoresAsync, 10000, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL)
 *             global __cuStreamWaitValue32_v2
 *             cuGetProcAddress('cuStreamWaitValue32', &__cuStreamWaitValue32_v2, 11070, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL)             # <<<<<<<<<<<<<<
 *             global __cuStreamWaitValue64_v2
 *             cuGetProcAddress('cuStreamWaitValue64', &__cuStreamWaitValue64_v2, 11070, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL)
 */
      __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuStreamWaitValue32"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuStreamWaitValue32_v2), 0x2B3E, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 628, __pyx_L1_error)

      /* "cuda/_cuda/ccuda.pyx":630
 *             cuGetProcAddress('cuStreamWaitValue32', &__cuStreamWaitValue32_v2, 11070, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL)
 *             global __cuStreamWaitValue64_v2
 *             cuGetProcAddress('cuStreamWaitValue64', &__cuStreamWaitValue64_v2, 11070, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL)             # <<<<<<<<<<<<<<
 *             global __cuStreamWriteValue32_v2
 *             cuGetProcAddress('cuStreamWriteValue32', &__cuStreamWriteValue32_v2, 11070, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL)
 */
      __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuStreamWaitValue64"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuStreamWaitValue64_v2), 0x2B3E, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 630, __pyx_L1_error)

      /* "cuda/_cuda/ccuda.pyx":632
 *             cuGetProcAddress('cuStreamWaitValue64', &__cuStreamWaitValue64_v2, 11070, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL)
 *             global __cuStreamWriteValue32_v2
 *             cuGetProcAddress('cuStreamWriteValue32', &__cuStreamWriteValue32_v2, 11070, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL)             # <<<<<<<<<<<<<<
 *             global __cuStreamWriteValue64_v2
 *             cuGetProcAddress('cuStreamWriteValue64', &__cuStreamWriteValue64_v2, 11070, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL)
 */
      __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuStreamWriteValue32"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuStreamWriteValue32_v2), 0x2B3E, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 632, __pyx_L1_error)

      /* "cuda/_cuda/ccuda.pyx":634
 *             cuGetProcAddress('cuStreamWriteValue32', &__cuStreamWriteValue32_v2, 11070, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL)
 *             global __cuStreamWriteValue64_v2
 *             cuGetProcAddress('cuStreamWriteValue64', &__cuStreamWriteValue64_v2, 11070, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL)             # <<<<<<<<<<<<<<
 *             global __cuStreamBatchMemOp_v2
 *             cuGetProcAddress('cuStreamBatchMemOp', &__cuStreamBatchMemOp_v2, 11070, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL)
 */
      __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuStreamWriteValue64"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuStreamWriteValue64_v2), 0x2B3E, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 634, __pyx_L1_error)

      /* "cuda/_cuda/ccuda.pyx":636
 *             cuGetProcAddress('cuStreamWriteValue64', &__cuStreamWriteValue64_v2, 11070, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL)
 *             global __cuStreamBatchMemOp_v2
 *             cuGetProcAddress('cuStreamBatchMemOp', &__cuStreamBatchMemOp_v2, 11070, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL)             # <<<<<<<<<<<<<<
 *             global __cuLaunchKernel
 *             cuGetProcAddress('cuLaunchKernel', &__cuLaunchKernel, 7000, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL)
 */
      __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuStreamBatchMemOp"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuStreamBatchMemOp_v2), 0x2B3E, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 636, __pyx_L1_error)

      /* "cuda/_cuda/ccuda.pyx":638
 *             cuGetProcAddress('cuStreamBatchMemOp', &__cuStreamBatchMemOp_v2, 11070, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL)
 *             global __cuLaunchKernel
 *             cuGetProcAddress('cuLaunchKernel', &__cuLaunchKernel, 7000, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL)             # <<<<<<<<<<<<<<
 *             global __cuLaunchKernelEx
 *             cuGetProcAddress('cuLaunchKernelEx', &__cuLaunchKernelEx, 11060, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL)
 */
      __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuLaunchKernel"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuLaunchKernel), 0x1B58, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 638, __pyx_L1_error)

      /* "cuda/_cuda/ccuda.pyx":640
 *             cuGetProcAddress('cuLaunchKernel', &__cuLaunchKernel, 7000, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL)
 *             global __cuLaunchKernelEx
 *             cuGetProcAddress('cuLaunchKernelEx', &__cuLaunchKernelEx, 11060, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL)             # <<<<<<<<<<<<<<
 *             global __cuLaunchCooperativeKernel
 *             cuGetProcAddress('cuLaunchCooperativeKernel', &__cuLaunchCooperativeKernel, 9000, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL)
 */
      __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuLaunchKernelEx"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuLaunchKernelEx), 0x2B34, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 640, __pyx_L1_error)

      /* "cuda/_cuda/ccuda.pyx":642
 *             cuGetProcAddress('cuLaunchKernelEx', &__cuLaunchKernelEx, 11060, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL)
 *             global __cuLaunchCooperativeKernel
 *             cuGetProcAddress('cuLaunchCooperativeKernel', &__cuLaunchCooperativeKernel, 9000, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL)             # <<<<<<<<<<<<<<
 *             global __cuLaunchHostFunc
 *             cuGetProcAddress('cuLaunchHostFunc', &__cuLaunchHostFunc, 10000, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL)
 */
      __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuLaunchCooperativeKernel"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuLaunchCooperativeKernel), 0x2328, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 642, __pyx_L1_error)

      /* "cuda/_cuda/ccuda.pyx":644
 *             cuGetProcAddress('cuLaunchCooperativeKernel', &__cuLaunchCooperativeKernel, 9000, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL)
 *             global __cuLaunchHostFunc
 *             cuGetProcAddress('cuLaunchHostFunc', &__cuLaunchHostFunc, 10000, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL)             # <<<<<<<<<<<<<<
 *             global __cuGraphInstantiateWithParams
 *             cuGetProcAddress('cuGraphInstantiateWithParams', &__cuGraphInstantiateWithParams, 12000, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL)
 */
      __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuLaunchHostFunc"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuLaunchHostFunc), 0x2710, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 644, __pyx_L1_error)

      /* "cuda/_cuda/ccuda.pyx":646
 *             cuGetProcAddress('cuLaunchHostFunc', &__cuLaunchHostFunc, 10000, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL)
 *             global __cuGraphInstantiateWithParams
 *             cuGetProcAddress('cuGraphInstantiateWithParams', &__cuGraphInstantiateWithParams, 12000, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL)             # <<<<<<<<<<<<<<
 *             global __cuGraphUpload
 *             cuGetProcAddress('cuGraphUpload', &__cuGraphUpload, 11010, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL)
 */
      __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuGraphInstantiateWithParams"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuGraphInstantiateWithParams), 0x2EE0, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 646, __pyx_L1_error)

      /* "cuda/_cuda/ccuda.pyx":648
 *             cuGetProcAddress('cuGraphInstantiateWithParams', &__cuGraphInstantiateWithParams, 12000, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL)
 *             global __cuGraphUpload
 *             cuGetProcAddress('cuGraphUpload', &__cuGraphUpload, 11010, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL)             # <<<<<<<<<<<<<<
 *             global __cuGraphLaunch
 *             cuGetProcAddress('cuGraphLaunch', &__cuGraphLaunch, 10000, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL)
 */
      __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuGraphUpload"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuGraphUpload), 0x2B02, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 648, __pyx_L1_error)

      /* "cuda/_cuda/ccuda.pyx":650
 *             cuGetProcAddress('cuGraphUpload', &__cuGraphUpload, 11010, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL)
 *             global __cuGraphLaunch
 *             cuGetProcAddress('cuGraphLaunch', &__cuGraphLaunch, 10000, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL)             # <<<<<<<<<<<<<<
 *             global __cuGraphicsMapResources
 *             cuGetProcAddress('cuGraphicsMapResources', &__cuGraphicsMapResources, 7000, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL)
 */
      __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuGraphLaunch"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuGraphLaunch), 0x2710, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 650, __pyx_L1_error)

      /* "cuda/_cuda/ccuda.pyx":652
 *             cuGetProcAddress('cuGraphLaunch', &__cuGraphLaunch, 10000, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL)
 *             global __cuGraphicsMapResources
 *             cuGetProcAddress('cuGraphicsMapResources', &__cuGraphicsMapResources, 7000, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL)             # <<<<<<<<<<<<<<
 *             global __cuGraphicsUnmapResources
 *             cuGetProcAddress('cuGraphicsUnmapResources', &__cuGraphicsUnmapResources, 7000, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL)
 */
      __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuGraphicsMapResources"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuGraphicsMapResources), 0x1B58, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 652, __pyx_L1_error)

      /* "cuda/_cuda/ccuda.pyx":654
 *             cuGetProcAddress('cuGraphicsMapResources', &__cuGraphicsMapResources, 7000, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL)
 *             global __cuGraphicsUnmapResources
 *             cuGetProcAddress('cuGraphicsUnmapResources', &__cuGraphicsUnmapResources, 7000, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL)             # <<<<<<<<<<<<<<
 *         else:
 *             # Else get the regular version
 */
      __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuGraphicsUnmapResources"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuGraphicsUnmapResources), 0x1B58, CU_GET_PROC_ADDRESS_PER_THREAD_DEFAULT_STREAM, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 654, __pyx_L1_error)

      /* "cuda/_cuda/ccuda.pyx":492
 *     # Load using cuGetProcAddress if available
 *     if __cuGetProcAddress_v2 != NULL:
 *         if usePTDS:             # <<<<<<<<<<<<<<
 *             # Get all PTDS version of functions
 *             pass
 */
      goto __pyx_L15;
    }

    /* "cuda/_cuda/ccuda.pyx":657
 *         else:
 *             # Else get the regular version
 *             pass             # <<<<<<<<<<<<<<
 *             global __cuMemcpy
 *             cuGetProcAddress('cuMemcpy', &__cuMemcpy, 4000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    /*else*/ {

      /* "cuda/_cuda/ccuda.pyx":659
 *             pass
 *             global __cuMemcpy
 *             cuGetProcAddress('cuMemcpy', &__cuMemcpy, 4000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *             global __cuMemcpyPeer
 *             cuGetProcAddress('cuMemcpyPeer', &__cuMemcpyPeer, 4000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
      __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuMemcpy"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuMemcpy), 0xFA0, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 659, __pyx_L1_error)

      /* "cuda/_cuda/ccuda.pyx":661
 *             cuGetProcAddress('cuMemcpy', &__cuMemcpy, 4000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *             global __cuMemcpyPeer
 *             cuGetProcAddress('cuMemcpyPeer', &__cuMemcpyPeer, 4000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *             global __cuMemcpyHtoD_v2
 *             cuGetProcAddress('cuMemcpyHtoD', &__cuMemcpyHtoD_v2, 3020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
      __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuMemcpyPeer"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuMemcpyPeer), 0xFA0, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 661, __pyx_L1_error)

      /* "cuda/_cuda/ccuda.pyx":663
 *             cuGetProcAddress('cuMemcpyPeer', &__cuMemcpyPeer, 4000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *             global __cuMemcpyHtoD_v2
 *             cuGetProcAddress('cuMemcpyHtoD', &__cuMemcpyHtoD_v2, 3020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *             global __cuMemcpyDtoH_v2
 *             cuGetProcAddress('cuMemcpyDtoH', &__cuMemcpyDtoH_v2, 3020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
      __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuMemcpyHtoD"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuMemcpyHtoD_v2), 0xBCC, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 663, __pyx_L1_error)

      /* "cuda/_cuda/ccuda.pyx":665
 *             cuGetProcAddress('cuMemcpyHtoD', &__cuMemcpyHtoD_v2, 3020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *             global __cuMemcpyDtoH_v2
 *             cuGetProcAddress('cuMemcpyDtoH', &__cuMemcpyDtoH_v2, 3020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *             global __cuMemcpyDtoD_v2
 *             cuGetProcAddress('cuMemcpyDtoD', &__cuMemcpyDtoD_v2, 3020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
      __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuMemcpyDtoH"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuMemcpyDtoH_v2), 0xBCC, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 665, __pyx_L1_error)

      /* "cuda/_cuda/ccuda.pyx":667
 *             cuGetProcAddress('cuMemcpyDtoH', &__cuMemcpyDtoH_v2, 3020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *             global __cuMemcpyDtoD_v2
 *             cuGetProcAddress('cuMemcpyDtoD', &__cuMemcpyDtoD_v2, 3020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *             global __cuMemcpyDtoA_v2
 *             cuGetProcAddress('cuMemcpyDtoA', &__cuMemcpyDtoA_v2, 3020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
      __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuMemcpyDtoD"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuMemcpyDtoD_v2), 0xBCC, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 667, __pyx_L1_error)

      /* "cuda/_cuda/ccuda.pyx":669
 *             cuGetProcAddress('cuMemcpyDtoD', &__cuMemcpyDtoD_v2, 3020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *             global __cuMemcpyDtoA_v2
 *             cuGetProcAddress('cuMemcpyDtoA', &__cuMemcpyDtoA_v2, 3020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *             global __cuMemcpyAtoD_v2
 *             cuGetProcAddress('cuMemcpyAtoD', &__cuMemcpyAtoD_v2, 3020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
      __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuMemcpyDtoA"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuMemcpyDtoA_v2), 0xBCC, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 669, __pyx_L1_error)

      /* "cuda/_cuda/ccuda.pyx":671
 *             cuGetProcAddress('cuMemcpyDtoA', &__cuMemcpyDtoA_v2, 3020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *             global __cuMemcpyAtoD_v2
 *             cuGetProcAddress('cuMemcpyAtoD', &__cuMemcpyAtoD_v2, 3020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *             global __cuMemcpyHtoA_v2
 *             cuGetProcAddress('cuMemcpyHtoA', &__cuMemcpyHtoA_v2, 3020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
      __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuMemcpyAtoD"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuMemcpyAtoD_v2), 0xBCC, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 671, __pyx_L1_error)

      /* "cuda/_cuda/ccuda.pyx":673
 *             cuGetProcAddress('cuMemcpyAtoD', &__cuMemcpyAtoD_v2, 3020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *             global __cuMemcpyHtoA_v2
 *             cuGetProcAddress('cuMemcpyHtoA', &__cuMemcpyHtoA_v2, 3020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *             global __cuMemcpyAtoH_v2
 *             cuGetProcAddress('cuMemcpyAtoH', &__cuMemcpyAtoH_v2, 3020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
      __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuMemcpyHtoA"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuMemcpyHtoA_v2), 0xBCC, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 673, __pyx_L1_error)

      /* "cuda/_cuda/ccuda.pyx":675
 *             cuGetProcAddress('cuMemcpyHtoA', &__cuMemcpyHtoA_v2, 3020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *             global __cuMemcpyAtoH_v2
 *             cuGetProcAddress('cuMemcpyAtoH', &__cuMemcpyAtoH_v2, 3020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *             global __cuMemcpyAtoA_v2
 *             cuGetProcAddress('cuMemcpyAtoA', &__cuMemcpyAtoA_v2, 3020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
      __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuMemcpyAtoH"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuMemcpyAtoH_v2), 0xBCC, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 675, __pyx_L1_error)

      /* "cuda/_cuda/ccuda.pyx":677
 *             cuGetProcAddress('cuMemcpyAtoH', &__cuMemcpyAtoH_v2, 3020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *             global __cuMemcpyAtoA_v2
 *             cuGetProcAddress('cuMemcpyAtoA', &__cuMemcpyAtoA_v2, 3020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *             global __cuMemcpy2D_v2
 *             cuGetProcAddress('cuMemcpy2D', &__cuMemcpy2D_v2, 3020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
      __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuMemcpyAtoA"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuMemcpyAtoA_v2), 0xBCC, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 677, __pyx_L1_error)

      /* "cuda/_cuda/ccuda.pyx":679
 *             cuGetProcAddress('cuMemcpyAtoA', &__cuMemcpyAtoA_v2, 3020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *             global __cuMemcpy2D_v2
 *             cuGetProcAddress('cuMemcpy2D', &__cuMemcpy2D_v2, 3020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *             global __cuMemcpy2DUnaligned_v2
 *             cuGetProcAddress('cuMemcpy2DUnaligned', &__cuMemcpy2DUnaligned_v2, 3020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
      __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuMemcpy2D"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuMemcpy2D_v2), 0xBCC, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 679, __pyx_L1_error)

      /* "cuda/_cuda/ccuda.pyx":681
 *             cuGetProcAddress('cuMemcpy2D', &__cuMemcpy2D_v2, 3020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *             global __cuMemcpy2DUnaligned_v2
 *             cuGetProcAddress('cuMemcpy2DUnaligned', &__cuMemcpy2DUnaligned_v2, 3020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *             global __cuMemcpy3D_v2
 *             cuGetProcAddress('cuMemcpy3D', &__cuMemcpy3D_v2, 3020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
      __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuMemcpy2DUnaligned"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuMemcpy2DUnaligned_v2), 0xBCC, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 681, __pyx_L1_error)

      /* "cuda/_cuda/ccuda.pyx":683
 *             cuGetProcAddress('cuMemcpy2DUnaligned', &__cuMemcpy2DUnaligned_v2, 3020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *             global __cuMemcpy3D_v2
 *             cuGetProcAddress('cuMemcpy3D', &__cuMemcpy3D_v2, 3020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *             global __cuMemcpy3DPeer
 *             cuGetProcAddress('cuMemcpy3DPeer', &__cuMemcpy3DPeer, 4000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
      __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuMemcpy3D"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuMemcpy3D_v2), 0xBCC, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 683, __pyx_L1_error)

      /* "cuda/_cuda/ccuda.pyx":685
 *             cuGetProcAddress('cuMemcpy3D', &__cuMemcpy3D_v2, 3020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *             global __cuMemcpy3DPeer
 *             cuGetProcAddress('cuMemcpy3DPeer', &__cuMemcpy3DPeer, 4000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *             global __cuMemcpyAsync
 *             cuGetProcAddress('cuMemcpyAsync', &__cuMemcpyAsync, 4000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
      __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuMemcpy3DPeer"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuMemcpy3DPeer), 0xFA0, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 685, __pyx_L1_error)

      /* "cuda/_cuda/ccuda.pyx":687
 *             cuGetProcAddress('cuMemcpy3DPeer', &__cuMemcpy3DPeer, 4000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *             global __cuMemcpyAsync
 *             cuGetProcAddress('cuMemcpyAsync', &__cuMemcpyAsync, 4000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *             global __cuMemcpyPeerAsync
 *             cuGetProcAddress('cuMemcpyPeerAsync', &__cuMemcpyPeerAsync, 4000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
      __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuMemcpyAsync"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuMemcpyAsync), 0xFA0, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 687, __pyx_L1_error)

      /* "cuda/_cuda/ccuda.pyx":689
 *             cuGetProcAddress('cuMemcpyAsync', &__cuMemcpyAsync, 4000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *             global __cuMemcpyPeerAsync
 *             cuGetProcAddress('cuMemcpyPeerAsync', &__cuMemcpyPeerAsync, 4000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *             global __cuMemcpyHtoDAsync_v2
 *             cuGetProcAddress('cuMemcpyHtoDAsync', &__cuMemcpyHtoDAsync_v2, 3020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
      __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuMemcpyPeerAsync"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuMemcpyPeerAsync), 0xFA0, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 689, __pyx_L1_error)

      /* "cuda/_cuda/ccuda.pyx":691
 *             cuGetProcAddress('cuMemcpyPeerAsync', &__cuMemcpyPeerAsync, 4000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *             global __cuMemcpyHtoDAsync_v2
 *             cuGetProcAddress('cuMemcpyHtoDAsync', &__cuMemcpyHtoDAsync_v2, 3020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *             global __cuMemcpyDtoHAsync_v2
 *             cuGetProcAddress('cuMemcpyDtoHAsync', &__cuMemcpyDtoHAsync_v2, 3020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
      __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuMemcpyHtoDAsync"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuMemcpyHtoDAsync_v2), 0xBCC, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 691, __pyx_L1_error)

      /* "cuda/_cuda/ccuda.pyx":693
 *             cuGetProcAddress('cuMemcpyHtoDAsync', &__cuMemcpyHtoDAsync_v2, 3020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *             global __cuMemcpyDtoHAsync_v2
 *             cuGetProcAddress('cuMemcpyDtoHAsync', &__cuMemcpyDtoHAsync_v2, 3020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *             global __cuMemcpyDtoDAsync_v2
 *             cuGetProcAddress('cuMemcpyDtoDAsync', &__cuMemcpyDtoDAsync_v2, 3020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
      __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuMemcpyDtoHAsync"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuMemcpyDtoHAsync_v2), 0xBCC, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 693, __pyx_L1_error)

      /* "cuda/_cuda/ccuda.pyx":695
 *             cuGetProcAddress('cuMemcpyDtoHAsync', &__cuMemcpyDtoHAsync_v2, 3020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *             global __cuMemcpyDtoDAsync_v2
 *             cuGetProcAddress('cuMemcpyDtoDAsync', &__cuMemcpyDtoDAsync_v2, 3020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *             global __cuMemcpyHtoAAsync_v2
 *             cuGetProcAddress('cuMemcpyHtoAAsync', &__cuMemcpyHtoAAsync_v2, 3020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
      __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuMemcpyDtoDAsync"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuMemcpyDtoDAsync_v2), 0xBCC, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 695, __pyx_L1_error)

      /* "cuda/_cuda/ccuda.pyx":697
 *             cuGetProcAddress('cuMemcpyDtoDAsync', &__cuMemcpyDtoDAsync_v2, 3020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *             global __cuMemcpyHtoAAsync_v2
 *             cuGetProcAddress('cuMemcpyHtoAAsync', &__cuMemcpyHtoAAsync_v2, 3020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *             global __cuMemcpyAtoHAsync_v2
 *             cuGetProcAddress('cuMemcpyAtoHAsync', &__cuMemcpyAtoHAsync_v2, 3020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
      __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuMemcpyHtoAAsync"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuMemcpyHtoAAsync_v2), 0xBCC, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 697, __pyx_L1_error)

      /* "cuda/_cuda/ccuda.pyx":699
 *             cuGetProcAddress('cuMemcpyHtoAAsync', &__cuMemcpyHtoAAsync_v2, 3020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *             global __cuMemcpyAtoHAsync_v2
 *             cuGetProcAddress('cuMemcpyAtoHAsync', &__cuMemcpyAtoHAsync_v2, 3020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *             global __cuMemcpy2DAsync_v2
 *             cuGetProcAddress('cuMemcpy2DAsync', &__cuMemcpy2DAsync_v2, 3020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
      __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuMemcpyAtoHAsync"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuMemcpyAtoHAsync_v2), 0xBCC, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 699, __pyx_L1_error)

      /* "cuda/_cuda/ccuda.pyx":701
 *             cuGetProcAddress('cuMemcpyAtoHAsync', &__cuMemcpyAtoHAsync_v2, 3020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *             global __cuMemcpy2DAsync_v2
 *             cuGetProcAddress('cuMemcpy2DAsync', &__cuMemcpy2DAsync_v2, 3020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *             global __cuMemcpy3DAsync_v2
 *             cuGetProcAddress('cuMemcpy3DAsync', &__cuMemcpy3DAsync_v2, 3020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
      __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuMemcpy2DAsync"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuMemcpy2DAsync_v2), 0xBCC, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 701, __pyx_L1_error)

      /* "cuda/_cuda/ccuda.pyx":703
 *             cuGetProcAddress('cuMemcpy2DAsync', &__cuMemcpy2DAsync_v2, 3020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *             global __cuMemcpy3DAsync_v2
 *             cuGetProcAddress('cuMemcpy3DAsync', &__cuMemcpy3DAsync_v2, 3020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *             global __cuMemcpy3DPeerAsync
 *             cuGetProcAddress('cuMemcpy3DPeerAsync', &__cuMemcpy3DPeerAsync, 4000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
      __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuMemcpy3DAsync"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuMemcpy3DAsync_v2), 0xBCC, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 703, __pyx_L1_error)

      /* "cuda/_cuda/ccuda.pyx":705
 *             cuGetProcAddress('cuMemcpy3DAsync', &__cuMemcpy3DAsync_v2, 3020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *             global __cuMemcpy3DPeerAsync
 *             cuGetProcAddress('cuMemcpy3DPeerAsync', &__cuMemcpy3DPeerAsync, 4000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *             global __cuMemsetD8_v2
 *             cuGetProcAddress('cuMemsetD8', &__cuMemsetD8_v2, 3020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
      __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuMemcpy3DPeerAsync"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuMemcpy3DPeerAsync), 0xFA0, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 705, __pyx_L1_error)

      /* "cuda/_cuda/ccuda.pyx":707
 *             cuGetProcAddress('cuMemcpy3DPeerAsync', &__cuMemcpy3DPeerAsync, 4000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *             global __cuMemsetD8_v2
 *             cuGetProcAddress('cuMemsetD8', &__cuMemsetD8_v2, 3020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *             global __cuMemsetD16_v2
 *             cuGetProcAddress('cuMemsetD16', &__cuMemsetD16_v2, 3020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
      __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuMemsetD8"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuMemsetD8_v2), 0xBCC, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 707, __pyx_L1_error)

      /* "cuda/_cuda/ccuda.pyx":709
 *             cuGetProcAddress('cuMemsetD8', &__cuMemsetD8_v2, 3020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *             global __cuMemsetD16_v2
 *             cuGetProcAddress('cuMemsetD16', &__cuMemsetD16_v2, 3020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *             global __cuMemsetD32_v2
 *             cuGetProcAddress('cuMemsetD32', &__cuMemsetD32_v2, 3020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
      __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuMemsetD16"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuMemsetD16_v2), 0xBCC, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 709, __pyx_L1_error)

      /* "cuda/_cuda/ccuda.pyx":711
 *             cuGetProcAddress('cuMemsetD16', &__cuMemsetD16_v2, 3020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *             global __cuMemsetD32_v2
 *             cuGetProcAddress('cuMemsetD32', &__cuMemsetD32_v2, 3020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *             global __cuMemsetD2D8_v2
 *             cuGetProcAddress('cuMemsetD2D8', &__cuMemsetD2D8_v2, 3020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
      __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuMemsetD32"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuMemsetD32_v2), 0xBCC, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 711, __pyx_L1_error)

      /* "cuda/_cuda/ccuda.pyx":713
 *             cuGetProcAddress('cuMemsetD32', &__cuMemsetD32_v2, 3020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *             global __cuMemsetD2D8_v2
 *             cuGetProcAddress('cuMemsetD2D8', &__cuMemsetD2D8_v2, 3020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *             global __cuMemsetD2D16_v2
 *             cuGetProcAddress('cuMemsetD2D16', &__cuMemsetD2D16_v2, 3020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
      __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuMemsetD2D8"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuMemsetD2D8_v2), 0xBCC, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 713, __pyx_L1_error)

      /* "cuda/_cuda/ccuda.pyx":715
 *             cuGetProcAddress('cuMemsetD2D8', &__cuMemsetD2D8_v2, 3020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *             global __cuMemsetD2D16_v2
 *             cuGetProcAddress('cuMemsetD2D16', &__cuMemsetD2D16_v2, 3020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *             global __cuMemsetD2D32_v2
 *             cuGetProcAddress('cuMemsetD2D32', &__cuMemsetD2D32_v2, 3020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
      __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuMemsetD2D16"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuMemsetD2D16_v2), 0xBCC, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 715, __pyx_L1_error)

      /* "cuda/_cuda/ccuda.pyx":717
 *             cuGetProcAddress('cuMemsetD2D16', &__cuMemsetD2D16_v2, 3020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *             global __cuMemsetD2D32_v2
 *             cuGetProcAddress('cuMemsetD2D32', &__cuMemsetD2D32_v2, 3020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *             global __cuMemsetD8Async
 *             cuGetProcAddress('cuMemsetD8Async', &__cuMemsetD8Async, 3020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
      __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuMemsetD2D32"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuMemsetD2D32_v2), 0xBCC, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 717, __pyx_L1_error)

      /* "cuda/_cuda/ccuda.pyx":719
 *             cuGetProcAddress('cuMemsetD2D32', &__cuMemsetD2D32_v2, 3020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *             global __cuMemsetD8Async
 *             cuGetProcAddress('cuMemsetD8Async', &__cuMemsetD8Async, 3020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *             global __cuMemsetD16Async
 *             cuGetProcAddress('cuMemsetD16Async', &__cuMemsetD16Async, 3020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
      __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuMemsetD8Async"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuMemsetD8Async), 0xBCC, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 719, __pyx_L1_error)

      /* "cuda/_cuda/ccuda.pyx":721
 *             cuGetProcAddress('cuMemsetD8Async', &__cuMemsetD8Async, 3020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *             global __cuMemsetD16Async
 *             cuGetProcAddress('cuMemsetD16Async', &__cuMemsetD16Async, 3020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *             global __cuMemsetD32Async
 *             cuGetProcAddress('cuMemsetD32Async', &__cuMemsetD32Async, 3020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
      __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuMemsetD16Async"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuMemsetD16Async), 0xBCC, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 721, __pyx_L1_error)

      /* "cuda/_cuda/ccuda.pyx":723
 *             cuGetProcAddress('cuMemsetD16Async', &__cuMemsetD16Async, 3020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *             global __cuMemsetD32Async
 *             cuGetProcAddress('cuMemsetD32Async', &__cuMemsetD32Async, 3020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *             global __cuMemsetD2D8Async
 *             cuGetProcAddress('cuMemsetD2D8Async', &__cuMemsetD2D8Async, 3020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
      __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuMemsetD32Async"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuMemsetD32Async), 0xBCC, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 723, __pyx_L1_error)

      /* "cuda/_cuda/ccuda.pyx":725
 *             cuGetProcAddress('cuMemsetD32Async', &__cuMemsetD32Async, 3020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *             global __cuMemsetD2D8Async
 *             cuGetProcAddress('cuMemsetD2D8Async', &__cuMemsetD2D8Async, 3020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *             global __cuMemsetD2D16Async
 *             cuGetProcAddress('cuMemsetD2D16Async', &__cuMemsetD2D16Async, 3020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
      __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuMemsetD2D8Async"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuMemsetD2D8Async), 0xBCC, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 725, __pyx_L1_error)

      /* "cuda/_cuda/ccuda.pyx":727
 *             cuGetProcAddress('cuMemsetD2D8Async', &__cuMemsetD2D8Async, 3020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *             global __cuMemsetD2D16Async
 *             cuGetProcAddress('cuMemsetD2D16Async', &__cuMemsetD2D16Async, 3020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *             global __cuMemsetD2D32Async
 *             cuGetProcAddress('cuMemsetD2D32Async', &__cuMemsetD2D32Async, 3020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
      __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuMemsetD2D16Async"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuMemsetD2D16Async), 0xBCC, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 727, __pyx_L1_error)

      /* "cuda/_cuda/ccuda.pyx":729
 *             cuGetProcAddress('cuMemsetD2D16Async', &__cuMemsetD2D16Async, 3020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *             global __cuMemsetD2D32Async
 *             cuGetProcAddress('cuMemsetD2D32Async', &__cuMemsetD2D32Async, 3020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *             global __cuMemMapArrayAsync
 *             cuGetProcAddress('cuMemMapArrayAsync', &__cuMemMapArrayAsync, 11010, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
      __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuMemsetD2D32Async"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuMemsetD2D32Async), 0xBCC, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 729, __pyx_L1_error)

      /* "cuda/_cuda/ccuda.pyx":731
 *             cuGetProcAddress('cuMemsetD2D32Async', &__cuMemsetD2D32Async, 3020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *             global __cuMemMapArrayAsync
 *             cuGetProcAddress('cuMemMapArrayAsync', &__cuMemMapArrayAsync, 11010, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *             global __cuMemFreeAsync
 *             cuGetProcAddress('cuMemFreeAsync', &__cuMemFreeAsync, 11020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
      __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuMemMapArrayAsync"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuMemMapArrayAsync), 0x2B02, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 731, __pyx_L1_error)

      /* "cuda/_cuda/ccuda.pyx":733
 *             cuGetProcAddress('cuMemMapArrayAsync', &__cuMemMapArrayAsync, 11010, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *             global __cuMemFreeAsync
 *             cuGetProcAddress('cuMemFreeAsync', &__cuMemFreeAsync, 11020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *             global __cuMemAllocAsync
 *             cuGetProcAddress('cuMemAllocAsync', &__cuMemAllocAsync, 11020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
      __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuMemFreeAsync"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuMemFreeAsync), 0x2B0C, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 733, __pyx_L1_error)

      /* "cuda/_cuda/ccuda.pyx":735
 *             cuGetProcAddress('cuMemFreeAsync', &__cuMemFreeAsync, 11020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *             global __cuMemAllocAsync
 *             cuGetProcAddress('cuMemAllocAsync', &__cuMemAllocAsync, 11020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *             global __cuMemAllocFromPoolAsync
 *             cuGetProcAddress('cuMemAllocFromPoolAsync', &__cuMemAllocFromPoolAsync, 11020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
      __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuMemAllocAsync"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuMemAllocAsync), 0x2B0C, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 735, __pyx_L1_error)

      /* "cuda/_cuda/ccuda.pyx":737
 *             cuGetProcAddress('cuMemAllocAsync', &__cuMemAllocAsync, 11020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *             global __cuMemAllocFromPoolAsync
 *             cuGetProcAddress('cuMemAllocFromPoolAsync', &__cuMemAllocFromPoolAsync, 11020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *             global __cuMemPrefetchAsync
 *             cuGetProcAddress('cuMemPrefetchAsync', &__cuMemPrefetchAsync, 8000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
      __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuMemAllocFromPoolAsync"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuMemAllocFromPoolAsync), 0x2B0C, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 737, __pyx_L1_error)

      /* "cuda/_cuda/ccuda.pyx":739
 *             cuGetProcAddress('cuMemAllocFromPoolAsync', &__cuMemAllocFromPoolAsync, 11020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *             global __cuMemPrefetchAsync
 *             cuGetProcAddress('cuMemPrefetchAsync', &__cuMemPrefetchAsync, 8000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *             global __cuMemPrefetchAsync_v2
 *             cuGetProcAddress('cuMemPrefetchAsync', &__cuMemPrefetchAsync_v2, 12020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
      __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuMemPrefetchAsync"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuMemPrefetchAsync), 0x1F40, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 739, __pyx_L1_error)

      /* "cuda/_cuda/ccuda.pyx":741
 *             cuGetProcAddress('cuMemPrefetchAsync', &__cuMemPrefetchAsync, 8000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *             global __cuMemPrefetchAsync_v2
 *             cuGetProcAddress('cuMemPrefetchAsync', &__cuMemPrefetchAsync_v2, 12020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *             global __cuStreamGetPriority
 *             cuGetProcAddress('cuStreamGetPriority', &__cuStreamGetPriority, 5050, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
      __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuMemPrefetchAsync"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuMemPrefetchAsync_v2), 0x2EF4, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 741, __pyx_L1_error)

      /* "cuda/_cuda/ccuda.pyx":743
 *             cuGetProcAddress('cuMemPrefetchAsync', &__cuMemPrefetchAsync_v2, 12020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *             global __cuStreamGetPriority
 *             cuGetProcAddress('cuStreamGetPriority', &__cuStreamGetPriority, 5050, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *             global __cuStreamGetFlags
 *             cuGetProcAddress('cuStreamGetFlags', &__cuStreamGetFlags, 5050, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
      __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuStreamGetPriority"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuStreamGetPriority), 0x13BA, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 743, __pyx_L1_error)

      /* "cuda/_cuda/ccuda.pyx":745
 *             cuGetProcAddress('cuStreamGetPriority', &__cuStreamGetPriority, 5050, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *             global __cuStreamGetFlags
 *             cuGetProcAddress('cuStreamGetFlags', &__cuStreamGetFlags, 5050, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *             global __cuStreamGetId
 *             cuGetProcAddress('cuStreamGetId', &__cuStreamGetId, 12000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
      __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuStreamGetFlags"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuStreamGetFlags), 0x13BA, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 745, __pyx_L1_error)

      /* "cuda/_cuda/ccuda.pyx":747
 *             cuGetProcAddress('cuStreamGetFlags', &__cuStreamGetFlags, 5050, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *             global __cuStreamGetId
 *             cuGetProcAddress('cuStreamGetId', &__cuStreamGetId, 12000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *             global __cuStreamGetCtx
 *             cuGetProcAddress('cuStreamGetCtx', &__cuStreamGetCtx, 9020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
      __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuStreamGetId"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuStreamGetId), 0x2EE0, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 747, __pyx_L1_error)

      /* "cuda/_cuda/ccuda.pyx":749
 *             cuGetProcAddress('cuStreamGetId', &__cuStreamGetId, 12000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *             global __cuStreamGetCtx
 *             cuGetProcAddress('cuStreamGetCtx', &__cuStreamGetCtx, 9020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *             global __cuStreamWaitEvent
 *             cuGetProcAddress('cuStreamWaitEvent', &__cuStreamWaitEvent, 3020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
      __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuStreamGetCtx"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuStreamGetCtx), 0x233C, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 749, __pyx_L1_error)

      /* "cuda/_cuda/ccuda.pyx":751
 *             cuGetProcAddress('cuStreamGetCtx', &__cuStreamGetCtx, 9020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *             global __cuStreamWaitEvent
 *             cuGetProcAddress('cuStreamWaitEvent', &__cuStreamWaitEvent, 3020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *             global __cuStreamAddCallback
 *             cuGetProcAddress('cuStreamAddCallback', &__cuStreamAddCallback, 5000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
      __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuStreamWaitEvent"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuStreamWaitEvent), 0xBCC, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 751, __pyx_L1_error)

      /* "cuda/_cuda/ccuda.pyx":753
 *             cuGetProcAddress('cuStreamWaitEvent', &__cuStreamWaitEvent, 3020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *             global __cuStreamAddCallback
 *             cuGetProcAddress('cuStreamAddCallback', &__cuStreamAddCallback, 5000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *             global __cuStreamBeginCapture_v2
 *             cuGetProcAddress('cuStreamBeginCapture', &__cuStreamBeginCapture_v2, 10010, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
      __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuStreamAddCallback"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuStreamAddCallback), 0x1388, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 753, __pyx_L1_error)

      /* "cuda/_cuda/ccuda.pyx":755
 *             cuGetProcAddress('cuStreamAddCallback', &__cuStreamAddCallback, 5000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *             global __cuStreamBeginCapture_v2
 *             cuGetProcAddress('cuStreamBeginCapture', &__cuStreamBeginCapture_v2, 10010, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *             global __cuStreamBeginCaptureToGraph
 *             cuGetProcAddress('cuStreamBeginCaptureToGraph', &__cuStreamBeginCaptureToGraph, 12030, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
      __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuStreamBeginCapture"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuStreamBeginCapture_v2), 0x271A, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 755, __pyx_L1_error)

      /* "cuda/_cuda/ccuda.pyx":757
 *             cuGetProcAddress('cuStreamBeginCapture', &__cuStreamBeginCapture_v2, 10010, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *             global __cuStreamBeginCaptureToGraph
 *             cuGetProcAddress('cuStreamBeginCaptureToGraph', &__cuStreamBeginCaptureToGraph, 12030, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *             global __cuStreamEndCapture
 *             cuGetProcAddress('cuStreamEndCapture', &__cuStreamEndCapture, 10000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
      __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuStreamBeginCaptureToGraph"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuStreamBeginCaptureToGraph), 0x2EFE, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 757, __pyx_L1_error)

      /* "cuda/_cuda/ccuda.pyx":759
 *             cuGetProcAddress('cuStreamBeginCaptureToGraph', &__cuStreamBeginCaptureToGraph, 12030, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *             global __cuStreamEndCapture
 *             cuGetProcAddress('cuStreamEndCapture', &__cuStreamEndCapture, 10000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *             global __cuStreamIsCapturing
 *             cuGetProcAddress('cuStreamIsCapturing', &__cuStreamIsCapturing, 10000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
      __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuStreamEndCapture"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuStreamEndCapture), 0x2710, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 759, __pyx_L1_error)

      /* "cuda/_cuda/ccuda.pyx":761
 *             cuGetProcAddress('cuStreamEndCapture', &__cuStreamEndCapture, 10000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *             global __cuStreamIsCapturing
 *             cuGetProcAddress('cuStreamIsCapturing', &__cuStreamIsCapturing, 10000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *             global __cuStreamGetCaptureInfo_v2
 *             cuGetProcAddress('cuStreamGetCaptureInfo', &__cuStreamGetCaptureInfo_v2, 11030, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
      __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuStreamIsCapturing"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuStreamIsCapturing), 0x2710, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 761, __pyx_L1_error)

      /* "cuda/_cuda/ccuda.pyx":763
 *             cuGetProcAddress('cuStreamIsCapturing', &__cuStreamIsCapturing, 10000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *             global __cuStreamGetCaptureInfo_v2
 *             cuGetProcAddress('cuStreamGetCaptureInfo', &__cuStreamGetCaptureInfo_v2, 11030, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *             global __cuStreamGetCaptureInfo_v3
 *             cuGetProcAddress('cuStreamGetCaptureInfo', &__cuStreamGetCaptureInfo_v3, 12030, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
      __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuStreamGetCaptureInfo"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuStreamGetCaptureInfo_v2), 0x2B16, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 763, __pyx_L1_error)

      /* "cuda/_cuda/ccuda.pyx":765
 *             cuGetProcAddress('cuStreamGetCaptureInfo', &__cuStreamGetCaptureInfo_v2, 11030, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *             global __cuStreamGetCaptureInfo_v3
 *             cuGetProcAddress('cuStreamGetCaptureInfo', &__cuStreamGetCaptureInfo_v3, 12030, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *             global __cuStreamUpdateCaptureDependencies
 *             cuGetProcAddress('cuStreamUpdateCaptureDependencies', &__cuStreamUpdateCaptureDependencies, 11030, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
      __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuStreamGetCaptureInfo"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuStreamGetCaptureInfo_v3), 0x2EFE, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 765, __pyx_L1_error)

      /* "cuda/_cuda/ccuda.pyx":767
 *             cuGetProcAddress('cuStreamGetCaptureInfo', &__cuStreamGetCaptureInfo_v3, 12030, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *             global __cuStreamUpdateCaptureDependencies
 *             cuGetProcAddress('cuStreamUpdateCaptureDependencies', &__cuStreamUpdateCaptureDependencies, 11030, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *             global __cuStreamUpdateCaptureDependencies_v2
 *             cuGetProcAddress('cuStreamUpdateCaptureDependencies', &__cuStreamUpdateCaptureDependencies_v2, 12030, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
      __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuStreamUpdateCaptureDependencies"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuStreamUpdateCaptureDependencies), 0x2B16, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 767, __pyx_L1_error)

      /* "cuda/_cuda/ccuda.pyx":769
 *             cuGetProcAddress('cuStreamUpdateCaptureDependencies', &__cuStreamUpdateCaptureDependencies, 11030, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *             global __cuStreamUpdateCaptureDependencies_v2
 *             cuGetProcAddress('cuStreamUpdateCaptureDependencies', &__cuStreamUpdateCaptureDependencies_v2, 12030, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *             global __cuStreamAttachMemAsync
 *             cuGetProcAddress('cuStreamAttachMemAsync', &__cuStreamAttachMemAsync, 6000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
      __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuStreamUpdateCaptureDependencies"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuStreamUpdateCaptureDependencies_v2), 0x2EFE, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 769, __pyx_L1_error)

      /* "cuda/_cuda/ccuda.pyx":771
 *             cuGetProcAddress('cuStreamUpdateCaptureDependencies', &__cuStreamUpdateCaptureDependencies_v2, 12030, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *             global __cuStreamAttachMemAsync
 *             cuGetProcAddress('cuStreamAttachMemAsync', &__cuStreamAttachMemAsync, 6000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *             global __cuStreamQuery
 *             cuGetProcAddress('cuStreamQuery', &__cuStreamQuery, 2000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
      __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuStreamAttachMemAsync"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuStreamAttachMemAsync), 0x1770, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 771, __pyx_L1_error)

      /* "cuda/_cuda/ccuda.pyx":773
 *             cuGetProcAddress('cuStreamAttachMemAsync', &__cuStreamAttachMemAsync, 6000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *             global __cuStreamQuery
 *             cuGetProcAddress('cuStreamQuery', &__cuStreamQuery, 2000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *             global __cuStreamSynchronize
 *             cuGetProcAddress('cuStreamSynchronize', &__cuStreamSynchronize, 2000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
      __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuStreamQuery"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuStreamQuery), 0x7D0, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 773, __pyx_L1_error)

      /* "cuda/_cuda/ccuda.pyx":775
 *             cuGetProcAddress('cuStreamQuery', &__cuStreamQuery, 2000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *             global __cuStreamSynchronize
 *             cuGetProcAddress('cuStreamSynchronize', &__cuStreamSynchronize, 2000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *             global __cuStreamCopyAttributes
 *             cuGetProcAddress('cuStreamCopyAttributes', &__cuStreamCopyAttributes, 11000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
      __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuStreamSynchronize"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuStreamSynchronize), 0x7D0, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 775, __pyx_L1_error)

      /* "cuda/_cuda/ccuda.pyx":777
 *             cuGetProcAddress('cuStreamSynchronize', &__cuStreamSynchronize, 2000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *             global __cuStreamCopyAttributes
 *             cuGetProcAddress('cuStreamCopyAttributes', &__cuStreamCopyAttributes, 11000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *             global __cuStreamGetAttribute
 *             cuGetProcAddress('cuStreamGetAttribute', &__cuStreamGetAttribute, 11000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
      __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuStreamCopyAttributes"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuStreamCopyAttributes), 0x2AF8, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 777, __pyx_L1_error)

      /* "cuda/_cuda/ccuda.pyx":779
 *             cuGetProcAddress('cuStreamCopyAttributes', &__cuStreamCopyAttributes, 11000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *             global __cuStreamGetAttribute
 *             cuGetProcAddress('cuStreamGetAttribute', &__cuStreamGetAttribute, 11000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *             global __cuStreamSetAttribute
 *             cuGetProcAddress('cuStreamSetAttribute', &__cuStreamSetAttribute, 11000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
      __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuStreamGetAttribute"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuStreamGetAttribute), 0x2AF8, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 779, __pyx_L1_error)

      /* "cuda/_cuda/ccuda.pyx":781
 *             cuGetProcAddress('cuStreamGetAttribute', &__cuStreamGetAttribute, 11000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *             global __cuStreamSetAttribute
 *             cuGetProcAddress('cuStreamSetAttribute', &__cuStreamSetAttribute, 11000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *             global __cuEventRecord
 *             cuGetProcAddress('cuEventRecord', &__cuEventRecord, 2000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
      __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuStreamSetAttribute"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuStreamSetAttribute), 0x2AF8, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 781, __pyx_L1_error)

      /* "cuda/_cuda/ccuda.pyx":783
 *             cuGetProcAddress('cuStreamSetAttribute', &__cuStreamSetAttribute, 11000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *             global __cuEventRecord
 *             cuGetProcAddress('cuEventRecord', &__cuEventRecord, 2000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *             global __cuEventRecordWithFlags
 *             cuGetProcAddress('cuEventRecordWithFlags', &__cuEventRecordWithFlags, 11010, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
      __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuEventRecord"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuEventRecord), 0x7D0, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 783, __pyx_L1_error)

      /* "cuda/_cuda/ccuda.pyx":785
 *             cuGetProcAddress('cuEventRecord', &__cuEventRecord, 2000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *             global __cuEventRecordWithFlags
 *             cuGetProcAddress('cuEventRecordWithFlags', &__cuEventRecordWithFlags, 11010, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *             global __cuSignalExternalSemaphoresAsync
 *             cuGetProcAddress('cuSignalExternalSemaphoresAsync', &__cuSignalExternalSemaphoresAsync, 10000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
      __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuEventRecordWithFlags"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuEventRecordWithFlags), 0x2B02, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 785, __pyx_L1_error)

      /* "cuda/_cuda/ccuda.pyx":787
 *             cuGetProcAddress('cuEventRecordWithFlags', &__cuEventRecordWithFlags, 11010, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *             global __cuSignalExternalSemaphoresAsync
 *             cuGetProcAddress('cuSignalExternalSemaphoresAsync', &__cuSignalExternalSemaphoresAsync, 10000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *             global __cuWaitExternalSemaphoresAsync
 *             cuGetProcAddress('cuWaitExternalSemaphoresAsync', &__cuWaitExternalSemaphoresAsync, 10000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
      __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuSignalExternalSemaphoresAsync"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuSignalExternalSemaphoresAsync), 0x2710, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 787, __pyx_L1_error)

      /* "cuda/_cuda/ccuda.pyx":789
 *             cuGetProcAddress('cuSignalExternalSemaphoresAsync', &__cuSignalExternalSemaphoresAsync, 10000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *             global __cuWaitExternalSemaphoresAsync
 *             cuGetProcAddress('cuWaitExternalSemaphoresAsync', &__cuWaitExternalSemaphoresAsync, 10000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *             global __cuStreamWaitValue32_v2
 *             cuGetProcAddress('cuStreamWaitValue32', &__cuStreamWaitValue32_v2, 11070, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
      __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuWaitExternalSemaphoresAsync"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuWaitExternalSemaphoresAsync), 0x2710, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 789, __pyx_L1_error)

      /* "cuda/_cuda/ccuda.pyx":791
 *             cuGetProcAddress('cuWaitExternalSemaphoresAsync', &__cuWaitExternalSemaphoresAsync, 10000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *             global __cuStreamWaitValue32_v2
 *             cuGetProcAddress('cuStreamWaitValue32', &__cuStreamWaitValue32_v2, 11070, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *             global __cuStreamWaitValue64_v2
 *             cuGetProcAddress('cuStreamWaitValue64', &__cuStreamWaitValue64_v2, 11070, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
      __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuStreamWaitValue32"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuStreamWaitValue32_v2), 0x2B3E, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 791, __pyx_L1_error)

      /* "cuda/_cuda/ccuda.pyx":793
 *             cuGetProcAddress('cuStreamWaitValue32', &__cuStreamWaitValue32_v2, 11070, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *             global __cuStreamWaitValue64_v2
 *             cuGetProcAddress('cuStreamWaitValue64', &__cuStreamWaitValue64_v2, 11070, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *             global __cuStreamWriteValue32_v2
 *             cuGetProcAddress('cuStreamWriteValue32', &__cuStreamWriteValue32_v2, 11070, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
      __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuStreamWaitValue64"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuStreamWaitValue64_v2), 0x2B3E, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 793, __pyx_L1_error)

      /* "cuda/_cuda/ccuda.pyx":795
 *             cuGetProcAddress('cuStreamWaitValue64', &__cuStreamWaitValue64_v2, 11070, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *             global __cuStreamWriteValue32_v2
 *             cuGetProcAddress('cuStreamWriteValue32', &__cuStreamWriteValue32_v2, 11070, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *             global __cuStreamWriteValue64_v2
 *             cuGetProcAddress('cuStreamWriteValue64', &__cuStreamWriteValue64_v2, 11070, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
      __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuStreamWriteValue32"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuStreamWriteValue32_v2), 0x2B3E, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 795, __pyx_L1_error)

      /* "cuda/_cuda/ccuda.pyx":797
 *             cuGetProcAddress('cuStreamWriteValue32', &__cuStreamWriteValue32_v2, 11070, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *             global __cuStreamWriteValue64_v2
 *             cuGetProcAddress('cuStreamWriteValue64', &__cuStreamWriteValue64_v2, 11070, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *             global __cuStreamBatchMemOp_v2
 *             cuGetProcAddress('cuStreamBatchMemOp', &__cuStreamBatchMemOp_v2, 11070, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
      __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuStreamWriteValue64"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuStreamWriteValue64_v2), 0x2B3E, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 797, __pyx_L1_error)

      /* "cuda/_cuda/ccuda.pyx":799
 *             cuGetProcAddress('cuStreamWriteValue64', &__cuStreamWriteValue64_v2, 11070, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *             global __cuStreamBatchMemOp_v2
 *             cuGetProcAddress('cuStreamBatchMemOp', &__cuStreamBatchMemOp_v2, 11070, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *             global __cuLaunchKernel
 *             cuGetProcAddress('cuLaunchKernel', &__cuLaunchKernel, 4000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
      __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuStreamBatchMemOp"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuStreamBatchMemOp_v2), 0x2B3E, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 799, __pyx_L1_error)

      /* "cuda/_cuda/ccuda.pyx":801
 *             cuGetProcAddress('cuStreamBatchMemOp', &__cuStreamBatchMemOp_v2, 11070, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *             global __cuLaunchKernel
 *             cuGetProcAddress('cuLaunchKernel', &__cuLaunchKernel, 4000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *             global __cuLaunchKernelEx
 *             cuGetProcAddress('cuLaunchKernelEx', &__cuLaunchKernelEx, 11060, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
      __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuLaunchKernel"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuLaunchKernel), 0xFA0, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 801, __pyx_L1_error)

      /* "cuda/_cuda/ccuda.pyx":803
 *             cuGetProcAddress('cuLaunchKernel', &__cuLaunchKernel, 4000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *             global __cuLaunchKernelEx
 *             cuGetProcAddress('cuLaunchKernelEx', &__cuLaunchKernelEx, 11060, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *             global __cuLaunchCooperativeKernel
 *             cuGetProcAddress('cuLaunchCooperativeKernel', &__cuLaunchCooperativeKernel, 9000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
      __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuLaunchKernelEx"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuLaunchKernelEx), 0x2B34, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 803, __pyx_L1_error)

      /* "cuda/_cuda/ccuda.pyx":805
 *             cuGetProcAddress('cuLaunchKernelEx', &__cuLaunchKernelEx, 11060, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *             global __cuLaunchCooperativeKernel
 *             cuGetProcAddress('cuLaunchCooperativeKernel', &__cuLaunchCooperativeKernel, 9000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *             global __cuLaunchHostFunc
 *             cuGetProcAddress('cuLaunchHostFunc', &__cuLaunchHostFunc, 10000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
      __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuLaunchCooperativeKernel"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuLaunchCooperativeKernel), 0x2328, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 805, __pyx_L1_error)

      /* "cuda/_cuda/ccuda.pyx":807
 *             cuGetProcAddress('cuLaunchCooperativeKernel', &__cuLaunchCooperativeKernel, 9000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *             global __cuLaunchHostFunc
 *             cuGetProcAddress('cuLaunchHostFunc', &__cuLaunchHostFunc, 10000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *             global __cuGraphInstantiateWithParams
 *             cuGetProcAddress('cuGraphInstantiateWithParams', &__cuGraphInstantiateWithParams, 12000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
      __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuLaunchHostFunc"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuLaunchHostFunc), 0x2710, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 807, __pyx_L1_error)

      /* "cuda/_cuda/ccuda.pyx":809
 *             cuGetProcAddress('cuLaunchHostFunc', &__cuLaunchHostFunc, 10000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *             global __cuGraphInstantiateWithParams
 *             cuGetProcAddress('cuGraphInstantiateWithParams', &__cuGraphInstantiateWithParams, 12000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *             global __cuGraphUpload
 *             cuGetProcAddress('cuGraphUpload', &__cuGraphUpload, 11010, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
      __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuGraphInstantiateWithParams"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuGraphInstantiateWithParams), 0x2EE0, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 809, __pyx_L1_error)

      /* "cuda/_cuda/ccuda.pyx":811
 *             cuGetProcAddress('cuGraphInstantiateWithParams', &__cuGraphInstantiateWithParams, 12000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *             global __cuGraphUpload
 *             cuGetProcAddress('cuGraphUpload', &__cuGraphUpload, 11010, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *             global __cuGraphLaunch
 *             cuGetProcAddress('cuGraphLaunch', &__cuGraphLaunch, 10000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
      __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuGraphUpload"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuGraphUpload), 0x2B02, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 811, __pyx_L1_error)

      /* "cuda/_cuda/ccuda.pyx":813
 *             cuGetProcAddress('cuGraphUpload', &__cuGraphUpload, 11010, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *             global __cuGraphLaunch
 *             cuGetProcAddress('cuGraphLaunch', &__cuGraphLaunch, 10000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *             global __cuGraphicsMapResources
 *             cuGetProcAddress('cuGraphicsMapResources', &__cuGraphicsMapResources, 3000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
      __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuGraphLaunch"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuGraphLaunch), 0x2710, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 813, __pyx_L1_error)

      /* "cuda/_cuda/ccuda.pyx":815
 *             cuGetProcAddress('cuGraphLaunch', &__cuGraphLaunch, 10000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *             global __cuGraphicsMapResources
 *             cuGetProcAddress('cuGraphicsMapResources', &__cuGraphicsMapResources, 3000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *             global __cuGraphicsUnmapResources
 *             cuGetProcAddress('cuGraphicsUnmapResources', &__cuGraphicsUnmapResources, 3000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
      __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuGraphicsMapResources"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuGraphicsMapResources), 0xBB8, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 815, __pyx_L1_error)

      /* "cuda/_cuda/ccuda.pyx":817
 *             cuGetProcAddress('cuGraphicsMapResources', &__cuGraphicsMapResources, 3000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *             global __cuGraphicsUnmapResources
 *             cuGetProcAddress('cuGraphicsUnmapResources', &__cuGraphicsUnmapResources, 3000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         # Get remaining functions
 *         global __cuGetErrorString
 */
      __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuGraphicsUnmapResources"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuGraphicsUnmapResources), 0xBB8, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 817, __pyx_L1_error)
    }
    __pyx_L15:;

    /* "cuda/_cuda/ccuda.pyx":820
 *         # Get remaining functions
 *         global __cuGetErrorString
 *         cuGetProcAddress('cuGetErrorString', &__cuGetErrorString, 6000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuGetErrorName
 *         cuGetProcAddress('cuGetErrorName', &__cuGetErrorName, 6000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuGetErrorString"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuGetErrorString), 0x1770, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 820, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":822
 *         cuGetProcAddress('cuGetErrorString', &__cuGetErrorString, 6000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuGetErrorName
 *         cuGetProcAddress('cuGetErrorName', &__cuGetErrorName, 6000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuInit
 *         cuGetProcAddress('cuInit', &__cuInit, 2000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuGetErrorName"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuGetErrorName), 0x1770, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 822, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":824
 *         cuGetProcAddress('cuGetErrorName', &__cuGetErrorName, 6000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuInit
 *         cuGetProcAddress('cuInit', &__cuInit, 2000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuDriverGetVersion
 *         cuGetProcAddress('cuDriverGetVersion', &__cuDriverGetVersion, 2020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuInit"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuInit), 0x7D0, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 824, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":826
 *         cuGetProcAddress('cuInit', &__cuInit, 2000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuDriverGetVersion
 *         cuGetProcAddress('cuDriverGetVersion', &__cuDriverGetVersion, 2020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuDeviceGet
 *         cuGetProcAddress('cuDeviceGet', &__cuDeviceGet, 2000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuDriverGetVersion"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuDriverGetVersion), 0x7E4, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 826, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":828
 *         cuGetProcAddress('cuDriverGetVersion', &__cuDriverGetVersion, 2020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuDeviceGet
 *         cuGetProcAddress('cuDeviceGet', &__cuDeviceGet, 2000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuDeviceGetCount
 *         cuGetProcAddress('cuDeviceGetCount', &__cuDeviceGetCount, 2000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuDeviceGet"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuDeviceGet), 0x7D0, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 828, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":830
 *         cuGetProcAddress('cuDeviceGet', &__cuDeviceGet, 2000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuDeviceGetCount
 *         cuGetProcAddress('cuDeviceGetCount', &__cuDeviceGetCount, 2000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuDeviceGetName
 *         cuGetProcAddress('cuDeviceGetName', &__cuDeviceGetName, 2000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuDeviceGetCount"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuDeviceGetCount), 0x7D0, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 830, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":832
 *         cuGetProcAddress('cuDeviceGetCount', &__cuDeviceGetCount, 2000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuDeviceGetName
 *         cuGetProcAddress('cuDeviceGetName', &__cuDeviceGetName, 2000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuDeviceGetUuid
 *         cuGetProcAddress('cuDeviceGetUuid', &__cuDeviceGetUuid, 9020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuDeviceGetName"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuDeviceGetName), 0x7D0, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 832, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":834
 *         cuGetProcAddress('cuDeviceGetName', &__cuDeviceGetName, 2000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuDeviceGetUuid
 *         cuGetProcAddress('cuDeviceGetUuid', &__cuDeviceGetUuid, 9020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuDeviceGetUuid_v2
 *         cuGetProcAddress('cuDeviceGetUuid', &__cuDeviceGetUuid_v2, 11040, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuDeviceGetUuid"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuDeviceGetUuid), 0x233C, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 834, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":836
 *         cuGetProcAddress('cuDeviceGetUuid', &__cuDeviceGetUuid, 9020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuDeviceGetUuid_v2
 *         cuGetProcAddress('cuDeviceGetUuid', &__cuDeviceGetUuid_v2, 11040, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuDeviceGetLuid
 *         cuGetProcAddress('cuDeviceGetLuid', &__cuDeviceGetLuid, 10000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuDeviceGetUuid"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuDeviceGetUuid_v2), 0x2B20, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 836, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":838
 *         cuGetProcAddress('cuDeviceGetUuid', &__cuDeviceGetUuid_v2, 11040, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuDeviceGetLuid
 *         cuGetProcAddress('cuDeviceGetLuid', &__cuDeviceGetLuid, 10000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuDeviceTotalMem_v2
 *         cuGetProcAddress('cuDeviceTotalMem', &__cuDeviceTotalMem_v2, 3020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuDeviceGetLuid"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuDeviceGetLuid), 0x2710, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 838, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":840
 *         cuGetProcAddress('cuDeviceGetLuid', &__cuDeviceGetLuid, 10000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuDeviceTotalMem_v2
 *         cuGetProcAddress('cuDeviceTotalMem', &__cuDeviceTotalMem_v2, 3020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuDeviceGetTexture1DLinearMaxWidth
 *         cuGetProcAddress('cuDeviceGetTexture1DLinearMaxWidth', &__cuDeviceGetTexture1DLinearMaxWidth, 11010, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuDeviceTotalMem"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuDeviceTotalMem_v2), 0xBCC, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 840, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":842
 *         cuGetProcAddress('cuDeviceTotalMem', &__cuDeviceTotalMem_v2, 3020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuDeviceGetTexture1DLinearMaxWidth
 *         cuGetProcAddress('cuDeviceGetTexture1DLinearMaxWidth', &__cuDeviceGetTexture1DLinearMaxWidth, 11010, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuDeviceGetAttribute
 *         cuGetProcAddress('cuDeviceGetAttribute', &__cuDeviceGetAttribute, 2000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuDeviceGetTexture1DLinearMaxWidth"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuDeviceGetTexture1DLinearMaxWidth), 0x2B02, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 842, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":844
 *         cuGetProcAddress('cuDeviceGetTexture1DLinearMaxWidth', &__cuDeviceGetTexture1DLinearMaxWidth, 11010, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuDeviceGetAttribute
 *         cuGetProcAddress('cuDeviceGetAttribute', &__cuDeviceGetAttribute, 2000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuDeviceGetNvSciSyncAttributes
 *         cuGetProcAddress('cuDeviceGetNvSciSyncAttributes', &__cuDeviceGetNvSciSyncAttributes, 10020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuDeviceGetAttribute"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuDeviceGetAttribute), 0x7D0, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 844, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":846
 *         cuGetProcAddress('cuDeviceGetAttribute', &__cuDeviceGetAttribute, 2000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuDeviceGetNvSciSyncAttributes
 *         cuGetProcAddress('cuDeviceGetNvSciSyncAttributes', &__cuDeviceGetNvSciSyncAttributes, 10020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuDeviceSetMemPool
 *         cuGetProcAddress('cuDeviceSetMemPool', &__cuDeviceSetMemPool, 11020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuDeviceGetNvSciSyncAttributes"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuDeviceGetNvSciSyncAttributes), 0x2724, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 846, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":848
 *         cuGetProcAddress('cuDeviceGetNvSciSyncAttributes', &__cuDeviceGetNvSciSyncAttributes, 10020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuDeviceSetMemPool
 *         cuGetProcAddress('cuDeviceSetMemPool', &__cuDeviceSetMemPool, 11020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuDeviceGetMemPool
 *         cuGetProcAddress('cuDeviceGetMemPool', &__cuDeviceGetMemPool, 11020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuDeviceSetMemPool"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuDeviceSetMemPool), 0x2B0C, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 848, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":850
 *         cuGetProcAddress('cuDeviceSetMemPool', &__cuDeviceSetMemPool, 11020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuDeviceGetMemPool
 *         cuGetProcAddress('cuDeviceGetMemPool', &__cuDeviceGetMemPool, 11020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuDeviceGetDefaultMemPool
 *         cuGetProcAddress('cuDeviceGetDefaultMemPool', &__cuDeviceGetDefaultMemPool, 11020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuDeviceGetMemPool"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuDeviceGetMemPool), 0x2B0C, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 850, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":852
 *         cuGetProcAddress('cuDeviceGetMemPool', &__cuDeviceGetMemPool, 11020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuDeviceGetDefaultMemPool
 *         cuGetProcAddress('cuDeviceGetDefaultMemPool', &__cuDeviceGetDefaultMemPool, 11020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuDeviceGetExecAffinitySupport
 *         cuGetProcAddress('cuDeviceGetExecAffinitySupport', &__cuDeviceGetExecAffinitySupport, 11040, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuDeviceGetDefaultMemPool"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuDeviceGetDefaultMemPool), 0x2B0C, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 852, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":854
 *         cuGetProcAddress('cuDeviceGetDefaultMemPool', &__cuDeviceGetDefaultMemPool, 11020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuDeviceGetExecAffinitySupport
 *         cuGetProcAddress('cuDeviceGetExecAffinitySupport', &__cuDeviceGetExecAffinitySupport, 11040, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuFlushGPUDirectRDMAWrites
 *         cuGetProcAddress('cuFlushGPUDirectRDMAWrites', &__cuFlushGPUDirectRDMAWrites, 11030, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuDeviceGetExecAffinitySupport"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuDeviceGetExecAffinitySupport), 0x2B20, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 854, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":856
 *         cuGetProcAddress('cuDeviceGetExecAffinitySupport', &__cuDeviceGetExecAffinitySupport, 11040, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuFlushGPUDirectRDMAWrites
 *         cuGetProcAddress('cuFlushGPUDirectRDMAWrites', &__cuFlushGPUDirectRDMAWrites, 11030, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuDeviceGetProperties
 *         cuGetProcAddress('cuDeviceGetProperties', &__cuDeviceGetProperties, 2000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuFlushGPUDirectRDMAWrites"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuFlushGPUDirectRDMAWrites), 0x2B16, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 856, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":858
 *         cuGetProcAddress('cuFlushGPUDirectRDMAWrites', &__cuFlushGPUDirectRDMAWrites, 11030, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuDeviceGetProperties
 *         cuGetProcAddress('cuDeviceGetProperties', &__cuDeviceGetProperties, 2000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuDeviceComputeCapability
 *         cuGetProcAddress('cuDeviceComputeCapability', &__cuDeviceComputeCapability, 2000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuDeviceGetProperties"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuDeviceGetProperties), 0x7D0, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 858, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":860
 *         cuGetProcAddress('cuDeviceGetProperties', &__cuDeviceGetProperties, 2000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuDeviceComputeCapability
 *         cuGetProcAddress('cuDeviceComputeCapability', &__cuDeviceComputeCapability, 2000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuDevicePrimaryCtxRetain
 *         cuGetProcAddress('cuDevicePrimaryCtxRetain', &__cuDevicePrimaryCtxRetain, 7000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuDeviceComputeCapability"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuDeviceComputeCapability), 0x7D0, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 860, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":862
 *         cuGetProcAddress('cuDeviceComputeCapability', &__cuDeviceComputeCapability, 2000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuDevicePrimaryCtxRetain
 *         cuGetProcAddress('cuDevicePrimaryCtxRetain', &__cuDevicePrimaryCtxRetain, 7000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuDevicePrimaryCtxRelease_v2
 *         cuGetProcAddress('cuDevicePrimaryCtxRelease', &__cuDevicePrimaryCtxRelease_v2, 11000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuDevicePrimaryCtxRetain"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuDevicePrimaryCtxRetain), 0x1B58, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 862, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":864
 *         cuGetProcAddress('cuDevicePrimaryCtxRetain', &__cuDevicePrimaryCtxRetain, 7000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuDevicePrimaryCtxRelease_v2
 *         cuGetProcAddress('cuDevicePrimaryCtxRelease', &__cuDevicePrimaryCtxRelease_v2, 11000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuDevicePrimaryCtxSetFlags_v2
 *         cuGetProcAddress('cuDevicePrimaryCtxSetFlags', &__cuDevicePrimaryCtxSetFlags_v2, 11000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuDevicePrimaryCtxRelease"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuDevicePrimaryCtxRelease_v2), 0x2AF8, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 864, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":866
 *         cuGetProcAddress('cuDevicePrimaryCtxRelease', &__cuDevicePrimaryCtxRelease_v2, 11000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuDevicePrimaryCtxSetFlags_v2
 *         cuGetProcAddress('cuDevicePrimaryCtxSetFlags', &__cuDevicePrimaryCtxSetFlags_v2, 11000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuDevicePrimaryCtxGetState
 *         cuGetProcAddress('cuDevicePrimaryCtxGetState', &__cuDevicePrimaryCtxGetState, 7000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuDevicePrimaryCtxSetFlags"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuDevicePrimaryCtxSetFlags_v2), 0x2AF8, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 866, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":868
 *         cuGetProcAddress('cuDevicePrimaryCtxSetFlags', &__cuDevicePrimaryCtxSetFlags_v2, 11000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuDevicePrimaryCtxGetState
 *         cuGetProcAddress('cuDevicePrimaryCtxGetState', &__cuDevicePrimaryCtxGetState, 7000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuDevicePrimaryCtxReset_v2
 *         cuGetProcAddress('cuDevicePrimaryCtxReset', &__cuDevicePrimaryCtxReset_v2, 11000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuDevicePrimaryCtxGetState"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuDevicePrimaryCtxGetState), 0x1B58, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 868, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":870
 *         cuGetProcAddress('cuDevicePrimaryCtxGetState', &__cuDevicePrimaryCtxGetState, 7000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuDevicePrimaryCtxReset_v2
 *         cuGetProcAddress('cuDevicePrimaryCtxReset', &__cuDevicePrimaryCtxReset_v2, 11000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuCtxCreate_v2
 *         cuGetProcAddress('cuCtxCreate', &__cuCtxCreate_v2, 3020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuDevicePrimaryCtxReset"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuDevicePrimaryCtxReset_v2), 0x2AF8, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 870, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":872
 *         cuGetProcAddress('cuDevicePrimaryCtxReset', &__cuDevicePrimaryCtxReset_v2, 11000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuCtxCreate_v2
 *         cuGetProcAddress('cuCtxCreate', &__cuCtxCreate_v2, 3020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuCtxCreate_v3
 *         cuGetProcAddress('cuCtxCreate', &__cuCtxCreate_v3, 11040, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuCtxCreate"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuCtxCreate_v2), 0xBCC, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 872, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":874
 *         cuGetProcAddress('cuCtxCreate', &__cuCtxCreate_v2, 3020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuCtxCreate_v3
 *         cuGetProcAddress('cuCtxCreate', &__cuCtxCreate_v3, 11040, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuCtxDestroy_v2
 *         cuGetProcAddress('cuCtxDestroy', &__cuCtxDestroy_v2, 4000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuCtxCreate"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuCtxCreate_v3), 0x2B20, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 874, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":876
 *         cuGetProcAddress('cuCtxCreate', &__cuCtxCreate_v3, 11040, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuCtxDestroy_v2
 *         cuGetProcAddress('cuCtxDestroy', &__cuCtxDestroy_v2, 4000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuCtxPushCurrent_v2
 *         cuGetProcAddress('cuCtxPushCurrent', &__cuCtxPushCurrent_v2, 4000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuCtxDestroy"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuCtxDestroy_v2), 0xFA0, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 876, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":878
 *         cuGetProcAddress('cuCtxDestroy', &__cuCtxDestroy_v2, 4000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuCtxPushCurrent_v2
 *         cuGetProcAddress('cuCtxPushCurrent', &__cuCtxPushCurrent_v2, 4000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuCtxPopCurrent_v2
 *         cuGetProcAddress('cuCtxPopCurrent', &__cuCtxPopCurrent_v2, 4000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuCtxPushCurrent"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuCtxPushCurrent_v2), 0xFA0, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 878, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":880
 *         cuGetProcAddress('cuCtxPushCurrent', &__cuCtxPushCurrent_v2, 4000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuCtxPopCurrent_v2
 *         cuGetProcAddress('cuCtxPopCurrent', &__cuCtxPopCurrent_v2, 4000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuCtxSetCurrent
 *         cuGetProcAddress('cuCtxSetCurrent', &__cuCtxSetCurrent, 4000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuCtxPopCurrent"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuCtxPopCurrent_v2), 0xFA0, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 880, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":882
 *         cuGetProcAddress('cuCtxPopCurrent', &__cuCtxPopCurrent_v2, 4000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuCtxSetCurrent
 *         cuGetProcAddress('cuCtxSetCurrent', &__cuCtxSetCurrent, 4000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuCtxGetCurrent
 *         cuGetProcAddress('cuCtxGetCurrent', &__cuCtxGetCurrent, 4000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuCtxSetCurrent"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuCtxSetCurrent), 0xFA0, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 882, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":884
 *         cuGetProcAddress('cuCtxSetCurrent', &__cuCtxSetCurrent, 4000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuCtxGetCurrent
 *         cuGetProcAddress('cuCtxGetCurrent', &__cuCtxGetCurrent, 4000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuCtxGetDevice
 *         cuGetProcAddress('cuCtxGetDevice', &__cuCtxGetDevice, 2000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuCtxGetCurrent"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuCtxGetCurrent), 0xFA0, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 884, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":886
 *         cuGetProcAddress('cuCtxGetCurrent', &__cuCtxGetCurrent, 4000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuCtxGetDevice
 *         cuGetProcAddress('cuCtxGetDevice', &__cuCtxGetDevice, 2000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuCtxGetFlags
 *         cuGetProcAddress('cuCtxGetFlags', &__cuCtxGetFlags, 7000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuCtxGetDevice"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuCtxGetDevice), 0x7D0, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 886, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":888
 *         cuGetProcAddress('cuCtxGetDevice', &__cuCtxGetDevice, 2000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuCtxGetFlags
 *         cuGetProcAddress('cuCtxGetFlags', &__cuCtxGetFlags, 7000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuCtxSetFlags
 *         cuGetProcAddress('cuCtxSetFlags', &__cuCtxSetFlags, 12010, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuCtxGetFlags"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuCtxGetFlags), 0x1B58, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 888, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":890
 *         cuGetProcAddress('cuCtxGetFlags', &__cuCtxGetFlags, 7000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuCtxSetFlags
 *         cuGetProcAddress('cuCtxSetFlags', &__cuCtxSetFlags, 12010, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuCtxGetId
 *         cuGetProcAddress('cuCtxGetId', &__cuCtxGetId, 12000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuCtxSetFlags"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuCtxSetFlags), 0x2EEA, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 890, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":892
 *         cuGetProcAddress('cuCtxSetFlags', &__cuCtxSetFlags, 12010, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuCtxGetId
 *         cuGetProcAddress('cuCtxGetId', &__cuCtxGetId, 12000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuCtxSynchronize
 *         cuGetProcAddress('cuCtxSynchronize', &__cuCtxSynchronize, 2000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuCtxGetId"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuCtxGetId), 0x2EE0, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 892, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":894
 *         cuGetProcAddress('cuCtxGetId', &__cuCtxGetId, 12000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuCtxSynchronize
 *         cuGetProcAddress('cuCtxSynchronize', &__cuCtxSynchronize, 2000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuCtxSetLimit
 *         cuGetProcAddress('cuCtxSetLimit', &__cuCtxSetLimit, 3010, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuCtxSynchronize"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuCtxSynchronize), 0x7D0, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 894, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":896
 *         cuGetProcAddress('cuCtxSynchronize', &__cuCtxSynchronize, 2000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuCtxSetLimit
 *         cuGetProcAddress('cuCtxSetLimit', &__cuCtxSetLimit, 3010, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuCtxGetLimit
 *         cuGetProcAddress('cuCtxGetLimit', &__cuCtxGetLimit, 3010, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuCtxSetLimit"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuCtxSetLimit), 0xBC2, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 896, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":898
 *         cuGetProcAddress('cuCtxSetLimit', &__cuCtxSetLimit, 3010, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuCtxGetLimit
 *         cuGetProcAddress('cuCtxGetLimit', &__cuCtxGetLimit, 3010, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuCtxGetCacheConfig
 *         cuGetProcAddress('cuCtxGetCacheConfig', &__cuCtxGetCacheConfig, 3020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuCtxGetLimit"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuCtxGetLimit), 0xBC2, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 898, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":900
 *         cuGetProcAddress('cuCtxGetLimit', &__cuCtxGetLimit, 3010, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuCtxGetCacheConfig
 *         cuGetProcAddress('cuCtxGetCacheConfig', &__cuCtxGetCacheConfig, 3020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuCtxSetCacheConfig
 *         cuGetProcAddress('cuCtxSetCacheConfig', &__cuCtxSetCacheConfig, 3020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuCtxGetCacheConfig"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuCtxGetCacheConfig), 0xBCC, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 900, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":902
 *         cuGetProcAddress('cuCtxGetCacheConfig', &__cuCtxGetCacheConfig, 3020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuCtxSetCacheConfig
 *         cuGetProcAddress('cuCtxSetCacheConfig', &__cuCtxSetCacheConfig, 3020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuCtxGetApiVersion
 *         cuGetProcAddress('cuCtxGetApiVersion', &__cuCtxGetApiVersion, 3020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuCtxSetCacheConfig"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuCtxSetCacheConfig), 0xBCC, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 902, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":904
 *         cuGetProcAddress('cuCtxSetCacheConfig', &__cuCtxSetCacheConfig, 3020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuCtxGetApiVersion
 *         cuGetProcAddress('cuCtxGetApiVersion', &__cuCtxGetApiVersion, 3020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuCtxGetStreamPriorityRange
 *         cuGetProcAddress('cuCtxGetStreamPriorityRange', &__cuCtxGetStreamPriorityRange, 5050, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuCtxGetApiVersion"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuCtxGetApiVersion), 0xBCC, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 904, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":906
 *         cuGetProcAddress('cuCtxGetApiVersion', &__cuCtxGetApiVersion, 3020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuCtxGetStreamPriorityRange
 *         cuGetProcAddress('cuCtxGetStreamPriorityRange', &__cuCtxGetStreamPriorityRange, 5050, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuCtxResetPersistingL2Cache
 *         cuGetProcAddress('cuCtxResetPersistingL2Cache', &__cuCtxResetPersistingL2Cache, 11000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuCtxGetStreamPriorityRange"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuCtxGetStreamPriorityRange), 0x13BA, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 906, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":908
 *         cuGetProcAddress('cuCtxGetStreamPriorityRange', &__cuCtxGetStreamPriorityRange, 5050, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuCtxResetPersistingL2Cache
 *         cuGetProcAddress('cuCtxResetPersistingL2Cache', &__cuCtxResetPersistingL2Cache, 11000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuCtxGetExecAffinity
 *         cuGetProcAddress('cuCtxGetExecAffinity', &__cuCtxGetExecAffinity, 11040, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuCtxResetPersistingL2Cache"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuCtxResetPersistingL2Cache), 0x2AF8, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 908, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":910
 *         cuGetProcAddress('cuCtxResetPersistingL2Cache', &__cuCtxResetPersistingL2Cache, 11000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuCtxGetExecAffinity
 *         cuGetProcAddress('cuCtxGetExecAffinity', &__cuCtxGetExecAffinity, 11040, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuCtxAttach
 *         cuGetProcAddress('cuCtxAttach', &__cuCtxAttach, 2000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuCtxGetExecAffinity"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuCtxGetExecAffinity), 0x2B20, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 910, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":912
 *         cuGetProcAddress('cuCtxGetExecAffinity', &__cuCtxGetExecAffinity, 11040, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuCtxAttach
 *         cuGetProcAddress('cuCtxAttach', &__cuCtxAttach, 2000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuCtxDetach
 *         cuGetProcAddress('cuCtxDetach', &__cuCtxDetach, 2000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuCtxAttach"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuCtxAttach), 0x7D0, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 912, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":914
 *         cuGetProcAddress('cuCtxAttach', &__cuCtxAttach, 2000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuCtxDetach
 *         cuGetProcAddress('cuCtxDetach', &__cuCtxDetach, 2000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuCtxGetSharedMemConfig
 *         cuGetProcAddress('cuCtxGetSharedMemConfig', &__cuCtxGetSharedMemConfig, 4020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuCtxDetach"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuCtxDetach), 0x7D0, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 914, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":916
 *         cuGetProcAddress('cuCtxDetach', &__cuCtxDetach, 2000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuCtxGetSharedMemConfig
 *         cuGetProcAddress('cuCtxGetSharedMemConfig', &__cuCtxGetSharedMemConfig, 4020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuCtxSetSharedMemConfig
 *         cuGetProcAddress('cuCtxSetSharedMemConfig', &__cuCtxSetSharedMemConfig, 4020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuCtxGetSharedMemConfig"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuCtxGetSharedMemConfig), 0xFB4, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 916, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":918
 *         cuGetProcAddress('cuCtxGetSharedMemConfig', &__cuCtxGetSharedMemConfig, 4020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuCtxSetSharedMemConfig
 *         cuGetProcAddress('cuCtxSetSharedMemConfig', &__cuCtxSetSharedMemConfig, 4020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuModuleLoad
 *         cuGetProcAddress('cuModuleLoad', &__cuModuleLoad, 2000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuCtxSetSharedMemConfig"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuCtxSetSharedMemConfig), 0xFB4, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 918, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":920
 *         cuGetProcAddress('cuCtxSetSharedMemConfig', &__cuCtxSetSharedMemConfig, 4020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuModuleLoad
 *         cuGetProcAddress('cuModuleLoad', &__cuModuleLoad, 2000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuModuleLoadData
 *         cuGetProcAddress('cuModuleLoadData', &__cuModuleLoadData, 2000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuModuleLoad"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuModuleLoad), 0x7D0, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 920, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":922
 *         cuGetProcAddress('cuModuleLoad', &__cuModuleLoad, 2000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuModuleLoadData
 *         cuGetProcAddress('cuModuleLoadData', &__cuModuleLoadData, 2000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuModuleLoadDataEx
 *         cuGetProcAddress('cuModuleLoadDataEx', &__cuModuleLoadDataEx, 2010, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuModuleLoadData"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuModuleLoadData), 0x7D0, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 922, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":924
 *         cuGetProcAddress('cuModuleLoadData', &__cuModuleLoadData, 2000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuModuleLoadDataEx
 *         cuGetProcAddress('cuModuleLoadDataEx', &__cuModuleLoadDataEx, 2010, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuModuleLoadFatBinary
 *         cuGetProcAddress('cuModuleLoadFatBinary', &__cuModuleLoadFatBinary, 2000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuModuleLoadDataEx"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuModuleLoadDataEx), 0x7DA, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 924, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":926
 *         cuGetProcAddress('cuModuleLoadDataEx', &__cuModuleLoadDataEx, 2010, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuModuleLoadFatBinary
 *         cuGetProcAddress('cuModuleLoadFatBinary', &__cuModuleLoadFatBinary, 2000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuModuleUnload
 *         cuGetProcAddress('cuModuleUnload', &__cuModuleUnload, 2000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuModuleLoadFatBinary"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuModuleLoadFatBinary), 0x7D0, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 926, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":928
 *         cuGetProcAddress('cuModuleLoadFatBinary', &__cuModuleLoadFatBinary, 2000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuModuleUnload
 *         cuGetProcAddress('cuModuleUnload', &__cuModuleUnload, 2000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuModuleGetLoadingMode
 *         cuGetProcAddress('cuModuleGetLoadingMode', &__cuModuleGetLoadingMode, 11070, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuModuleUnload"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuModuleUnload), 0x7D0, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 928, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":930
 *         cuGetProcAddress('cuModuleUnload', &__cuModuleUnload, 2000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuModuleGetLoadingMode
 *         cuGetProcAddress('cuModuleGetLoadingMode', &__cuModuleGetLoadingMode, 11070, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuModuleGetFunction
 *         cuGetProcAddress('cuModuleGetFunction', &__cuModuleGetFunction, 2000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuModuleGetLoadingMode"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuModuleGetLoadingMode), 0x2B3E, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 930, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":932
 *         cuGetProcAddress('cuModuleGetLoadingMode', &__cuModuleGetLoadingMode, 11070, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuModuleGetFunction
 *         cuGetProcAddress('cuModuleGetFunction', &__cuModuleGetFunction, 2000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuModuleGetFunctionCount
 *         cuGetProcAddress('cuModuleGetFunctionCount', &__cuModuleGetFunctionCount, 12040, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuModuleGetFunction"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuModuleGetFunction), 0x7D0, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 932, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":934
 *         cuGetProcAddress('cuModuleGetFunction', &__cuModuleGetFunction, 2000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuModuleGetFunctionCount
 *         cuGetProcAddress('cuModuleGetFunctionCount', &__cuModuleGetFunctionCount, 12040, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuModuleEnumerateFunctions
 *         cuGetProcAddress('cuModuleEnumerateFunctions', &__cuModuleEnumerateFunctions, 12040, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuModuleGetFunctionCount"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuModuleGetFunctionCount), 0x2F08, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 934, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":936
 *         cuGetProcAddress('cuModuleGetFunctionCount', &__cuModuleGetFunctionCount, 12040, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuModuleEnumerateFunctions
 *         cuGetProcAddress('cuModuleEnumerateFunctions', &__cuModuleEnumerateFunctions, 12040, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuModuleGetGlobal_v2
 *         cuGetProcAddress('cuModuleGetGlobal', &__cuModuleGetGlobal_v2, 3020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuModuleEnumerateFunctions"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuModuleEnumerateFunctions), 0x2F08, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 936, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":938
 *         cuGetProcAddress('cuModuleEnumerateFunctions', &__cuModuleEnumerateFunctions, 12040, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuModuleGetGlobal_v2
 *         cuGetProcAddress('cuModuleGetGlobal', &__cuModuleGetGlobal_v2, 3020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuLinkCreate_v2
 *         cuGetProcAddress('cuLinkCreate', &__cuLinkCreate_v2, 6050, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuModuleGetGlobal"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuModuleGetGlobal_v2), 0xBCC, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 938, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":940
 *         cuGetProcAddress('cuModuleGetGlobal', &__cuModuleGetGlobal_v2, 3020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuLinkCreate_v2
 *         cuGetProcAddress('cuLinkCreate', &__cuLinkCreate_v2, 6050, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuLinkAddData_v2
 *         cuGetProcAddress('cuLinkAddData', &__cuLinkAddData_v2, 6050, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuLinkCreate"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuLinkCreate_v2), 0x17A2, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 940, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":942
 *         cuGetProcAddress('cuLinkCreate', &__cuLinkCreate_v2, 6050, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuLinkAddData_v2
 *         cuGetProcAddress('cuLinkAddData', &__cuLinkAddData_v2, 6050, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuLinkAddFile_v2
 *         cuGetProcAddress('cuLinkAddFile', &__cuLinkAddFile_v2, 6050, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuLinkAddData"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuLinkAddData_v2), 0x17A2, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 942, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":944
 *         cuGetProcAddress('cuLinkAddData', &__cuLinkAddData_v2, 6050, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuLinkAddFile_v2
 *         cuGetProcAddress('cuLinkAddFile', &__cuLinkAddFile_v2, 6050, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuLinkComplete
 *         cuGetProcAddress('cuLinkComplete', &__cuLinkComplete, 5050, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuLinkAddFile"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuLinkAddFile_v2), 0x17A2, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 944, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":946
 *         cuGetProcAddress('cuLinkAddFile', &__cuLinkAddFile_v2, 6050, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuLinkComplete
 *         cuGetProcAddress('cuLinkComplete', &__cuLinkComplete, 5050, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuLinkDestroy
 *         cuGetProcAddress('cuLinkDestroy', &__cuLinkDestroy, 5050, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuLinkComplete"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuLinkComplete), 0x13BA, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 946, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":948
 *         cuGetProcAddress('cuLinkComplete', &__cuLinkComplete, 5050, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuLinkDestroy
 *         cuGetProcAddress('cuLinkDestroy', &__cuLinkDestroy, 5050, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuModuleGetTexRef
 *         cuGetProcAddress('cuModuleGetTexRef', &__cuModuleGetTexRef, 2000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuLinkDestroy"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuLinkDestroy), 0x13BA, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 948, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":950
 *         cuGetProcAddress('cuLinkDestroy', &__cuLinkDestroy, 5050, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuModuleGetTexRef
 *         cuGetProcAddress('cuModuleGetTexRef', &__cuModuleGetTexRef, 2000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuModuleGetSurfRef
 *         cuGetProcAddress('cuModuleGetSurfRef', &__cuModuleGetSurfRef, 3000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuModuleGetTexRef"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuModuleGetTexRef), 0x7D0, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 950, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":952
 *         cuGetProcAddress('cuModuleGetTexRef', &__cuModuleGetTexRef, 2000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuModuleGetSurfRef
 *         cuGetProcAddress('cuModuleGetSurfRef', &__cuModuleGetSurfRef, 3000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuLibraryLoadData
 *         cuGetProcAddress('cuLibraryLoadData', &__cuLibraryLoadData, 12000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuModuleGetSurfRef"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuModuleGetSurfRef), 0xBB8, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 952, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":954
 *         cuGetProcAddress('cuModuleGetSurfRef', &__cuModuleGetSurfRef, 3000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuLibraryLoadData
 *         cuGetProcAddress('cuLibraryLoadData', &__cuLibraryLoadData, 12000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuLibraryLoadFromFile
 *         cuGetProcAddress('cuLibraryLoadFromFile', &__cuLibraryLoadFromFile, 12000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuLibraryLoadData"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuLibraryLoadData), 0x2EE0, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 954, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":956
 *         cuGetProcAddress('cuLibraryLoadData', &__cuLibraryLoadData, 12000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuLibraryLoadFromFile
 *         cuGetProcAddress('cuLibraryLoadFromFile', &__cuLibraryLoadFromFile, 12000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuLibraryUnload
 *         cuGetProcAddress('cuLibraryUnload', &__cuLibraryUnload, 12000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuLibraryLoadFromFile"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuLibraryLoadFromFile), 0x2EE0, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 956, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":958
 *         cuGetProcAddress('cuLibraryLoadFromFile', &__cuLibraryLoadFromFile, 12000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuLibraryUnload
 *         cuGetProcAddress('cuLibraryUnload', &__cuLibraryUnload, 12000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuLibraryGetKernel
 *         cuGetProcAddress('cuLibraryGetKernel', &__cuLibraryGetKernel, 12000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuLibraryUnload"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuLibraryUnload), 0x2EE0, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 958, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":960
 *         cuGetProcAddress('cuLibraryUnload', &__cuLibraryUnload, 12000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuLibraryGetKernel
 *         cuGetProcAddress('cuLibraryGetKernel', &__cuLibraryGetKernel, 12000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuLibraryGetKernelCount
 *         cuGetProcAddress('cuLibraryGetKernelCount', &__cuLibraryGetKernelCount, 12040, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuLibraryGetKernel"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuLibraryGetKernel), 0x2EE0, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 960, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":962
 *         cuGetProcAddress('cuLibraryGetKernel', &__cuLibraryGetKernel, 12000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuLibraryGetKernelCount
 *         cuGetProcAddress('cuLibraryGetKernelCount', &__cuLibraryGetKernelCount, 12040, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuLibraryEnumerateKernels
 *         cuGetProcAddress('cuLibraryEnumerateKernels', &__cuLibraryEnumerateKernels, 12040, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuLibraryGetKernelCount"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuLibraryGetKernelCount), 0x2F08, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 962, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":964
 *         cuGetProcAddress('cuLibraryGetKernelCount', &__cuLibraryGetKernelCount, 12040, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuLibraryEnumerateKernels
 *         cuGetProcAddress('cuLibraryEnumerateKernels', &__cuLibraryEnumerateKernels, 12040, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuLibraryGetModule
 *         cuGetProcAddress('cuLibraryGetModule', &__cuLibraryGetModule, 12000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuLibraryEnumerateKernels"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuLibraryEnumerateKernels), 0x2F08, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 964, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":966
 *         cuGetProcAddress('cuLibraryEnumerateKernels', &__cuLibraryEnumerateKernels, 12040, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuLibraryGetModule
 *         cuGetProcAddress('cuLibraryGetModule', &__cuLibraryGetModule, 12000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuKernelGetFunction
 *         cuGetProcAddress('cuKernelGetFunction', &__cuKernelGetFunction, 12000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuLibraryGetModule"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuLibraryGetModule), 0x2EE0, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 966, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":968
 *         cuGetProcAddress('cuLibraryGetModule', &__cuLibraryGetModule, 12000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuKernelGetFunction
 *         cuGetProcAddress('cuKernelGetFunction', &__cuKernelGetFunction, 12000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuLibraryGetGlobal
 *         cuGetProcAddress('cuLibraryGetGlobal', &__cuLibraryGetGlobal, 12000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuKernelGetFunction"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuKernelGetFunction), 0x2EE0, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 968, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":970
 *         cuGetProcAddress('cuKernelGetFunction', &__cuKernelGetFunction, 12000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuLibraryGetGlobal
 *         cuGetProcAddress('cuLibraryGetGlobal', &__cuLibraryGetGlobal, 12000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuLibraryGetManaged
 *         cuGetProcAddress('cuLibraryGetManaged', &__cuLibraryGetManaged, 12000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuLibraryGetGlobal"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuLibraryGetGlobal), 0x2EE0, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 970, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":972
 *         cuGetProcAddress('cuLibraryGetGlobal', &__cuLibraryGetGlobal, 12000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuLibraryGetManaged
 *         cuGetProcAddress('cuLibraryGetManaged', &__cuLibraryGetManaged, 12000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuLibraryGetUnifiedFunction
 *         cuGetProcAddress('cuLibraryGetUnifiedFunction', &__cuLibraryGetUnifiedFunction, 12000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuLibraryGetManaged"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuLibraryGetManaged), 0x2EE0, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 972, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":974
 *         cuGetProcAddress('cuLibraryGetManaged', &__cuLibraryGetManaged, 12000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuLibraryGetUnifiedFunction
 *         cuGetProcAddress('cuLibraryGetUnifiedFunction', &__cuLibraryGetUnifiedFunction, 12000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuKernelGetAttribute
 *         cuGetProcAddress('cuKernelGetAttribute', &__cuKernelGetAttribute, 12000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuLibraryGetUnifiedFunction"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuLibraryGetUnifiedFunction), 0x2EE0, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 974, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":976
 *         cuGetProcAddress('cuLibraryGetUnifiedFunction', &__cuLibraryGetUnifiedFunction, 12000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuKernelGetAttribute
 *         cuGetProcAddress('cuKernelGetAttribute', &__cuKernelGetAttribute, 12000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuKernelSetAttribute
 *         cuGetProcAddress('cuKernelSetAttribute', &__cuKernelSetAttribute, 12000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuKernelGetAttribute"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuKernelGetAttribute), 0x2EE0, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 976, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":978
 *         cuGetProcAddress('cuKernelGetAttribute', &__cuKernelGetAttribute, 12000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuKernelSetAttribute
 *         cuGetProcAddress('cuKernelSetAttribute', &__cuKernelSetAttribute, 12000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuKernelSetCacheConfig
 *         cuGetProcAddress('cuKernelSetCacheConfig', &__cuKernelSetCacheConfig, 12000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuKernelSetAttribute"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuKernelSetAttribute), 0x2EE0, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 978, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":980
 *         cuGetProcAddress('cuKernelSetAttribute', &__cuKernelSetAttribute, 12000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuKernelSetCacheConfig
 *         cuGetProcAddress('cuKernelSetCacheConfig', &__cuKernelSetCacheConfig, 12000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuKernelGetName
 *         cuGetProcAddress('cuKernelGetName', &__cuKernelGetName, 12030, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuKernelSetCacheConfig"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuKernelSetCacheConfig), 0x2EE0, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 980, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":982
 *         cuGetProcAddress('cuKernelSetCacheConfig', &__cuKernelSetCacheConfig, 12000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuKernelGetName
 *         cuGetProcAddress('cuKernelGetName', &__cuKernelGetName, 12030, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuKernelGetParamInfo
 *         cuGetProcAddress('cuKernelGetParamInfo', &__cuKernelGetParamInfo, 12040, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuKernelGetName"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuKernelGetName), 0x2EFE, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 982, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":984
 *         cuGetProcAddress('cuKernelGetName', &__cuKernelGetName, 12030, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuKernelGetParamInfo
 *         cuGetProcAddress('cuKernelGetParamInfo', &__cuKernelGetParamInfo, 12040, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuMemGetInfo_v2
 *         cuGetProcAddress('cuMemGetInfo', &__cuMemGetInfo_v2, 3020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuKernelGetParamInfo"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuKernelGetParamInfo), 0x2F08, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 984, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":986
 *         cuGetProcAddress('cuKernelGetParamInfo', &__cuKernelGetParamInfo, 12040, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuMemGetInfo_v2
 *         cuGetProcAddress('cuMemGetInfo', &__cuMemGetInfo_v2, 3020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuMemAlloc_v2
 *         cuGetProcAddress('cuMemAlloc', &__cuMemAlloc_v2, 3020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuMemGetInfo"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuMemGetInfo_v2), 0xBCC, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 986, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":988
 *         cuGetProcAddress('cuMemGetInfo', &__cuMemGetInfo_v2, 3020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuMemAlloc_v2
 *         cuGetProcAddress('cuMemAlloc', &__cuMemAlloc_v2, 3020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuMemAllocPitch_v2
 *         cuGetProcAddress('cuMemAllocPitch', &__cuMemAllocPitch_v2, 3020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuMemAlloc"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuMemAlloc_v2), 0xBCC, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 988, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":990
 *         cuGetProcAddress('cuMemAlloc', &__cuMemAlloc_v2, 3020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuMemAllocPitch_v2
 *         cuGetProcAddress('cuMemAllocPitch', &__cuMemAllocPitch_v2, 3020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuMemFree_v2
 *         cuGetProcAddress('cuMemFree', &__cuMemFree_v2, 3020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuMemAllocPitch"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuMemAllocPitch_v2), 0xBCC, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 990, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":992
 *         cuGetProcAddress('cuMemAllocPitch', &__cuMemAllocPitch_v2, 3020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuMemFree_v2
 *         cuGetProcAddress('cuMemFree', &__cuMemFree_v2, 3020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuMemGetAddressRange_v2
 *         cuGetProcAddress('cuMemGetAddressRange', &__cuMemGetAddressRange_v2, 3020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuMemFree"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuMemFree_v2), 0xBCC, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 992, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":994
 *         cuGetProcAddress('cuMemFree', &__cuMemFree_v2, 3020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuMemGetAddressRange_v2
 *         cuGetProcAddress('cuMemGetAddressRange', &__cuMemGetAddressRange_v2, 3020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuMemAllocHost_v2
 *         cuGetProcAddress('cuMemAllocHost', &__cuMemAllocHost_v2, 3020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuMemGetAddressRange"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuMemGetAddressRange_v2), 0xBCC, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 994, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":996
 *         cuGetProcAddress('cuMemGetAddressRange', &__cuMemGetAddressRange_v2, 3020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuMemAllocHost_v2
 *         cuGetProcAddress('cuMemAllocHost', &__cuMemAllocHost_v2, 3020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuMemFreeHost
 *         cuGetProcAddress('cuMemFreeHost', &__cuMemFreeHost, 2000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuMemAllocHost"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuMemAllocHost_v2), 0xBCC, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 996, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":998
 *         cuGetProcAddress('cuMemAllocHost', &__cuMemAllocHost_v2, 3020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuMemFreeHost
 *         cuGetProcAddress('cuMemFreeHost', &__cuMemFreeHost, 2000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuMemHostAlloc
 *         cuGetProcAddress('cuMemHostAlloc', &__cuMemHostAlloc, 2020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuMemFreeHost"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuMemFreeHost), 0x7D0, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 998, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":1000
 *         cuGetProcAddress('cuMemFreeHost', &__cuMemFreeHost, 2000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuMemHostAlloc
 *         cuGetProcAddress('cuMemHostAlloc', &__cuMemHostAlloc, 2020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuMemHostGetDevicePointer_v2
 *         cuGetProcAddress('cuMemHostGetDevicePointer', &__cuMemHostGetDevicePointer_v2, 3020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuMemHostAlloc"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuMemHostAlloc), 0x7E4, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 1000, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":1002
 *         cuGetProcAddress('cuMemHostAlloc', &__cuMemHostAlloc, 2020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuMemHostGetDevicePointer_v2
 *         cuGetProcAddress('cuMemHostGetDevicePointer', &__cuMemHostGetDevicePointer_v2, 3020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuMemHostGetFlags
 *         cuGetProcAddress('cuMemHostGetFlags', &__cuMemHostGetFlags, 2030, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuMemHostGetDevicePointer"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuMemHostGetDevicePointer_v2), 0xBCC, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 1002, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":1004
 *         cuGetProcAddress('cuMemHostGetDevicePointer', &__cuMemHostGetDevicePointer_v2, 3020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuMemHostGetFlags
 *         cuGetProcAddress('cuMemHostGetFlags', &__cuMemHostGetFlags, 2030, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuMemAllocManaged
 *         cuGetProcAddress('cuMemAllocManaged', &__cuMemAllocManaged, 6000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuMemHostGetFlags"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuMemHostGetFlags), 0x7EE, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 1004, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":1006
 *         cuGetProcAddress('cuMemHostGetFlags', &__cuMemHostGetFlags, 2030, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuMemAllocManaged
 *         cuGetProcAddress('cuMemAllocManaged', &__cuMemAllocManaged, 6000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuDeviceRegisterAsyncNotification
 *         cuGetProcAddress('cuDeviceRegisterAsyncNotification', &__cuDeviceRegisterAsyncNotification, 12040, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuMemAllocManaged"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuMemAllocManaged), 0x1770, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 1006, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":1008
 *         cuGetProcAddress('cuMemAllocManaged', &__cuMemAllocManaged, 6000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuDeviceRegisterAsyncNotification
 *         cuGetProcAddress('cuDeviceRegisterAsyncNotification', &__cuDeviceRegisterAsyncNotification, 12040, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuDeviceUnregisterAsyncNotification
 *         cuGetProcAddress('cuDeviceUnregisterAsyncNotification', &__cuDeviceUnregisterAsyncNotification, 12040, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuDeviceRegisterAsyncNotification"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuDeviceRegisterAsyncNotification), 0x2F08, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 1008, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":1010
 *         cuGetProcAddress('cuDeviceRegisterAsyncNotification', &__cuDeviceRegisterAsyncNotification, 12040, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuDeviceUnregisterAsyncNotification
 *         cuGetProcAddress('cuDeviceUnregisterAsyncNotification', &__cuDeviceUnregisterAsyncNotification, 12040, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuDeviceGetByPCIBusId
 *         cuGetProcAddress('cuDeviceGetByPCIBusId', &__cuDeviceGetByPCIBusId, 4010, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuDeviceUnregisterAsyncNotification"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuDeviceUnregisterAsyncNotification), 0x2F08, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 1010, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":1012
 *         cuGetProcAddress('cuDeviceUnregisterAsyncNotification', &__cuDeviceUnregisterAsyncNotification, 12040, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuDeviceGetByPCIBusId
 *         cuGetProcAddress('cuDeviceGetByPCIBusId', &__cuDeviceGetByPCIBusId, 4010, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuDeviceGetPCIBusId
 *         cuGetProcAddress('cuDeviceGetPCIBusId', &__cuDeviceGetPCIBusId, 4010, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuDeviceGetByPCIBusId"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuDeviceGetByPCIBusId), 0xFAA, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 1012, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":1014
 *         cuGetProcAddress('cuDeviceGetByPCIBusId', &__cuDeviceGetByPCIBusId, 4010, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuDeviceGetPCIBusId
 *         cuGetProcAddress('cuDeviceGetPCIBusId', &__cuDeviceGetPCIBusId, 4010, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuIpcGetEventHandle
 *         cuGetProcAddress('cuIpcGetEventHandle', &__cuIpcGetEventHandle, 4010, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuDeviceGetPCIBusId"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuDeviceGetPCIBusId), 0xFAA, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 1014, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":1016
 *         cuGetProcAddress('cuDeviceGetPCIBusId', &__cuDeviceGetPCIBusId, 4010, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuIpcGetEventHandle
 *         cuGetProcAddress('cuIpcGetEventHandle', &__cuIpcGetEventHandle, 4010, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuIpcOpenEventHandle
 *         cuGetProcAddress('cuIpcOpenEventHandle', &__cuIpcOpenEventHandle, 4010, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuIpcGetEventHandle"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuIpcGetEventHandle), 0xFAA, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 1016, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":1018
 *         cuGetProcAddress('cuIpcGetEventHandle', &__cuIpcGetEventHandle, 4010, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuIpcOpenEventHandle
 *         cuGetProcAddress('cuIpcOpenEventHandle', &__cuIpcOpenEventHandle, 4010, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuIpcGetMemHandle
 *         cuGetProcAddress('cuIpcGetMemHandle', &__cuIpcGetMemHandle, 4010, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuIpcOpenEventHandle"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuIpcOpenEventHandle), 0xFAA, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 1018, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":1020
 *         cuGetProcAddress('cuIpcOpenEventHandle', &__cuIpcOpenEventHandle, 4010, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuIpcGetMemHandle
 *         cuGetProcAddress('cuIpcGetMemHandle', &__cuIpcGetMemHandle, 4010, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuIpcOpenMemHandle_v2
 *         cuGetProcAddress('cuIpcOpenMemHandle', &__cuIpcOpenMemHandle_v2, 11000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuIpcGetMemHandle"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuIpcGetMemHandle), 0xFAA, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 1020, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":1022
 *         cuGetProcAddress('cuIpcGetMemHandle', &__cuIpcGetMemHandle, 4010, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuIpcOpenMemHandle_v2
 *         cuGetProcAddress('cuIpcOpenMemHandle', &__cuIpcOpenMemHandle_v2, 11000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuIpcCloseMemHandle
 *         cuGetProcAddress('cuIpcCloseMemHandle', &__cuIpcCloseMemHandle, 4010, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuIpcOpenMemHandle"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuIpcOpenMemHandle_v2), 0x2AF8, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 1022, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":1024
 *         cuGetProcAddress('cuIpcOpenMemHandle', &__cuIpcOpenMemHandle_v2, 11000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuIpcCloseMemHandle
 *         cuGetProcAddress('cuIpcCloseMemHandle', &__cuIpcCloseMemHandle, 4010, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuMemHostRegister_v2
 *         cuGetProcAddress('cuMemHostRegister', &__cuMemHostRegister_v2, 6050, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuIpcCloseMemHandle"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuIpcCloseMemHandle), 0xFAA, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 1024, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":1026
 *         cuGetProcAddress('cuIpcCloseMemHandle', &__cuIpcCloseMemHandle, 4010, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuMemHostRegister_v2
 *         cuGetProcAddress('cuMemHostRegister', &__cuMemHostRegister_v2, 6050, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuMemHostUnregister
 *         cuGetProcAddress('cuMemHostUnregister', &__cuMemHostUnregister, 4000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuMemHostRegister"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuMemHostRegister_v2), 0x17A2, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 1026, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":1028
 *         cuGetProcAddress('cuMemHostRegister', &__cuMemHostRegister_v2, 6050, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuMemHostUnregister
 *         cuGetProcAddress('cuMemHostUnregister', &__cuMemHostUnregister, 4000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuArrayCreate_v2
 *         cuGetProcAddress('cuArrayCreate', &__cuArrayCreate_v2, 3020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuMemHostUnregister"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuMemHostUnregister), 0xFA0, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 1028, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":1030
 *         cuGetProcAddress('cuMemHostUnregister', &__cuMemHostUnregister, 4000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuArrayCreate_v2
 *         cuGetProcAddress('cuArrayCreate', &__cuArrayCreate_v2, 3020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuArrayGetDescriptor_v2
 *         cuGetProcAddress('cuArrayGetDescriptor', &__cuArrayGetDescriptor_v2, 3020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuArrayCreate"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuArrayCreate_v2), 0xBCC, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 1030, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":1032
 *         cuGetProcAddress('cuArrayCreate', &__cuArrayCreate_v2, 3020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuArrayGetDescriptor_v2
 *         cuGetProcAddress('cuArrayGetDescriptor', &__cuArrayGetDescriptor_v2, 3020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuArrayGetSparseProperties
 *         cuGetProcAddress('cuArrayGetSparseProperties', &__cuArrayGetSparseProperties, 11010, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuArrayGetDescriptor"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuArrayGetDescriptor_v2), 0xBCC, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 1032, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":1034
 *         cuGetProcAddress('cuArrayGetDescriptor', &__cuArrayGetDescriptor_v2, 3020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuArrayGetSparseProperties
 *         cuGetProcAddress('cuArrayGetSparseProperties', &__cuArrayGetSparseProperties, 11010, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuMipmappedArrayGetSparseProperties
 *         cuGetProcAddress('cuMipmappedArrayGetSparseProperties', &__cuMipmappedArrayGetSparseProperties, 11010, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuArrayGetSparseProperties"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuArrayGetSparseProperties), 0x2B02, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 1034, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":1036
 *         cuGetProcAddress('cuArrayGetSparseProperties', &__cuArrayGetSparseProperties, 11010, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuMipmappedArrayGetSparseProperties
 *         cuGetProcAddress('cuMipmappedArrayGetSparseProperties', &__cuMipmappedArrayGetSparseProperties, 11010, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuArrayGetMemoryRequirements
 *         cuGetProcAddress('cuArrayGetMemoryRequirements', &__cuArrayGetMemoryRequirements, 11060, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuMipmappedArrayGetSparseProperties"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuMipmappedArrayGetSparseProperties), 0x2B02, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 1036, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":1038
 *         cuGetProcAddress('cuMipmappedArrayGetSparseProperties', &__cuMipmappedArrayGetSparseProperties, 11010, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuArrayGetMemoryRequirements
 *         cuGetProcAddress('cuArrayGetMemoryRequirements', &__cuArrayGetMemoryRequirements, 11060, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuMipmappedArrayGetMemoryRequirements
 *         cuGetProcAddress('cuMipmappedArrayGetMemoryRequirements', &__cuMipmappedArrayGetMemoryRequirements, 11060, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuArrayGetMemoryRequirements"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuArrayGetMemoryRequirements), 0x2B34, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 1038, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":1040
 *         cuGetProcAddress('cuArrayGetMemoryRequirements', &__cuArrayGetMemoryRequirements, 11060, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuMipmappedArrayGetMemoryRequirements
 *         cuGetProcAddress('cuMipmappedArrayGetMemoryRequirements', &__cuMipmappedArrayGetMemoryRequirements, 11060, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuArrayGetPlane
 *         cuGetProcAddress('cuArrayGetPlane', &__cuArrayGetPlane, 11020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuMipmappedArrayGetMemoryRequirements"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuMipmappedArrayGetMemoryRequirements), 0x2B34, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 1040, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":1042
 *         cuGetProcAddress('cuMipmappedArrayGetMemoryRequirements', &__cuMipmappedArrayGetMemoryRequirements, 11060, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuArrayGetPlane
 *         cuGetProcAddress('cuArrayGetPlane', &__cuArrayGetPlane, 11020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuArrayDestroy
 *         cuGetProcAddress('cuArrayDestroy', &__cuArrayDestroy, 2000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuArrayGetPlane"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuArrayGetPlane), 0x2B0C, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 1042, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":1044
 *         cuGetProcAddress('cuArrayGetPlane', &__cuArrayGetPlane, 11020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuArrayDestroy
 *         cuGetProcAddress('cuArrayDestroy', &__cuArrayDestroy, 2000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuArray3DCreate_v2
 *         cuGetProcAddress('cuArray3DCreate', &__cuArray3DCreate_v2, 3020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuArrayDestroy"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuArrayDestroy), 0x7D0, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 1044, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":1046
 *         cuGetProcAddress('cuArrayDestroy', &__cuArrayDestroy, 2000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuArray3DCreate_v2
 *         cuGetProcAddress('cuArray3DCreate', &__cuArray3DCreate_v2, 3020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuArray3DGetDescriptor_v2
 *         cuGetProcAddress('cuArray3DGetDescriptor', &__cuArray3DGetDescriptor_v2, 3020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuArray3DCreate"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuArray3DCreate_v2), 0xBCC, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 1046, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":1048
 *         cuGetProcAddress('cuArray3DCreate', &__cuArray3DCreate_v2, 3020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuArray3DGetDescriptor_v2
 *         cuGetProcAddress('cuArray3DGetDescriptor', &__cuArray3DGetDescriptor_v2, 3020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuMipmappedArrayCreate
 *         cuGetProcAddress('cuMipmappedArrayCreate', &__cuMipmappedArrayCreate, 5000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuArray3DGetDescriptor"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuArray3DGetDescriptor_v2), 0xBCC, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 1048, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":1050
 *         cuGetProcAddress('cuArray3DGetDescriptor', &__cuArray3DGetDescriptor_v2, 3020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuMipmappedArrayCreate
 *         cuGetProcAddress('cuMipmappedArrayCreate', &__cuMipmappedArrayCreate, 5000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuMipmappedArrayGetLevel
 *         cuGetProcAddress('cuMipmappedArrayGetLevel', &__cuMipmappedArrayGetLevel, 5000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuMipmappedArrayCreate"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuMipmappedArrayCreate), 0x1388, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 1050, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":1052
 *         cuGetProcAddress('cuMipmappedArrayCreate', &__cuMipmappedArrayCreate, 5000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuMipmappedArrayGetLevel
 *         cuGetProcAddress('cuMipmappedArrayGetLevel', &__cuMipmappedArrayGetLevel, 5000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuMipmappedArrayDestroy
 *         cuGetProcAddress('cuMipmappedArrayDestroy', &__cuMipmappedArrayDestroy, 5000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuMipmappedArrayGetLevel"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuMipmappedArrayGetLevel), 0x1388, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 1052, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":1054
 *         cuGetProcAddress('cuMipmappedArrayGetLevel', &__cuMipmappedArrayGetLevel, 5000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuMipmappedArrayDestroy
 *         cuGetProcAddress('cuMipmappedArrayDestroy', &__cuMipmappedArrayDestroy, 5000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuMemGetHandleForAddressRange
 *         cuGetProcAddress('cuMemGetHandleForAddressRange', &__cuMemGetHandleForAddressRange, 11070, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuMipmappedArrayDestroy"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuMipmappedArrayDestroy), 0x1388, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 1054, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":1056
 *         cuGetProcAddress('cuMipmappedArrayDestroy', &__cuMipmappedArrayDestroy, 5000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuMemGetHandleForAddressRange
 *         cuGetProcAddress('cuMemGetHandleForAddressRange', &__cuMemGetHandleForAddressRange, 11070, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuMemAddressReserve
 *         cuGetProcAddress('cuMemAddressReserve', &__cuMemAddressReserve, 10020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuMemGetHandleForAddressRange"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuMemGetHandleForAddressRange), 0x2B3E, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 1056, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":1058
 *         cuGetProcAddress('cuMemGetHandleForAddressRange', &__cuMemGetHandleForAddressRange, 11070, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuMemAddressReserve
 *         cuGetProcAddress('cuMemAddressReserve', &__cuMemAddressReserve, 10020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuMemAddressFree
 *         cuGetProcAddress('cuMemAddressFree', &__cuMemAddressFree, 10020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuMemAddressReserve"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuMemAddressReserve), 0x2724, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 1058, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":1060
 *         cuGetProcAddress('cuMemAddressReserve', &__cuMemAddressReserve, 10020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuMemAddressFree
 *         cuGetProcAddress('cuMemAddressFree', &__cuMemAddressFree, 10020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuMemCreate
 *         cuGetProcAddress('cuMemCreate', &__cuMemCreate, 10020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuMemAddressFree"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuMemAddressFree), 0x2724, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 1060, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":1062
 *         cuGetProcAddress('cuMemAddressFree', &__cuMemAddressFree, 10020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuMemCreate
 *         cuGetProcAddress('cuMemCreate', &__cuMemCreate, 10020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuMemRelease
 *         cuGetProcAddress('cuMemRelease', &__cuMemRelease, 10020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuMemCreate"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuMemCreate), 0x2724, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 1062, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":1064
 *         cuGetProcAddress('cuMemCreate', &__cuMemCreate, 10020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuMemRelease
 *         cuGetProcAddress('cuMemRelease', &__cuMemRelease, 10020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuMemMap
 *         cuGetProcAddress('cuMemMap', &__cuMemMap, 10020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuMemRelease"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuMemRelease), 0x2724, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 1064, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":1066
 *         cuGetProcAddress('cuMemRelease', &__cuMemRelease, 10020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuMemMap
 *         cuGetProcAddress('cuMemMap', &__cuMemMap, 10020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuMemUnmap
 *         cuGetProcAddress('cuMemUnmap', &__cuMemUnmap, 10020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuMemMap"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuMemMap), 0x2724, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 1066, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":1068
 *         cuGetProcAddress('cuMemMap', &__cuMemMap, 10020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuMemUnmap
 *         cuGetProcAddress('cuMemUnmap', &__cuMemUnmap, 10020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuMemSetAccess
 *         cuGetProcAddress('cuMemSetAccess', &__cuMemSetAccess, 10020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuMemUnmap"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuMemUnmap), 0x2724, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 1068, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":1070
 *         cuGetProcAddress('cuMemUnmap', &__cuMemUnmap, 10020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuMemSetAccess
 *         cuGetProcAddress('cuMemSetAccess', &__cuMemSetAccess, 10020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuMemGetAccess
 *         cuGetProcAddress('cuMemGetAccess', &__cuMemGetAccess, 10020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuMemSetAccess"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuMemSetAccess), 0x2724, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 1070, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":1072
 *         cuGetProcAddress('cuMemSetAccess', &__cuMemSetAccess, 10020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuMemGetAccess
 *         cuGetProcAddress('cuMemGetAccess', &__cuMemGetAccess, 10020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuMemExportToShareableHandle
 *         cuGetProcAddress('cuMemExportToShareableHandle', &__cuMemExportToShareableHandle, 10020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuMemGetAccess"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuMemGetAccess), 0x2724, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 1072, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":1074
 *         cuGetProcAddress('cuMemGetAccess', &__cuMemGetAccess, 10020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuMemExportToShareableHandle
 *         cuGetProcAddress('cuMemExportToShareableHandle', &__cuMemExportToShareableHandle, 10020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuMemImportFromShareableHandle
 *         cuGetProcAddress('cuMemImportFromShareableHandle', &__cuMemImportFromShareableHandle, 10020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuMemExportToShareableHandle"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuMemExportToShareableHandle), 0x2724, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 1074, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":1076
 *         cuGetProcAddress('cuMemExportToShareableHandle', &__cuMemExportToShareableHandle, 10020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuMemImportFromShareableHandle
 *         cuGetProcAddress('cuMemImportFromShareableHandle', &__cuMemImportFromShareableHandle, 10020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuMemGetAllocationGranularity
 *         cuGetProcAddress('cuMemGetAllocationGranularity', &__cuMemGetAllocationGranularity, 10020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuMemImportFromShareableHandle"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuMemImportFromShareableHandle), 0x2724, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 1076, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":1078
 *         cuGetProcAddress('cuMemImportFromShareableHandle', &__cuMemImportFromShareableHandle, 10020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuMemGetAllocationGranularity
 *         cuGetProcAddress('cuMemGetAllocationGranularity', &__cuMemGetAllocationGranularity, 10020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuMemGetAllocationPropertiesFromHandle
 *         cuGetProcAddress('cuMemGetAllocationPropertiesFromHandle', &__cuMemGetAllocationPropertiesFromHandle, 10020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuMemGetAllocationGranularity"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuMemGetAllocationGranularity), 0x2724, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 1078, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":1080
 *         cuGetProcAddress('cuMemGetAllocationGranularity', &__cuMemGetAllocationGranularity, 10020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuMemGetAllocationPropertiesFromHandle
 *         cuGetProcAddress('cuMemGetAllocationPropertiesFromHandle', &__cuMemGetAllocationPropertiesFromHandle, 10020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuMemRetainAllocationHandle
 *         cuGetProcAddress('cuMemRetainAllocationHandle', &__cuMemRetainAllocationHandle, 11000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuMemGetAllocationPropertiesFromHandle"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuMemGetAllocationPropertiesFromHandle), 0x2724, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 1080, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":1082
 *         cuGetProcAddress('cuMemGetAllocationPropertiesFromHandle', &__cuMemGetAllocationPropertiesFromHandle, 10020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuMemRetainAllocationHandle
 *         cuGetProcAddress('cuMemRetainAllocationHandle', &__cuMemRetainAllocationHandle, 11000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuMemPoolTrimTo
 *         cuGetProcAddress('cuMemPoolTrimTo', &__cuMemPoolTrimTo, 11020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuMemRetainAllocationHandle"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuMemRetainAllocationHandle), 0x2AF8, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 1082, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":1084
 *         cuGetProcAddress('cuMemRetainAllocationHandle', &__cuMemRetainAllocationHandle, 11000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuMemPoolTrimTo
 *         cuGetProcAddress('cuMemPoolTrimTo', &__cuMemPoolTrimTo, 11020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuMemPoolSetAttribute
 *         cuGetProcAddress('cuMemPoolSetAttribute', &__cuMemPoolSetAttribute, 11020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuMemPoolTrimTo"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuMemPoolTrimTo), 0x2B0C, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 1084, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":1086
 *         cuGetProcAddress('cuMemPoolTrimTo', &__cuMemPoolTrimTo, 11020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuMemPoolSetAttribute
 *         cuGetProcAddress('cuMemPoolSetAttribute', &__cuMemPoolSetAttribute, 11020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuMemPoolGetAttribute
 *         cuGetProcAddress('cuMemPoolGetAttribute', &__cuMemPoolGetAttribute, 11020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuMemPoolSetAttribute"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuMemPoolSetAttribute), 0x2B0C, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 1086, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":1088
 *         cuGetProcAddress('cuMemPoolSetAttribute', &__cuMemPoolSetAttribute, 11020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuMemPoolGetAttribute
 *         cuGetProcAddress('cuMemPoolGetAttribute', &__cuMemPoolGetAttribute, 11020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuMemPoolSetAccess
 *         cuGetProcAddress('cuMemPoolSetAccess', &__cuMemPoolSetAccess, 11020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuMemPoolGetAttribute"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuMemPoolGetAttribute), 0x2B0C, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 1088, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":1090
 *         cuGetProcAddress('cuMemPoolGetAttribute', &__cuMemPoolGetAttribute, 11020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuMemPoolSetAccess
 *         cuGetProcAddress('cuMemPoolSetAccess', &__cuMemPoolSetAccess, 11020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuMemPoolGetAccess
 *         cuGetProcAddress('cuMemPoolGetAccess', &__cuMemPoolGetAccess, 11020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuMemPoolSetAccess"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuMemPoolSetAccess), 0x2B0C, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 1090, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":1092
 *         cuGetProcAddress('cuMemPoolSetAccess', &__cuMemPoolSetAccess, 11020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuMemPoolGetAccess
 *         cuGetProcAddress('cuMemPoolGetAccess', &__cuMemPoolGetAccess, 11020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuMemPoolCreate
 *         cuGetProcAddress('cuMemPoolCreate', &__cuMemPoolCreate, 11020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuMemPoolGetAccess"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuMemPoolGetAccess), 0x2B0C, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 1092, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":1094
 *         cuGetProcAddress('cuMemPoolGetAccess', &__cuMemPoolGetAccess, 11020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuMemPoolCreate
 *         cuGetProcAddress('cuMemPoolCreate', &__cuMemPoolCreate, 11020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuMemPoolDestroy
 *         cuGetProcAddress('cuMemPoolDestroy', &__cuMemPoolDestroy, 11020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuMemPoolCreate"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuMemPoolCreate), 0x2B0C, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 1094, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":1096
 *         cuGetProcAddress('cuMemPoolCreate', &__cuMemPoolCreate, 11020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuMemPoolDestroy
 *         cuGetProcAddress('cuMemPoolDestroy', &__cuMemPoolDestroy, 11020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuMemPoolExportToShareableHandle
 *         cuGetProcAddress('cuMemPoolExportToShareableHandle', &__cuMemPoolExportToShareableHandle, 11020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuMemPoolDestroy"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuMemPoolDestroy), 0x2B0C, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 1096, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":1098
 *         cuGetProcAddress('cuMemPoolDestroy', &__cuMemPoolDestroy, 11020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuMemPoolExportToShareableHandle
 *         cuGetProcAddress('cuMemPoolExportToShareableHandle', &__cuMemPoolExportToShareableHandle, 11020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuMemPoolImportFromShareableHandle
 *         cuGetProcAddress('cuMemPoolImportFromShareableHandle', &__cuMemPoolImportFromShareableHandle, 11020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuMemPoolExportToShareableHandle"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuMemPoolExportToShareableHandle), 0x2B0C, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 1098, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":1100
 *         cuGetProcAddress('cuMemPoolExportToShareableHandle', &__cuMemPoolExportToShareableHandle, 11020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuMemPoolImportFromShareableHandle
 *         cuGetProcAddress('cuMemPoolImportFromShareableHandle', &__cuMemPoolImportFromShareableHandle, 11020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuMemPoolExportPointer
 *         cuGetProcAddress('cuMemPoolExportPointer', &__cuMemPoolExportPointer, 11020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuMemPoolImportFromShareableHandle"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuMemPoolImportFromShareableHandle), 0x2B0C, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 1100, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":1102
 *         cuGetProcAddress('cuMemPoolImportFromShareableHandle', &__cuMemPoolImportFromShareableHandle, 11020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuMemPoolExportPointer
 *         cuGetProcAddress('cuMemPoolExportPointer', &__cuMemPoolExportPointer, 11020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuMemPoolImportPointer
 *         cuGetProcAddress('cuMemPoolImportPointer', &__cuMemPoolImportPointer, 11020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuMemPoolExportPointer"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuMemPoolExportPointer), 0x2B0C, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 1102, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":1104
 *         cuGetProcAddress('cuMemPoolExportPointer', &__cuMemPoolExportPointer, 11020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuMemPoolImportPointer
 *         cuGetProcAddress('cuMemPoolImportPointer', &__cuMemPoolImportPointer, 11020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuMulticastCreate
 *         cuGetProcAddress('cuMulticastCreate', &__cuMulticastCreate, 12010, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuMemPoolImportPointer"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuMemPoolImportPointer), 0x2B0C, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 1104, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":1106
 *         cuGetProcAddress('cuMemPoolImportPointer', &__cuMemPoolImportPointer, 11020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuMulticastCreate
 *         cuGetProcAddress('cuMulticastCreate', &__cuMulticastCreate, 12010, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuMulticastAddDevice
 *         cuGetProcAddress('cuMulticastAddDevice', &__cuMulticastAddDevice, 12010, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuMulticastCreate"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuMulticastCreate), 0x2EEA, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 1106, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":1108
 *         cuGetProcAddress('cuMulticastCreate', &__cuMulticastCreate, 12010, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuMulticastAddDevice
 *         cuGetProcAddress('cuMulticastAddDevice', &__cuMulticastAddDevice, 12010, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuMulticastBindMem
 *         cuGetProcAddress('cuMulticastBindMem', &__cuMulticastBindMem, 12010, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuMulticastAddDevice"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuMulticastAddDevice), 0x2EEA, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 1108, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":1110
 *         cuGetProcAddress('cuMulticastAddDevice', &__cuMulticastAddDevice, 12010, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuMulticastBindMem
 *         cuGetProcAddress('cuMulticastBindMem', &__cuMulticastBindMem, 12010, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuMulticastBindAddr
 *         cuGetProcAddress('cuMulticastBindAddr', &__cuMulticastBindAddr, 12010, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuMulticastBindMem"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuMulticastBindMem), 0x2EEA, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 1110, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":1112
 *         cuGetProcAddress('cuMulticastBindMem', &__cuMulticastBindMem, 12010, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuMulticastBindAddr
 *         cuGetProcAddress('cuMulticastBindAddr', &__cuMulticastBindAddr, 12010, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuMulticastUnbind
 *         cuGetProcAddress('cuMulticastUnbind', &__cuMulticastUnbind, 12010, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuMulticastBindAddr"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuMulticastBindAddr), 0x2EEA, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 1112, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":1114
 *         cuGetProcAddress('cuMulticastBindAddr', &__cuMulticastBindAddr, 12010, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuMulticastUnbind
 *         cuGetProcAddress('cuMulticastUnbind', &__cuMulticastUnbind, 12010, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuMulticastGetGranularity
 *         cuGetProcAddress('cuMulticastGetGranularity', &__cuMulticastGetGranularity, 12010, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuMulticastUnbind"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuMulticastUnbind), 0x2EEA, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 1114, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":1116
 *         cuGetProcAddress('cuMulticastUnbind', &__cuMulticastUnbind, 12010, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuMulticastGetGranularity
 *         cuGetProcAddress('cuMulticastGetGranularity', &__cuMulticastGetGranularity, 12010, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuPointerGetAttribute
 *         cuGetProcAddress('cuPointerGetAttribute', &__cuPointerGetAttribute, 4000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuMulticastGetGranularity"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuMulticastGetGranularity), 0x2EEA, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 1116, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":1118
 *         cuGetProcAddress('cuMulticastGetGranularity', &__cuMulticastGetGranularity, 12010, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuPointerGetAttribute
 *         cuGetProcAddress('cuPointerGetAttribute', &__cuPointerGetAttribute, 4000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuMemAdvise
 *         cuGetProcAddress('cuMemAdvise', &__cuMemAdvise, 8000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuPointerGetAttribute"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuPointerGetAttribute), 0xFA0, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 1118, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":1120
 *         cuGetProcAddress('cuPointerGetAttribute', &__cuPointerGetAttribute, 4000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuMemAdvise
 *         cuGetProcAddress('cuMemAdvise', &__cuMemAdvise, 8000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuMemAdvise_v2
 *         cuGetProcAddress('cuMemAdvise', &__cuMemAdvise_v2, 12020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuMemAdvise"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuMemAdvise), 0x1F40, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 1120, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":1122
 *         cuGetProcAddress('cuMemAdvise', &__cuMemAdvise, 8000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuMemAdvise_v2
 *         cuGetProcAddress('cuMemAdvise', &__cuMemAdvise_v2, 12020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuMemRangeGetAttribute
 *         cuGetProcAddress('cuMemRangeGetAttribute', &__cuMemRangeGetAttribute, 8000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuMemAdvise"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuMemAdvise_v2), 0x2EF4, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 1122, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":1124
 *         cuGetProcAddress('cuMemAdvise', &__cuMemAdvise_v2, 12020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuMemRangeGetAttribute
 *         cuGetProcAddress('cuMemRangeGetAttribute', &__cuMemRangeGetAttribute, 8000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuMemRangeGetAttributes
 *         cuGetProcAddress('cuMemRangeGetAttributes', &__cuMemRangeGetAttributes, 8000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuMemRangeGetAttribute"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuMemRangeGetAttribute), 0x1F40, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 1124, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":1126
 *         cuGetProcAddress('cuMemRangeGetAttribute', &__cuMemRangeGetAttribute, 8000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuMemRangeGetAttributes
 *         cuGetProcAddress('cuMemRangeGetAttributes', &__cuMemRangeGetAttributes, 8000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuPointerSetAttribute
 *         cuGetProcAddress('cuPointerSetAttribute', &__cuPointerSetAttribute, 6000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuMemRangeGetAttributes"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuMemRangeGetAttributes), 0x1F40, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 1126, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":1128
 *         cuGetProcAddress('cuMemRangeGetAttributes', &__cuMemRangeGetAttributes, 8000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuPointerSetAttribute
 *         cuGetProcAddress('cuPointerSetAttribute', &__cuPointerSetAttribute, 6000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuPointerGetAttributes
 *         cuGetProcAddress('cuPointerGetAttributes', &__cuPointerGetAttributes, 7000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuPointerSetAttribute"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuPointerSetAttribute), 0x1770, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 1128, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":1130
 *         cuGetProcAddress('cuPointerSetAttribute', &__cuPointerSetAttribute, 6000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuPointerGetAttributes
 *         cuGetProcAddress('cuPointerGetAttributes', &__cuPointerGetAttributes, 7000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuStreamCreate
 *         cuGetProcAddress('cuStreamCreate', &__cuStreamCreate, 2000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuPointerGetAttributes"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuPointerGetAttributes), 0x1B58, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 1130, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":1132
 *         cuGetProcAddress('cuPointerGetAttributes', &__cuPointerGetAttributes, 7000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuStreamCreate
 *         cuGetProcAddress('cuStreamCreate', &__cuStreamCreate, 2000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuStreamCreateWithPriority
 *         cuGetProcAddress('cuStreamCreateWithPriority', &__cuStreamCreateWithPriority, 5050, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuStreamCreate"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuStreamCreate), 0x7D0, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 1132, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":1134
 *         cuGetProcAddress('cuStreamCreate', &__cuStreamCreate, 2000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuStreamCreateWithPriority
 *         cuGetProcAddress('cuStreamCreateWithPriority', &__cuStreamCreateWithPriority, 5050, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuThreadExchangeStreamCaptureMode
 *         cuGetProcAddress('cuThreadExchangeStreamCaptureMode', &__cuThreadExchangeStreamCaptureMode, 10010, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuStreamCreateWithPriority"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuStreamCreateWithPriority), 0x13BA, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 1134, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":1136
 *         cuGetProcAddress('cuStreamCreateWithPriority', &__cuStreamCreateWithPriority, 5050, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuThreadExchangeStreamCaptureMode
 *         cuGetProcAddress('cuThreadExchangeStreamCaptureMode', &__cuThreadExchangeStreamCaptureMode, 10010, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuStreamDestroy_v2
 *         cuGetProcAddress('cuStreamDestroy', &__cuStreamDestroy_v2, 4000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuThreadExchangeStreamCaptureMode"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuThreadExchangeStreamCaptureMode), 0x271A, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 1136, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":1138
 *         cuGetProcAddress('cuThreadExchangeStreamCaptureMode', &__cuThreadExchangeStreamCaptureMode, 10010, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuStreamDestroy_v2
 *         cuGetProcAddress('cuStreamDestroy', &__cuStreamDestroy_v2, 4000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuEventCreate
 *         cuGetProcAddress('cuEventCreate', &__cuEventCreate, 2000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuStreamDestroy"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuStreamDestroy_v2), 0xFA0, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 1138, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":1140
 *         cuGetProcAddress('cuStreamDestroy', &__cuStreamDestroy_v2, 4000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuEventCreate
 *         cuGetProcAddress('cuEventCreate', &__cuEventCreate, 2000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuEventQuery
 *         cuGetProcAddress('cuEventQuery', &__cuEventQuery, 2000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuEventCreate"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuEventCreate), 0x7D0, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 1140, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":1142
 *         cuGetProcAddress('cuEventCreate', &__cuEventCreate, 2000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuEventQuery
 *         cuGetProcAddress('cuEventQuery', &__cuEventQuery, 2000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuEventSynchronize
 *         cuGetProcAddress('cuEventSynchronize', &__cuEventSynchronize, 2000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuEventQuery"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuEventQuery), 0x7D0, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 1142, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":1144
 *         cuGetProcAddress('cuEventQuery', &__cuEventQuery, 2000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuEventSynchronize
 *         cuGetProcAddress('cuEventSynchronize', &__cuEventSynchronize, 2000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuEventDestroy_v2
 *         cuGetProcAddress('cuEventDestroy', &__cuEventDestroy_v2, 4000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuEventSynchronize"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuEventSynchronize), 0x7D0, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 1144, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":1146
 *         cuGetProcAddress('cuEventSynchronize', &__cuEventSynchronize, 2000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuEventDestroy_v2
 *         cuGetProcAddress('cuEventDestroy', &__cuEventDestroy_v2, 4000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuEventElapsedTime
 *         cuGetProcAddress('cuEventElapsedTime', &__cuEventElapsedTime, 2000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuEventDestroy"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuEventDestroy_v2), 0xFA0, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 1146, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":1148
 *         cuGetProcAddress('cuEventDestroy', &__cuEventDestroy_v2, 4000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuEventElapsedTime
 *         cuGetProcAddress('cuEventElapsedTime', &__cuEventElapsedTime, 2000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuImportExternalMemory
 *         cuGetProcAddress('cuImportExternalMemory', &__cuImportExternalMemory, 10000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuEventElapsedTime"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuEventElapsedTime), 0x7D0, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 1148, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":1150
 *         cuGetProcAddress('cuEventElapsedTime', &__cuEventElapsedTime, 2000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuImportExternalMemory
 *         cuGetProcAddress('cuImportExternalMemory', &__cuImportExternalMemory, 10000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuExternalMemoryGetMappedBuffer
 *         cuGetProcAddress('cuExternalMemoryGetMappedBuffer', &__cuExternalMemoryGetMappedBuffer, 10000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuImportExternalMemory"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuImportExternalMemory), 0x2710, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 1150, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":1152
 *         cuGetProcAddress('cuImportExternalMemory', &__cuImportExternalMemory, 10000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuExternalMemoryGetMappedBuffer
 *         cuGetProcAddress('cuExternalMemoryGetMappedBuffer', &__cuExternalMemoryGetMappedBuffer, 10000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuExternalMemoryGetMappedMipmappedArray
 *         cuGetProcAddress('cuExternalMemoryGetMappedMipmappedArray', &__cuExternalMemoryGetMappedMipmappedArray, 10000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuExternalMemoryGetMappedBuffer"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuExternalMemoryGetMappedBuffer), 0x2710, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 1152, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":1154
 *         cuGetProcAddress('cuExternalMemoryGetMappedBuffer', &__cuExternalMemoryGetMappedBuffer, 10000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuExternalMemoryGetMappedMipmappedArray
 *         cuGetProcAddress('cuExternalMemoryGetMappedMipmappedArray', &__cuExternalMemoryGetMappedMipmappedArray, 10000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuDestroyExternalMemory
 *         cuGetProcAddress('cuDestroyExternalMemory', &__cuDestroyExternalMemory, 10000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuExternalMemoryGetMappedMipmappedArray"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuExternalMemoryGetMappedMipmappedArray), 0x2710, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 1154, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":1156
 *         cuGetProcAddress('cuExternalMemoryGetMappedMipmappedArray', &__cuExternalMemoryGetMappedMipmappedArray, 10000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuDestroyExternalMemory
 *         cuGetProcAddress('cuDestroyExternalMemory', &__cuDestroyExternalMemory, 10000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuImportExternalSemaphore
 *         cuGetProcAddress('cuImportExternalSemaphore', &__cuImportExternalSemaphore, 10000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuDestroyExternalMemory"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuDestroyExternalMemory), 0x2710, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 1156, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":1158
 *         cuGetProcAddress('cuDestroyExternalMemory', &__cuDestroyExternalMemory, 10000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuImportExternalSemaphore
 *         cuGetProcAddress('cuImportExternalSemaphore', &__cuImportExternalSemaphore, 10000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuDestroyExternalSemaphore
 *         cuGetProcAddress('cuDestroyExternalSemaphore', &__cuDestroyExternalSemaphore, 10000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuImportExternalSemaphore"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuImportExternalSemaphore), 0x2710, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 1158, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":1160
 *         cuGetProcAddress('cuImportExternalSemaphore', &__cuImportExternalSemaphore, 10000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuDestroyExternalSemaphore
 *         cuGetProcAddress('cuDestroyExternalSemaphore', &__cuDestroyExternalSemaphore, 10000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuFuncGetAttribute
 *         cuGetProcAddress('cuFuncGetAttribute', &__cuFuncGetAttribute, 2020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuDestroyExternalSemaphore"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuDestroyExternalSemaphore), 0x2710, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 1160, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":1162
 *         cuGetProcAddress('cuDestroyExternalSemaphore', &__cuDestroyExternalSemaphore, 10000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuFuncGetAttribute
 *         cuGetProcAddress('cuFuncGetAttribute', &__cuFuncGetAttribute, 2020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuFuncSetAttribute
 *         cuGetProcAddress('cuFuncSetAttribute', &__cuFuncSetAttribute, 9000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuFuncGetAttribute"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuFuncGetAttribute), 0x7E4, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 1162, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":1164
 *         cuGetProcAddress('cuFuncGetAttribute', &__cuFuncGetAttribute, 2020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuFuncSetAttribute
 *         cuGetProcAddress('cuFuncSetAttribute', &__cuFuncSetAttribute, 9000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuFuncSetCacheConfig
 *         cuGetProcAddress('cuFuncSetCacheConfig', &__cuFuncSetCacheConfig, 3000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuFuncSetAttribute"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuFuncSetAttribute), 0x2328, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 1164, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":1166
 *         cuGetProcAddress('cuFuncSetAttribute', &__cuFuncSetAttribute, 9000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuFuncSetCacheConfig
 *         cuGetProcAddress('cuFuncSetCacheConfig', &__cuFuncSetCacheConfig, 3000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuFuncGetModule
 *         cuGetProcAddress('cuFuncGetModule', &__cuFuncGetModule, 11000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuFuncSetCacheConfig"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuFuncSetCacheConfig), 0xBB8, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 1166, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":1168
 *         cuGetProcAddress('cuFuncSetCacheConfig', &__cuFuncSetCacheConfig, 3000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuFuncGetModule
 *         cuGetProcAddress('cuFuncGetModule', &__cuFuncGetModule, 11000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuFuncGetName
 *         cuGetProcAddress('cuFuncGetName', &__cuFuncGetName, 12030, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuFuncGetModule"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuFuncGetModule), 0x2AF8, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 1168, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":1170
 *         cuGetProcAddress('cuFuncGetModule', &__cuFuncGetModule, 11000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuFuncGetName
 *         cuGetProcAddress('cuFuncGetName', &__cuFuncGetName, 12030, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuFuncGetParamInfo
 *         cuGetProcAddress('cuFuncGetParamInfo', &__cuFuncGetParamInfo, 12040, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuFuncGetName"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuFuncGetName), 0x2EFE, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 1170, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":1172
 *         cuGetProcAddress('cuFuncGetName', &__cuFuncGetName, 12030, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuFuncGetParamInfo
 *         cuGetProcAddress('cuFuncGetParamInfo', &__cuFuncGetParamInfo, 12040, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuFuncIsLoaded
 *         cuGetProcAddress('cuFuncIsLoaded', &__cuFuncIsLoaded, 12040, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuFuncGetParamInfo"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuFuncGetParamInfo), 0x2F08, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 1172, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":1174
 *         cuGetProcAddress('cuFuncGetParamInfo', &__cuFuncGetParamInfo, 12040, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuFuncIsLoaded
 *         cuGetProcAddress('cuFuncIsLoaded', &__cuFuncIsLoaded, 12040, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuFuncLoad
 *         cuGetProcAddress('cuFuncLoad', &__cuFuncLoad, 12040, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuFuncIsLoaded"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuFuncIsLoaded), 0x2F08, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 1174, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":1176
 *         cuGetProcAddress('cuFuncIsLoaded', &__cuFuncIsLoaded, 12040, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuFuncLoad
 *         cuGetProcAddress('cuFuncLoad', &__cuFuncLoad, 12040, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuLaunchCooperativeKernelMultiDevice
 *         cuGetProcAddress('cuLaunchCooperativeKernelMultiDevice', &__cuLaunchCooperativeKernelMultiDevice, 9000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuFuncLoad"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuFuncLoad), 0x2F08, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 1176, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":1178
 *         cuGetProcAddress('cuFuncLoad', &__cuFuncLoad, 12040, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuLaunchCooperativeKernelMultiDevice
 *         cuGetProcAddress('cuLaunchCooperativeKernelMultiDevice', &__cuLaunchCooperativeKernelMultiDevice, 9000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuFuncSetBlockShape
 *         cuGetProcAddress('cuFuncSetBlockShape', &__cuFuncSetBlockShape, 2000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuLaunchCooperativeKernelMultiDevice"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuLaunchCooperativeKernelMultiDevice), 0x2328, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 1178, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":1180
 *         cuGetProcAddress('cuLaunchCooperativeKernelMultiDevice', &__cuLaunchCooperativeKernelMultiDevice, 9000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuFuncSetBlockShape
 *         cuGetProcAddress('cuFuncSetBlockShape', &__cuFuncSetBlockShape, 2000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuFuncSetSharedSize
 *         cuGetProcAddress('cuFuncSetSharedSize', &__cuFuncSetSharedSize, 2000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuFuncSetBlockShape"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuFuncSetBlockShape), 0x7D0, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 1180, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":1182
 *         cuGetProcAddress('cuFuncSetBlockShape', &__cuFuncSetBlockShape, 2000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuFuncSetSharedSize
 *         cuGetProcAddress('cuFuncSetSharedSize', &__cuFuncSetSharedSize, 2000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuParamSetSize
 *         cuGetProcAddress('cuParamSetSize', &__cuParamSetSize, 2000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuFuncSetSharedSize"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuFuncSetSharedSize), 0x7D0, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 1182, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":1184
 *         cuGetProcAddress('cuFuncSetSharedSize', &__cuFuncSetSharedSize, 2000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuParamSetSize
 *         cuGetProcAddress('cuParamSetSize', &__cuParamSetSize, 2000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuParamSeti
 *         cuGetProcAddress('cuParamSeti', &__cuParamSeti, 2000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuParamSetSize"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuParamSetSize), 0x7D0, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 1184, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":1186
 *         cuGetProcAddress('cuParamSetSize', &__cuParamSetSize, 2000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuParamSeti
 *         cuGetProcAddress('cuParamSeti', &__cuParamSeti, 2000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuParamSetf
 *         cuGetProcAddress('cuParamSetf', &__cuParamSetf, 2000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuParamSeti"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuParamSeti), 0x7D0, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 1186, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":1188
 *         cuGetProcAddress('cuParamSeti', &__cuParamSeti, 2000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuParamSetf
 *         cuGetProcAddress('cuParamSetf', &__cuParamSetf, 2000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuParamSetv
 *         cuGetProcAddress('cuParamSetv', &__cuParamSetv, 2000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuParamSetf"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuParamSetf), 0x7D0, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 1188, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":1190
 *         cuGetProcAddress('cuParamSetf', &__cuParamSetf, 2000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuParamSetv
 *         cuGetProcAddress('cuParamSetv', &__cuParamSetv, 2000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuLaunch
 *         cuGetProcAddress('cuLaunch', &__cuLaunch, 2000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuParamSetv"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuParamSetv), 0x7D0, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 1190, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":1192
 *         cuGetProcAddress('cuParamSetv', &__cuParamSetv, 2000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuLaunch
 *         cuGetProcAddress('cuLaunch', &__cuLaunch, 2000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuLaunchGrid
 *         cuGetProcAddress('cuLaunchGrid', &__cuLaunchGrid, 2000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuLaunch"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuLaunch), 0x7D0, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 1192, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":1194
 *         cuGetProcAddress('cuLaunch', &__cuLaunch, 2000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuLaunchGrid
 *         cuGetProcAddress('cuLaunchGrid', &__cuLaunchGrid, 2000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuLaunchGridAsync
 *         cuGetProcAddress('cuLaunchGridAsync', &__cuLaunchGridAsync, 2000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuLaunchGrid"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuLaunchGrid), 0x7D0, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 1194, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":1196
 *         cuGetProcAddress('cuLaunchGrid', &__cuLaunchGrid, 2000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuLaunchGridAsync
 *         cuGetProcAddress('cuLaunchGridAsync', &__cuLaunchGridAsync, 2000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuParamSetTexRef
 *         cuGetProcAddress('cuParamSetTexRef', &__cuParamSetTexRef, 2000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuLaunchGridAsync"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuLaunchGridAsync), 0x7D0, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 1196, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":1198
 *         cuGetProcAddress('cuLaunchGridAsync', &__cuLaunchGridAsync, 2000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuParamSetTexRef
 *         cuGetProcAddress('cuParamSetTexRef', &__cuParamSetTexRef, 2000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuFuncSetSharedMemConfig
 *         cuGetProcAddress('cuFuncSetSharedMemConfig', &__cuFuncSetSharedMemConfig, 4020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuParamSetTexRef"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuParamSetTexRef), 0x7D0, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 1198, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":1200
 *         cuGetProcAddress('cuParamSetTexRef', &__cuParamSetTexRef, 2000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuFuncSetSharedMemConfig
 *         cuGetProcAddress('cuFuncSetSharedMemConfig', &__cuFuncSetSharedMemConfig, 4020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuGraphCreate
 *         cuGetProcAddress('cuGraphCreate', &__cuGraphCreate, 10000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuFuncSetSharedMemConfig"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuFuncSetSharedMemConfig), 0xFB4, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 1200, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":1202
 *         cuGetProcAddress('cuFuncSetSharedMemConfig', &__cuFuncSetSharedMemConfig, 4020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuGraphCreate
 *         cuGetProcAddress('cuGraphCreate', &__cuGraphCreate, 10000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuGraphAddKernelNode_v2
 *         cuGetProcAddress('cuGraphAddKernelNode', &__cuGraphAddKernelNode_v2, 12000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuGraphCreate"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuGraphCreate), 0x2710, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 1202, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":1204
 *         cuGetProcAddress('cuGraphCreate', &__cuGraphCreate, 10000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuGraphAddKernelNode_v2
 *         cuGetProcAddress('cuGraphAddKernelNode', &__cuGraphAddKernelNode_v2, 12000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuGraphKernelNodeGetParams_v2
 *         cuGetProcAddress('cuGraphKernelNodeGetParams', &__cuGraphKernelNodeGetParams_v2, 12000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuGraphAddKernelNode"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuGraphAddKernelNode_v2), 0x2EE0, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 1204, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":1206
 *         cuGetProcAddress('cuGraphAddKernelNode', &__cuGraphAddKernelNode_v2, 12000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuGraphKernelNodeGetParams_v2
 *         cuGetProcAddress('cuGraphKernelNodeGetParams', &__cuGraphKernelNodeGetParams_v2, 12000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuGraphKernelNodeSetParams_v2
 *         cuGetProcAddress('cuGraphKernelNodeSetParams', &__cuGraphKernelNodeSetParams_v2, 12000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuGraphKernelNodeGetParams"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuGraphKernelNodeGetParams_v2), 0x2EE0, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 1206, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":1208
 *         cuGetProcAddress('cuGraphKernelNodeGetParams', &__cuGraphKernelNodeGetParams_v2, 12000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuGraphKernelNodeSetParams_v2
 *         cuGetProcAddress('cuGraphKernelNodeSetParams', &__cuGraphKernelNodeSetParams_v2, 12000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuGraphAddMemcpyNode
 *         cuGetProcAddress('cuGraphAddMemcpyNode', &__cuGraphAddMemcpyNode, 10000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuGraphKernelNodeSetParams"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuGraphKernelNodeSetParams_v2), 0x2EE0, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 1208, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":1210
 *         cuGetProcAddress('cuGraphKernelNodeSetParams', &__cuGraphKernelNodeSetParams_v2, 12000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuGraphAddMemcpyNode
 *         cuGetProcAddress('cuGraphAddMemcpyNode', &__cuGraphAddMemcpyNode, 10000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuGraphMemcpyNodeGetParams
 *         cuGetProcAddress('cuGraphMemcpyNodeGetParams', &__cuGraphMemcpyNodeGetParams, 10000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuGraphAddMemcpyNode"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuGraphAddMemcpyNode), 0x2710, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 1210, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":1212
 *         cuGetProcAddress('cuGraphAddMemcpyNode', &__cuGraphAddMemcpyNode, 10000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuGraphMemcpyNodeGetParams
 *         cuGetProcAddress('cuGraphMemcpyNodeGetParams', &__cuGraphMemcpyNodeGetParams, 10000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuGraphMemcpyNodeSetParams
 *         cuGetProcAddress('cuGraphMemcpyNodeSetParams', &__cuGraphMemcpyNodeSetParams, 10000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuGraphMemcpyNodeGetParams"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuGraphMemcpyNodeGetParams), 0x2710, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 1212, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":1214
 *         cuGetProcAddress('cuGraphMemcpyNodeGetParams', &__cuGraphMemcpyNodeGetParams, 10000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuGraphMemcpyNodeSetParams
 *         cuGetProcAddress('cuGraphMemcpyNodeSetParams', &__cuGraphMemcpyNodeSetParams, 10000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuGraphAddMemsetNode
 *         cuGetProcAddress('cuGraphAddMemsetNode', &__cuGraphAddMemsetNode, 10000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuGraphMemcpyNodeSetParams"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuGraphMemcpyNodeSetParams), 0x2710, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 1214, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":1216
 *         cuGetProcAddress('cuGraphMemcpyNodeSetParams', &__cuGraphMemcpyNodeSetParams, 10000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuGraphAddMemsetNode
 *         cuGetProcAddress('cuGraphAddMemsetNode', &__cuGraphAddMemsetNode, 10000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuGraphMemsetNodeGetParams
 *         cuGetProcAddress('cuGraphMemsetNodeGetParams', &__cuGraphMemsetNodeGetParams, 10000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuGraphAddMemsetNode"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuGraphAddMemsetNode), 0x2710, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 1216, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":1218
 *         cuGetProcAddress('cuGraphAddMemsetNode', &__cuGraphAddMemsetNode, 10000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuGraphMemsetNodeGetParams
 *         cuGetProcAddress('cuGraphMemsetNodeGetParams', &__cuGraphMemsetNodeGetParams, 10000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuGraphMemsetNodeSetParams
 *         cuGetProcAddress('cuGraphMemsetNodeSetParams', &__cuGraphMemsetNodeSetParams, 10000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuGraphMemsetNodeGetParams"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuGraphMemsetNodeGetParams), 0x2710, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 1218, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":1220
 *         cuGetProcAddress('cuGraphMemsetNodeGetParams', &__cuGraphMemsetNodeGetParams, 10000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuGraphMemsetNodeSetParams
 *         cuGetProcAddress('cuGraphMemsetNodeSetParams', &__cuGraphMemsetNodeSetParams, 10000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuGraphAddHostNode
 *         cuGetProcAddress('cuGraphAddHostNode', &__cuGraphAddHostNode, 10000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuGraphMemsetNodeSetParams"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuGraphMemsetNodeSetParams), 0x2710, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 1220, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":1222
 *         cuGetProcAddress('cuGraphMemsetNodeSetParams', &__cuGraphMemsetNodeSetParams, 10000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuGraphAddHostNode
 *         cuGetProcAddress('cuGraphAddHostNode', &__cuGraphAddHostNode, 10000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuGraphHostNodeGetParams
 *         cuGetProcAddress('cuGraphHostNodeGetParams', &__cuGraphHostNodeGetParams, 10000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuGraphAddHostNode"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuGraphAddHostNode), 0x2710, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 1222, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":1224
 *         cuGetProcAddress('cuGraphAddHostNode', &__cuGraphAddHostNode, 10000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuGraphHostNodeGetParams
 *         cuGetProcAddress('cuGraphHostNodeGetParams', &__cuGraphHostNodeGetParams, 10000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuGraphHostNodeSetParams
 *         cuGetProcAddress('cuGraphHostNodeSetParams', &__cuGraphHostNodeSetParams, 10000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuGraphHostNodeGetParams"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuGraphHostNodeGetParams), 0x2710, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 1224, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":1226
 *         cuGetProcAddress('cuGraphHostNodeGetParams', &__cuGraphHostNodeGetParams, 10000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuGraphHostNodeSetParams
 *         cuGetProcAddress('cuGraphHostNodeSetParams', &__cuGraphHostNodeSetParams, 10000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuGraphAddChildGraphNode
 *         cuGetProcAddress('cuGraphAddChildGraphNode', &__cuGraphAddChildGraphNode, 10000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuGraphHostNodeSetParams"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuGraphHostNodeSetParams), 0x2710, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 1226, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":1228
 *         cuGetProcAddress('cuGraphHostNodeSetParams', &__cuGraphHostNodeSetParams, 10000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuGraphAddChildGraphNode
 *         cuGetProcAddress('cuGraphAddChildGraphNode', &__cuGraphAddChildGraphNode, 10000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuGraphChildGraphNodeGetGraph
 *         cuGetProcAddress('cuGraphChildGraphNodeGetGraph', &__cuGraphChildGraphNodeGetGraph, 10000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuGraphAddChildGraphNode"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuGraphAddChildGraphNode), 0x2710, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 1228, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":1230
 *         cuGetProcAddress('cuGraphAddChildGraphNode', &__cuGraphAddChildGraphNode, 10000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuGraphChildGraphNodeGetGraph
 *         cuGetProcAddress('cuGraphChildGraphNodeGetGraph', &__cuGraphChildGraphNodeGetGraph, 10000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuGraphAddEmptyNode
 *         cuGetProcAddress('cuGraphAddEmptyNode', &__cuGraphAddEmptyNode, 10000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuGraphChildGraphNodeGetGraph"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuGraphChildGraphNodeGetGraph), 0x2710, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 1230, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":1232
 *         cuGetProcAddress('cuGraphChildGraphNodeGetGraph', &__cuGraphChildGraphNodeGetGraph, 10000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuGraphAddEmptyNode
 *         cuGetProcAddress('cuGraphAddEmptyNode', &__cuGraphAddEmptyNode, 10000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuGraphAddEventRecordNode
 *         cuGetProcAddress('cuGraphAddEventRecordNode', &__cuGraphAddEventRecordNode, 11010, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuGraphAddEmptyNode"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuGraphAddEmptyNode), 0x2710, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 1232, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":1234
 *         cuGetProcAddress('cuGraphAddEmptyNode', &__cuGraphAddEmptyNode, 10000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuGraphAddEventRecordNode
 *         cuGetProcAddress('cuGraphAddEventRecordNode', &__cuGraphAddEventRecordNode, 11010, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuGraphEventRecordNodeGetEvent
 *         cuGetProcAddress('cuGraphEventRecordNodeGetEvent', &__cuGraphEventRecordNodeGetEvent, 11010, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuGraphAddEventRecordNode"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuGraphAddEventRecordNode), 0x2B02, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 1234, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":1236
 *         cuGetProcAddress('cuGraphAddEventRecordNode', &__cuGraphAddEventRecordNode, 11010, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuGraphEventRecordNodeGetEvent
 *         cuGetProcAddress('cuGraphEventRecordNodeGetEvent', &__cuGraphEventRecordNodeGetEvent, 11010, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuGraphEventRecordNodeSetEvent
 *         cuGetProcAddress('cuGraphEventRecordNodeSetEvent', &__cuGraphEventRecordNodeSetEvent, 11010, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuGraphEventRecordNodeGetEvent"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuGraphEventRecordNodeGetEvent), 0x2B02, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 1236, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":1238
 *         cuGetProcAddress('cuGraphEventRecordNodeGetEvent', &__cuGraphEventRecordNodeGetEvent, 11010, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuGraphEventRecordNodeSetEvent
 *         cuGetProcAddress('cuGraphEventRecordNodeSetEvent', &__cuGraphEventRecordNodeSetEvent, 11010, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuGraphAddEventWaitNode
 *         cuGetProcAddress('cuGraphAddEventWaitNode', &__cuGraphAddEventWaitNode, 11010, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuGraphEventRecordNodeSetEvent"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuGraphEventRecordNodeSetEvent), 0x2B02, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 1238, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":1240
 *         cuGetProcAddress('cuGraphEventRecordNodeSetEvent', &__cuGraphEventRecordNodeSetEvent, 11010, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuGraphAddEventWaitNode
 *         cuGetProcAddress('cuGraphAddEventWaitNode', &__cuGraphAddEventWaitNode, 11010, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuGraphEventWaitNodeGetEvent
 *         cuGetProcAddress('cuGraphEventWaitNodeGetEvent', &__cuGraphEventWaitNodeGetEvent, 11010, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuGraphAddEventWaitNode"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuGraphAddEventWaitNode), 0x2B02, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 1240, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":1242
 *         cuGetProcAddress('cuGraphAddEventWaitNode', &__cuGraphAddEventWaitNode, 11010, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuGraphEventWaitNodeGetEvent
 *         cuGetProcAddress('cuGraphEventWaitNodeGetEvent', &__cuGraphEventWaitNodeGetEvent, 11010, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuGraphEventWaitNodeSetEvent
 *         cuGetProcAddress('cuGraphEventWaitNodeSetEvent', &__cuGraphEventWaitNodeSetEvent, 11010, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuGraphEventWaitNodeGetEvent"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuGraphEventWaitNodeGetEvent), 0x2B02, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 1242, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":1244
 *         cuGetProcAddress('cuGraphEventWaitNodeGetEvent', &__cuGraphEventWaitNodeGetEvent, 11010, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuGraphEventWaitNodeSetEvent
 *         cuGetProcAddress('cuGraphEventWaitNodeSetEvent', &__cuGraphEventWaitNodeSetEvent, 11010, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuGraphAddExternalSemaphoresSignalNode
 *         cuGetProcAddress('cuGraphAddExternalSemaphoresSignalNode', &__cuGraphAddExternalSemaphoresSignalNode, 11020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuGraphEventWaitNodeSetEvent"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuGraphEventWaitNodeSetEvent), 0x2B02, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 1244, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":1246
 *         cuGetProcAddress('cuGraphEventWaitNodeSetEvent', &__cuGraphEventWaitNodeSetEvent, 11010, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuGraphAddExternalSemaphoresSignalNode
 *         cuGetProcAddress('cuGraphAddExternalSemaphoresSignalNode', &__cuGraphAddExternalSemaphoresSignalNode, 11020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuGraphExternalSemaphoresSignalNodeGetParams
 *         cuGetProcAddress('cuGraphExternalSemaphoresSignalNodeGetParams', &__cuGraphExternalSemaphoresSignalNodeGetParams, 11020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuGraphAddExternalSemaphoresSignalNode"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuGraphAddExternalSemaphoresSignalNode), 0x2B0C, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 1246, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":1248
 *         cuGetProcAddress('cuGraphAddExternalSemaphoresSignalNode', &__cuGraphAddExternalSemaphoresSignalNode, 11020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuGraphExternalSemaphoresSignalNodeGetParams
 *         cuGetProcAddress('cuGraphExternalSemaphoresSignalNodeGetParams', &__cuGraphExternalSemaphoresSignalNodeGetParams, 11020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuGraphExternalSemaphoresSignalNodeSetParams
 *         cuGetProcAddress('cuGraphExternalSemaphoresSignalNodeSetParams', &__cuGraphExternalSemaphoresSignalNodeSetParams, 11020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuGraphExternalSemaphoresSignalNodeGetParams"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuGraphExternalSemaphoresSignalNodeGetParams), 0x2B0C, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 1248, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":1250
 *         cuGetProcAddress('cuGraphExternalSemaphoresSignalNodeGetParams', &__cuGraphExternalSemaphoresSignalNodeGetParams, 11020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuGraphExternalSemaphoresSignalNodeSetParams
 *         cuGetProcAddress('cuGraphExternalSemaphoresSignalNodeSetParams', &__cuGraphExternalSemaphoresSignalNodeSetParams, 11020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuGraphAddExternalSemaphoresWaitNode
 *         cuGetProcAddress('cuGraphAddExternalSemaphoresWaitNode', &__cuGraphAddExternalSemaphoresWaitNode, 11020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuGraphExternalSemaphoresSignalNodeSetParams"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuGraphExternalSemaphoresSignalNodeSetParams), 0x2B0C, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 1250, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":1252
 *         cuGetProcAddress('cuGraphExternalSemaphoresSignalNodeSetParams', &__cuGraphExternalSemaphoresSignalNodeSetParams, 11020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuGraphAddExternalSemaphoresWaitNode
 *         cuGetProcAddress('cuGraphAddExternalSemaphoresWaitNode', &__cuGraphAddExternalSemaphoresWaitNode, 11020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuGraphExternalSemaphoresWaitNodeGetParams
 *         cuGetProcAddress('cuGraphExternalSemaphoresWaitNodeGetParams', &__cuGraphExternalSemaphoresWaitNodeGetParams, 11020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuGraphAddExternalSemaphoresWaitNode"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuGraphAddExternalSemaphoresWaitNode), 0x2B0C, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 1252, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":1254
 *         cuGetProcAddress('cuGraphAddExternalSemaphoresWaitNode', &__cuGraphAddExternalSemaphoresWaitNode, 11020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuGraphExternalSemaphoresWaitNodeGetParams
 *         cuGetProcAddress('cuGraphExternalSemaphoresWaitNodeGetParams', &__cuGraphExternalSemaphoresWaitNodeGetParams, 11020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuGraphExternalSemaphoresWaitNodeSetParams
 *         cuGetProcAddress('cuGraphExternalSemaphoresWaitNodeSetParams', &__cuGraphExternalSemaphoresWaitNodeSetParams, 11020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuGraphExternalSemaphoresWaitNodeGetParams"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuGraphExternalSemaphoresWaitNodeGetParams), 0x2B0C, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 1254, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":1256
 *         cuGetProcAddress('cuGraphExternalSemaphoresWaitNodeGetParams', &__cuGraphExternalSemaphoresWaitNodeGetParams, 11020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuGraphExternalSemaphoresWaitNodeSetParams
 *         cuGetProcAddress('cuGraphExternalSemaphoresWaitNodeSetParams', &__cuGraphExternalSemaphoresWaitNodeSetParams, 11020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuGraphAddBatchMemOpNode
 *         cuGetProcAddress('cuGraphAddBatchMemOpNode', &__cuGraphAddBatchMemOpNode, 11070, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuGraphExternalSemaphoresWaitNodeSetParams"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuGraphExternalSemaphoresWaitNodeSetParams), 0x2B0C, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 1256, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":1258
 *         cuGetProcAddress('cuGraphExternalSemaphoresWaitNodeSetParams', &__cuGraphExternalSemaphoresWaitNodeSetParams, 11020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuGraphAddBatchMemOpNode
 *         cuGetProcAddress('cuGraphAddBatchMemOpNode', &__cuGraphAddBatchMemOpNode, 11070, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuGraphBatchMemOpNodeGetParams
 *         cuGetProcAddress('cuGraphBatchMemOpNodeGetParams', &__cuGraphBatchMemOpNodeGetParams, 11070, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuGraphAddBatchMemOpNode"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuGraphAddBatchMemOpNode), 0x2B3E, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 1258, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":1260
 *         cuGetProcAddress('cuGraphAddBatchMemOpNode', &__cuGraphAddBatchMemOpNode, 11070, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuGraphBatchMemOpNodeGetParams
 *         cuGetProcAddress('cuGraphBatchMemOpNodeGetParams', &__cuGraphBatchMemOpNodeGetParams, 11070, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuGraphBatchMemOpNodeSetParams
 *         cuGetProcAddress('cuGraphBatchMemOpNodeSetParams', &__cuGraphBatchMemOpNodeSetParams, 11070, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuGraphBatchMemOpNodeGetParams"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuGraphBatchMemOpNodeGetParams), 0x2B3E, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 1260, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":1262
 *         cuGetProcAddress('cuGraphBatchMemOpNodeGetParams', &__cuGraphBatchMemOpNodeGetParams, 11070, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuGraphBatchMemOpNodeSetParams
 *         cuGetProcAddress('cuGraphBatchMemOpNodeSetParams', &__cuGraphBatchMemOpNodeSetParams, 11070, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuGraphExecBatchMemOpNodeSetParams
 *         cuGetProcAddress('cuGraphExecBatchMemOpNodeSetParams', &__cuGraphExecBatchMemOpNodeSetParams, 11070, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuGraphBatchMemOpNodeSetParams"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuGraphBatchMemOpNodeSetParams), 0x2B3E, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 1262, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":1264
 *         cuGetProcAddress('cuGraphBatchMemOpNodeSetParams', &__cuGraphBatchMemOpNodeSetParams, 11070, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuGraphExecBatchMemOpNodeSetParams
 *         cuGetProcAddress('cuGraphExecBatchMemOpNodeSetParams', &__cuGraphExecBatchMemOpNodeSetParams, 11070, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuGraphAddMemAllocNode
 *         cuGetProcAddress('cuGraphAddMemAllocNode', &__cuGraphAddMemAllocNode, 11040, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuGraphExecBatchMemOpNodeSetParams"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuGraphExecBatchMemOpNodeSetParams), 0x2B3E, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 1264, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":1266
 *         cuGetProcAddress('cuGraphExecBatchMemOpNodeSetParams', &__cuGraphExecBatchMemOpNodeSetParams, 11070, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuGraphAddMemAllocNode
 *         cuGetProcAddress('cuGraphAddMemAllocNode', &__cuGraphAddMemAllocNode, 11040, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuGraphMemAllocNodeGetParams
 *         cuGetProcAddress('cuGraphMemAllocNodeGetParams', &__cuGraphMemAllocNodeGetParams, 11040, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuGraphAddMemAllocNode"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuGraphAddMemAllocNode), 0x2B20, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 1266, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":1268
 *         cuGetProcAddress('cuGraphAddMemAllocNode', &__cuGraphAddMemAllocNode, 11040, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuGraphMemAllocNodeGetParams
 *         cuGetProcAddress('cuGraphMemAllocNodeGetParams', &__cuGraphMemAllocNodeGetParams, 11040, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuGraphAddMemFreeNode
 *         cuGetProcAddress('cuGraphAddMemFreeNode', &__cuGraphAddMemFreeNode, 11040, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuGraphMemAllocNodeGetParams"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuGraphMemAllocNodeGetParams), 0x2B20, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 1268, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":1270
 *         cuGetProcAddress('cuGraphMemAllocNodeGetParams', &__cuGraphMemAllocNodeGetParams, 11040, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuGraphAddMemFreeNode
 *         cuGetProcAddress('cuGraphAddMemFreeNode', &__cuGraphAddMemFreeNode, 11040, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuGraphMemFreeNodeGetParams
 *         cuGetProcAddress('cuGraphMemFreeNodeGetParams', &__cuGraphMemFreeNodeGetParams, 11040, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuGraphAddMemFreeNode"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuGraphAddMemFreeNode), 0x2B20, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 1270, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":1272
 *         cuGetProcAddress('cuGraphAddMemFreeNode', &__cuGraphAddMemFreeNode, 11040, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuGraphMemFreeNodeGetParams
 *         cuGetProcAddress('cuGraphMemFreeNodeGetParams', &__cuGraphMemFreeNodeGetParams, 11040, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuDeviceGraphMemTrim
 *         cuGetProcAddress('cuDeviceGraphMemTrim', &__cuDeviceGraphMemTrim, 11040, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuGraphMemFreeNodeGetParams"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuGraphMemFreeNodeGetParams), 0x2B20, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 1272, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":1274
 *         cuGetProcAddress('cuGraphMemFreeNodeGetParams', &__cuGraphMemFreeNodeGetParams, 11040, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuDeviceGraphMemTrim
 *         cuGetProcAddress('cuDeviceGraphMemTrim', &__cuDeviceGraphMemTrim, 11040, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuDeviceGetGraphMemAttribute
 *         cuGetProcAddress('cuDeviceGetGraphMemAttribute', &__cuDeviceGetGraphMemAttribute, 11040, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuDeviceGraphMemTrim"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuDeviceGraphMemTrim), 0x2B20, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 1274, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":1276
 *         cuGetProcAddress('cuDeviceGraphMemTrim', &__cuDeviceGraphMemTrim, 11040, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuDeviceGetGraphMemAttribute
 *         cuGetProcAddress('cuDeviceGetGraphMemAttribute', &__cuDeviceGetGraphMemAttribute, 11040, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuDeviceSetGraphMemAttribute
 *         cuGetProcAddress('cuDeviceSetGraphMemAttribute', &__cuDeviceSetGraphMemAttribute, 11040, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuDeviceGetGraphMemAttribute"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuDeviceGetGraphMemAttribute), 0x2B20, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 1276, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":1278
 *         cuGetProcAddress('cuDeviceGetGraphMemAttribute', &__cuDeviceGetGraphMemAttribute, 11040, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuDeviceSetGraphMemAttribute
 *         cuGetProcAddress('cuDeviceSetGraphMemAttribute', &__cuDeviceSetGraphMemAttribute, 11040, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuGraphClone
 *         cuGetProcAddress('cuGraphClone', &__cuGraphClone, 10000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuDeviceSetGraphMemAttribute"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuDeviceSetGraphMemAttribute), 0x2B20, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 1278, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":1280
 *         cuGetProcAddress('cuDeviceSetGraphMemAttribute', &__cuDeviceSetGraphMemAttribute, 11040, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuGraphClone
 *         cuGetProcAddress('cuGraphClone', &__cuGraphClone, 10000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuGraphNodeFindInClone
 *         cuGetProcAddress('cuGraphNodeFindInClone', &__cuGraphNodeFindInClone, 10000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuGraphClone"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuGraphClone), 0x2710, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 1280, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":1282
 *         cuGetProcAddress('cuGraphClone', &__cuGraphClone, 10000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuGraphNodeFindInClone
 *         cuGetProcAddress('cuGraphNodeFindInClone', &__cuGraphNodeFindInClone, 10000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuGraphNodeGetType
 *         cuGetProcAddress('cuGraphNodeGetType', &__cuGraphNodeGetType, 10000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuGraphNodeFindInClone"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuGraphNodeFindInClone), 0x2710, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 1282, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":1284
 *         cuGetProcAddress('cuGraphNodeFindInClone', &__cuGraphNodeFindInClone, 10000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuGraphNodeGetType
 *         cuGetProcAddress('cuGraphNodeGetType', &__cuGraphNodeGetType, 10000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuGraphGetNodes
 *         cuGetProcAddress('cuGraphGetNodes', &__cuGraphGetNodes, 10000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuGraphNodeGetType"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuGraphNodeGetType), 0x2710, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 1284, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":1286
 *         cuGetProcAddress('cuGraphNodeGetType', &__cuGraphNodeGetType, 10000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuGraphGetNodes
 *         cuGetProcAddress('cuGraphGetNodes', &__cuGraphGetNodes, 10000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuGraphGetRootNodes
 *         cuGetProcAddress('cuGraphGetRootNodes', &__cuGraphGetRootNodes, 10000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuGraphGetNodes"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuGraphGetNodes), 0x2710, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 1286, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":1288
 *         cuGetProcAddress('cuGraphGetNodes', &__cuGraphGetNodes, 10000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuGraphGetRootNodes
 *         cuGetProcAddress('cuGraphGetRootNodes', &__cuGraphGetRootNodes, 10000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuGraphGetEdges
 *         cuGetProcAddress('cuGraphGetEdges', &__cuGraphGetEdges, 10000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuGraphGetRootNodes"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuGraphGetRootNodes), 0x2710, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 1288, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":1290
 *         cuGetProcAddress('cuGraphGetRootNodes', &__cuGraphGetRootNodes, 10000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuGraphGetEdges
 *         cuGetProcAddress('cuGraphGetEdges', &__cuGraphGetEdges, 10000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuGraphGetEdges_v2
 *         cuGetProcAddress('cuGraphGetEdges', &__cuGraphGetEdges_v2, 12030, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuGraphGetEdges"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuGraphGetEdges), 0x2710, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 1290, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":1292
 *         cuGetProcAddress('cuGraphGetEdges', &__cuGraphGetEdges, 10000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuGraphGetEdges_v2
 *         cuGetProcAddress('cuGraphGetEdges', &__cuGraphGetEdges_v2, 12030, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuGraphNodeGetDependencies
 *         cuGetProcAddress('cuGraphNodeGetDependencies', &__cuGraphNodeGetDependencies, 10000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuGraphGetEdges"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuGraphGetEdges_v2), 0x2EFE, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 1292, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":1294
 *         cuGetProcAddress('cuGraphGetEdges', &__cuGraphGetEdges_v2, 12030, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuGraphNodeGetDependencies
 *         cuGetProcAddress('cuGraphNodeGetDependencies', &__cuGraphNodeGetDependencies, 10000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuGraphNodeGetDependencies_v2
 *         cuGetProcAddress('cuGraphNodeGetDependencies', &__cuGraphNodeGetDependencies_v2, 12030, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuGraphNodeGetDependencies"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuGraphNodeGetDependencies), 0x2710, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 1294, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":1296
 *         cuGetProcAddress('cuGraphNodeGetDependencies', &__cuGraphNodeGetDependencies, 10000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuGraphNodeGetDependencies_v2
 *         cuGetProcAddress('cuGraphNodeGetDependencies', &__cuGraphNodeGetDependencies_v2, 12030, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuGraphNodeGetDependentNodes
 *         cuGetProcAddress('cuGraphNodeGetDependentNodes', &__cuGraphNodeGetDependentNodes, 10000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuGraphNodeGetDependencies"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuGraphNodeGetDependencies_v2), 0x2EFE, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 1296, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":1298
 *         cuGetProcAddress('cuGraphNodeGetDependencies', &__cuGraphNodeGetDependencies_v2, 12030, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuGraphNodeGetDependentNodes
 *         cuGetProcAddress('cuGraphNodeGetDependentNodes', &__cuGraphNodeGetDependentNodes, 10000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuGraphNodeGetDependentNodes_v2
 *         cuGetProcAddress('cuGraphNodeGetDependentNodes', &__cuGraphNodeGetDependentNodes_v2, 12030, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuGraphNodeGetDependentNodes"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuGraphNodeGetDependentNodes), 0x2710, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 1298, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":1300
 *         cuGetProcAddress('cuGraphNodeGetDependentNodes', &__cuGraphNodeGetDependentNodes, 10000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuGraphNodeGetDependentNodes_v2
 *         cuGetProcAddress('cuGraphNodeGetDependentNodes', &__cuGraphNodeGetDependentNodes_v2, 12030, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuGraphAddDependencies
 *         cuGetProcAddress('cuGraphAddDependencies', &__cuGraphAddDependencies, 10000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuGraphNodeGetDependentNodes"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuGraphNodeGetDependentNodes_v2), 0x2EFE, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 1300, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":1302
 *         cuGetProcAddress('cuGraphNodeGetDependentNodes', &__cuGraphNodeGetDependentNodes_v2, 12030, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuGraphAddDependencies
 *         cuGetProcAddress('cuGraphAddDependencies', &__cuGraphAddDependencies, 10000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuGraphAddDependencies_v2
 *         cuGetProcAddress('cuGraphAddDependencies', &__cuGraphAddDependencies_v2, 12030, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuGraphAddDependencies"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuGraphAddDependencies), 0x2710, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 1302, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":1304
 *         cuGetProcAddress('cuGraphAddDependencies', &__cuGraphAddDependencies, 10000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuGraphAddDependencies_v2
 *         cuGetProcAddress('cuGraphAddDependencies', &__cuGraphAddDependencies_v2, 12030, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuGraphRemoveDependencies
 *         cuGetProcAddress('cuGraphRemoveDependencies', &__cuGraphRemoveDependencies, 10000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuGraphAddDependencies"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuGraphAddDependencies_v2), 0x2EFE, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 1304, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":1306
 *         cuGetProcAddress('cuGraphAddDependencies', &__cuGraphAddDependencies_v2, 12030, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuGraphRemoveDependencies
 *         cuGetProcAddress('cuGraphRemoveDependencies', &__cuGraphRemoveDependencies, 10000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuGraphRemoveDependencies_v2
 *         cuGetProcAddress('cuGraphRemoveDependencies', &__cuGraphRemoveDependencies_v2, 12030, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuGraphRemoveDependencies"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuGraphRemoveDependencies), 0x2710, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 1306, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":1308
 *         cuGetProcAddress('cuGraphRemoveDependencies', &__cuGraphRemoveDependencies, 10000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuGraphRemoveDependencies_v2
 *         cuGetProcAddress('cuGraphRemoveDependencies', &__cuGraphRemoveDependencies_v2, 12030, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuGraphDestroyNode
 *         cuGetProcAddress('cuGraphDestroyNode', &__cuGraphDestroyNode, 10000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuGraphRemoveDependencies"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuGraphRemoveDependencies_v2), 0x2EFE, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 1308, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":1310
 *         cuGetProcAddress('cuGraphRemoveDependencies', &__cuGraphRemoveDependencies_v2, 12030, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuGraphDestroyNode
 *         cuGetProcAddress('cuGraphDestroyNode', &__cuGraphDestroyNode, 10000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuGraphInstantiateWithFlags
 *         cuGetProcAddress('cuGraphInstantiateWithFlags', &__cuGraphInstantiateWithFlags, 11040, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuGraphDestroyNode"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuGraphDestroyNode), 0x2710, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 1310, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":1312
 *         cuGetProcAddress('cuGraphDestroyNode', &__cuGraphDestroyNode, 10000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuGraphInstantiateWithFlags
 *         cuGetProcAddress('cuGraphInstantiateWithFlags', &__cuGraphInstantiateWithFlags, 11040, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuGraphExecGetFlags
 *         cuGetProcAddress('cuGraphExecGetFlags', &__cuGraphExecGetFlags, 12000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuGraphInstantiateWithFlags"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuGraphInstantiateWithFlags), 0x2B20, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 1312, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":1314
 *         cuGetProcAddress('cuGraphInstantiateWithFlags', &__cuGraphInstantiateWithFlags, 11040, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuGraphExecGetFlags
 *         cuGetProcAddress('cuGraphExecGetFlags', &__cuGraphExecGetFlags, 12000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuGraphExecKernelNodeSetParams_v2
 *         cuGetProcAddress('cuGraphExecKernelNodeSetParams', &__cuGraphExecKernelNodeSetParams_v2, 12000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuGraphExecGetFlags"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuGraphExecGetFlags), 0x2EE0, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 1314, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":1316
 *         cuGetProcAddress('cuGraphExecGetFlags', &__cuGraphExecGetFlags, 12000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuGraphExecKernelNodeSetParams_v2
 *         cuGetProcAddress('cuGraphExecKernelNodeSetParams', &__cuGraphExecKernelNodeSetParams_v2, 12000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuGraphExecMemcpyNodeSetParams
 *         cuGetProcAddress('cuGraphExecMemcpyNodeSetParams', &__cuGraphExecMemcpyNodeSetParams, 10020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuGraphExecKernelNodeSetParams"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuGraphExecKernelNodeSetParams_v2), 0x2EE0, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 1316, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":1318
 *         cuGetProcAddress('cuGraphExecKernelNodeSetParams', &__cuGraphExecKernelNodeSetParams_v2, 12000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuGraphExecMemcpyNodeSetParams
 *         cuGetProcAddress('cuGraphExecMemcpyNodeSetParams', &__cuGraphExecMemcpyNodeSetParams, 10020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuGraphExecMemsetNodeSetParams
 *         cuGetProcAddress('cuGraphExecMemsetNodeSetParams', &__cuGraphExecMemsetNodeSetParams, 10020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuGraphExecMemcpyNodeSetParams"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuGraphExecMemcpyNodeSetParams), 0x2724, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 1318, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":1320
 *         cuGetProcAddress('cuGraphExecMemcpyNodeSetParams', &__cuGraphExecMemcpyNodeSetParams, 10020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuGraphExecMemsetNodeSetParams
 *         cuGetProcAddress('cuGraphExecMemsetNodeSetParams', &__cuGraphExecMemsetNodeSetParams, 10020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuGraphExecHostNodeSetParams
 *         cuGetProcAddress('cuGraphExecHostNodeSetParams', &__cuGraphExecHostNodeSetParams, 10020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuGraphExecMemsetNodeSetParams"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuGraphExecMemsetNodeSetParams), 0x2724, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 1320, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":1322
 *         cuGetProcAddress('cuGraphExecMemsetNodeSetParams', &__cuGraphExecMemsetNodeSetParams, 10020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuGraphExecHostNodeSetParams
 *         cuGetProcAddress('cuGraphExecHostNodeSetParams', &__cuGraphExecHostNodeSetParams, 10020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuGraphExecChildGraphNodeSetParams
 *         cuGetProcAddress('cuGraphExecChildGraphNodeSetParams', &__cuGraphExecChildGraphNodeSetParams, 11010, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuGraphExecHostNodeSetParams"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuGraphExecHostNodeSetParams), 0x2724, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 1322, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":1324
 *         cuGetProcAddress('cuGraphExecHostNodeSetParams', &__cuGraphExecHostNodeSetParams, 10020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuGraphExecChildGraphNodeSetParams
 *         cuGetProcAddress('cuGraphExecChildGraphNodeSetParams', &__cuGraphExecChildGraphNodeSetParams, 11010, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuGraphExecEventRecordNodeSetEvent
 *         cuGetProcAddress('cuGraphExecEventRecordNodeSetEvent', &__cuGraphExecEventRecordNodeSetEvent, 11010, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuGraphExecChildGraphNodeSetParams"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuGraphExecChildGraphNodeSetParams), 0x2B02, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 1324, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":1326
 *         cuGetProcAddress('cuGraphExecChildGraphNodeSetParams', &__cuGraphExecChildGraphNodeSetParams, 11010, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuGraphExecEventRecordNodeSetEvent
 *         cuGetProcAddress('cuGraphExecEventRecordNodeSetEvent', &__cuGraphExecEventRecordNodeSetEvent, 11010, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuGraphExecEventWaitNodeSetEvent
 *         cuGetProcAddress('cuGraphExecEventWaitNodeSetEvent', &__cuGraphExecEventWaitNodeSetEvent, 11010, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuGraphExecEventRecordNodeSetEvent"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuGraphExecEventRecordNodeSetEvent), 0x2B02, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 1326, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":1328
 *         cuGetProcAddress('cuGraphExecEventRecordNodeSetEvent', &__cuGraphExecEventRecordNodeSetEvent, 11010, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuGraphExecEventWaitNodeSetEvent
 *         cuGetProcAddress('cuGraphExecEventWaitNodeSetEvent', &__cuGraphExecEventWaitNodeSetEvent, 11010, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuGraphExecExternalSemaphoresSignalNodeSetParams
 *         cuGetProcAddress('cuGraphExecExternalSemaphoresSignalNodeSetParams', &__cuGraphExecExternalSemaphoresSignalNodeSetParams, 11020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuGraphExecEventWaitNodeSetEvent"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuGraphExecEventWaitNodeSetEvent), 0x2B02, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 1328, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":1330
 *         cuGetProcAddress('cuGraphExecEventWaitNodeSetEvent', &__cuGraphExecEventWaitNodeSetEvent, 11010, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuGraphExecExternalSemaphoresSignalNodeSetParams
 *         cuGetProcAddress('cuGraphExecExternalSemaphoresSignalNodeSetParams', &__cuGraphExecExternalSemaphoresSignalNodeSetParams, 11020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuGraphExecExternalSemaphoresWaitNodeSetParams
 *         cuGetProcAddress('cuGraphExecExternalSemaphoresWaitNodeSetParams', &__cuGraphExecExternalSemaphoresWaitNodeSetParams, 11020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuGraphExecExternalSemaphoresSignalNodeSetParams"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuGraphExecExternalSemaphoresSignalNodeSetParams), 0x2B0C, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 1330, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":1332
 *         cuGetProcAddress('cuGraphExecExternalSemaphoresSignalNodeSetParams', &__cuGraphExecExternalSemaphoresSignalNodeSetParams, 11020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuGraphExecExternalSemaphoresWaitNodeSetParams
 *         cuGetProcAddress('cuGraphExecExternalSemaphoresWaitNodeSetParams', &__cuGraphExecExternalSemaphoresWaitNodeSetParams, 11020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuGraphNodeSetEnabled
 *         cuGetProcAddress('cuGraphNodeSetEnabled', &__cuGraphNodeSetEnabled, 11060, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuGraphExecExternalSemaphoresWaitNodeSetParams"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuGraphExecExternalSemaphoresWaitNodeSetParams), 0x2B0C, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 1332, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":1334
 *         cuGetProcAddress('cuGraphExecExternalSemaphoresWaitNodeSetParams', &__cuGraphExecExternalSemaphoresWaitNodeSetParams, 11020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuGraphNodeSetEnabled
 *         cuGetProcAddress('cuGraphNodeSetEnabled', &__cuGraphNodeSetEnabled, 11060, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuGraphNodeGetEnabled
 *         cuGetProcAddress('cuGraphNodeGetEnabled', &__cuGraphNodeGetEnabled, 11060, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuGraphNodeSetEnabled"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuGraphNodeSetEnabled), 0x2B34, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 1334, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":1336
 *         cuGetProcAddress('cuGraphNodeSetEnabled', &__cuGraphNodeSetEnabled, 11060, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuGraphNodeGetEnabled
 *         cuGetProcAddress('cuGraphNodeGetEnabled', &__cuGraphNodeGetEnabled, 11060, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuGraphExecDestroy
 *         cuGetProcAddress('cuGraphExecDestroy', &__cuGraphExecDestroy, 10000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuGraphNodeGetEnabled"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuGraphNodeGetEnabled), 0x2B34, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 1336, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":1338
 *         cuGetProcAddress('cuGraphNodeGetEnabled', &__cuGraphNodeGetEnabled, 11060, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuGraphExecDestroy
 *         cuGetProcAddress('cuGraphExecDestroy', &__cuGraphExecDestroy, 10000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuGraphDestroy
 *         cuGetProcAddress('cuGraphDestroy', &__cuGraphDestroy, 10000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuGraphExecDestroy"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuGraphExecDestroy), 0x2710, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 1338, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":1340
 *         cuGetProcAddress('cuGraphExecDestroy', &__cuGraphExecDestroy, 10000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuGraphDestroy
 *         cuGetProcAddress('cuGraphDestroy', &__cuGraphDestroy, 10000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuGraphExecUpdate_v2
 *         cuGetProcAddress('cuGraphExecUpdate', &__cuGraphExecUpdate_v2, 12000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuGraphDestroy"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuGraphDestroy), 0x2710, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 1340, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":1342
 *         cuGetProcAddress('cuGraphDestroy', &__cuGraphDestroy, 10000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuGraphExecUpdate_v2
 *         cuGetProcAddress('cuGraphExecUpdate', &__cuGraphExecUpdate_v2, 12000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuGraphKernelNodeCopyAttributes
 *         cuGetProcAddress('cuGraphKernelNodeCopyAttributes', &__cuGraphKernelNodeCopyAttributes, 11000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuGraphExecUpdate"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuGraphExecUpdate_v2), 0x2EE0, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 1342, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":1344
 *         cuGetProcAddress('cuGraphExecUpdate', &__cuGraphExecUpdate_v2, 12000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuGraphKernelNodeCopyAttributes
 *         cuGetProcAddress('cuGraphKernelNodeCopyAttributes', &__cuGraphKernelNodeCopyAttributes, 11000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuGraphKernelNodeGetAttribute
 *         cuGetProcAddress('cuGraphKernelNodeGetAttribute', &__cuGraphKernelNodeGetAttribute, 11000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuGraphKernelNodeCopyAttributes"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuGraphKernelNodeCopyAttributes), 0x2AF8, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 1344, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":1346
 *         cuGetProcAddress('cuGraphKernelNodeCopyAttributes', &__cuGraphKernelNodeCopyAttributes, 11000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuGraphKernelNodeGetAttribute
 *         cuGetProcAddress('cuGraphKernelNodeGetAttribute', &__cuGraphKernelNodeGetAttribute, 11000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuGraphKernelNodeSetAttribute
 *         cuGetProcAddress('cuGraphKernelNodeSetAttribute', &__cuGraphKernelNodeSetAttribute, 11000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuGraphKernelNodeGetAttribute"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuGraphKernelNodeGetAttribute), 0x2AF8, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 1346, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":1348
 *         cuGetProcAddress('cuGraphKernelNodeGetAttribute', &__cuGraphKernelNodeGetAttribute, 11000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuGraphKernelNodeSetAttribute
 *         cuGetProcAddress('cuGraphKernelNodeSetAttribute', &__cuGraphKernelNodeSetAttribute, 11000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuGraphDebugDotPrint
 *         cuGetProcAddress('cuGraphDebugDotPrint', &__cuGraphDebugDotPrint, 11030, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuGraphKernelNodeSetAttribute"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuGraphKernelNodeSetAttribute), 0x2AF8, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 1348, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":1350
 *         cuGetProcAddress('cuGraphKernelNodeSetAttribute', &__cuGraphKernelNodeSetAttribute, 11000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuGraphDebugDotPrint
 *         cuGetProcAddress('cuGraphDebugDotPrint', &__cuGraphDebugDotPrint, 11030, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuUserObjectCreate
 *         cuGetProcAddress('cuUserObjectCreate', &__cuUserObjectCreate, 11030, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuGraphDebugDotPrint"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuGraphDebugDotPrint), 0x2B16, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 1350, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":1352
 *         cuGetProcAddress('cuGraphDebugDotPrint', &__cuGraphDebugDotPrint, 11030, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuUserObjectCreate
 *         cuGetProcAddress('cuUserObjectCreate', &__cuUserObjectCreate, 11030, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuUserObjectRetain
 *         cuGetProcAddress('cuUserObjectRetain', &__cuUserObjectRetain, 11030, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuUserObjectCreate"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuUserObjectCreate), 0x2B16, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 1352, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":1354
 *         cuGetProcAddress('cuUserObjectCreate', &__cuUserObjectCreate, 11030, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuUserObjectRetain
 *         cuGetProcAddress('cuUserObjectRetain', &__cuUserObjectRetain, 11030, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuUserObjectRelease
 *         cuGetProcAddress('cuUserObjectRelease', &__cuUserObjectRelease, 11030, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuUserObjectRetain"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuUserObjectRetain), 0x2B16, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 1354, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":1356
 *         cuGetProcAddress('cuUserObjectRetain', &__cuUserObjectRetain, 11030, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuUserObjectRelease
 *         cuGetProcAddress('cuUserObjectRelease', &__cuUserObjectRelease, 11030, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuGraphRetainUserObject
 *         cuGetProcAddress('cuGraphRetainUserObject', &__cuGraphRetainUserObject, 11030, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuUserObjectRelease"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuUserObjectRelease), 0x2B16, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 1356, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":1358
 *         cuGetProcAddress('cuUserObjectRelease', &__cuUserObjectRelease, 11030, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuGraphRetainUserObject
 *         cuGetProcAddress('cuGraphRetainUserObject', &__cuGraphRetainUserObject, 11030, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuGraphReleaseUserObject
 *         cuGetProcAddress('cuGraphReleaseUserObject', &__cuGraphReleaseUserObject, 11030, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuGraphRetainUserObject"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuGraphRetainUserObject), 0x2B16, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 1358, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":1360
 *         cuGetProcAddress('cuGraphRetainUserObject', &__cuGraphRetainUserObject, 11030, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuGraphReleaseUserObject
 *         cuGetProcAddress('cuGraphReleaseUserObject', &__cuGraphReleaseUserObject, 11030, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuGraphAddNode
 *         cuGetProcAddress('cuGraphAddNode', &__cuGraphAddNode, 12020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuGraphReleaseUserObject"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuGraphReleaseUserObject), 0x2B16, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 1360, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":1362
 *         cuGetProcAddress('cuGraphReleaseUserObject', &__cuGraphReleaseUserObject, 11030, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuGraphAddNode
 *         cuGetProcAddress('cuGraphAddNode', &__cuGraphAddNode, 12020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuGraphAddNode_v2
 *         cuGetProcAddress('cuGraphAddNode', &__cuGraphAddNode_v2, 12030, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuGraphAddNode"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuGraphAddNode), 0x2EF4, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 1362, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":1364
 *         cuGetProcAddress('cuGraphAddNode', &__cuGraphAddNode, 12020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuGraphAddNode_v2
 *         cuGetProcAddress('cuGraphAddNode', &__cuGraphAddNode_v2, 12030, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuGraphNodeSetParams
 *         cuGetProcAddress('cuGraphNodeSetParams', &__cuGraphNodeSetParams, 12020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuGraphAddNode"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuGraphAddNode_v2), 0x2EFE, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 1364, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":1366
 *         cuGetProcAddress('cuGraphAddNode', &__cuGraphAddNode_v2, 12030, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuGraphNodeSetParams
 *         cuGetProcAddress('cuGraphNodeSetParams', &__cuGraphNodeSetParams, 12020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuGraphExecNodeSetParams
 *         cuGetProcAddress('cuGraphExecNodeSetParams', &__cuGraphExecNodeSetParams, 12020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuGraphNodeSetParams"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuGraphNodeSetParams), 0x2EF4, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 1366, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":1368
 *         cuGetProcAddress('cuGraphNodeSetParams', &__cuGraphNodeSetParams, 12020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuGraphExecNodeSetParams
 *         cuGetProcAddress('cuGraphExecNodeSetParams', &__cuGraphExecNodeSetParams, 12020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuGraphConditionalHandleCreate
 *         cuGetProcAddress('cuGraphConditionalHandleCreate', &__cuGraphConditionalHandleCreate, 12030, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuGraphExecNodeSetParams"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuGraphExecNodeSetParams), 0x2EF4, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 1368, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":1370
 *         cuGetProcAddress('cuGraphExecNodeSetParams', &__cuGraphExecNodeSetParams, 12020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuGraphConditionalHandleCreate
 *         cuGetProcAddress('cuGraphConditionalHandleCreate', &__cuGraphConditionalHandleCreate, 12030, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuOccupancyMaxActiveBlocksPerMultiprocessor
 *         cuGetProcAddress('cuOccupancyMaxActiveBlocksPerMultiprocessor', &__cuOccupancyMaxActiveBlocksPerMultiprocessor, 6050, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuGraphConditionalHandleCreate"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuGraphConditionalHandleCreate), 0x2EFE, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 1370, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":1372
 *         cuGetProcAddress('cuGraphConditionalHandleCreate', &__cuGraphConditionalHandleCreate, 12030, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuOccupancyMaxActiveBlocksPerMultiprocessor
 *         cuGetProcAddress('cuOccupancyMaxActiveBlocksPerMultiprocessor', &__cuOccupancyMaxActiveBlocksPerMultiprocessor, 6050, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuOccupancyMaxActiveBlocksPerMultiprocessorWithFlags
 *         cuGetProcAddress('cuOccupancyMaxActiveBlocksPerMultiprocessorWithFlags', &__cuOccupancyMaxActiveBlocksPerMultiprocessorWithFlags, 7000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuOccupancyMaxActiveBlocksPerMultiprocessor"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuOccupancyMaxActiveBlocksPerMultiprocessor), 0x17A2, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 1372, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":1374
 *         cuGetProcAddress('cuOccupancyMaxActiveBlocksPerMultiprocessor', &__cuOccupancyMaxActiveBlocksPerMultiprocessor, 6050, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuOccupancyMaxActiveBlocksPerMultiprocessorWithFlags
 *         cuGetProcAddress('cuOccupancyMaxActiveBlocksPerMultiprocessorWithFlags', &__cuOccupancyMaxActiveBlocksPerMultiprocessorWithFlags, 7000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuOccupancyMaxPotentialBlockSize
 *         cuGetProcAddress('cuOccupancyMaxPotentialBlockSize', &__cuOccupancyMaxPotentialBlockSize, 6050, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuOccupancyMaxActiveBlocksPerMultiprocessorWithFlags"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuOccupancyMaxActiveBlocksPerMultiprocessorWithFlags), 0x1B58, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 1374, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":1376
 *         cuGetProcAddress('cuOccupancyMaxActiveBlocksPerMultiprocessorWithFlags', &__cuOccupancyMaxActiveBlocksPerMultiprocessorWithFlags, 7000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuOccupancyMaxPotentialBlockSize
 *         cuGetProcAddress('cuOccupancyMaxPotentialBlockSize', &__cuOccupancyMaxPotentialBlockSize, 6050, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuOccupancyMaxPotentialBlockSizeWithFlags
 *         cuGetProcAddress('cuOccupancyMaxPotentialBlockSizeWithFlags', &__cuOccupancyMaxPotentialBlockSizeWithFlags, 7000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuOccupancyMaxPotentialBlockSize"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuOccupancyMaxPotentialBlockSize), 0x17A2, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 1376, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":1378
 *         cuGetProcAddress('cuOccupancyMaxPotentialBlockSize', &__cuOccupancyMaxPotentialBlockSize, 6050, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuOccupancyMaxPotentialBlockSizeWithFlags
 *         cuGetProcAddress('cuOccupancyMaxPotentialBlockSizeWithFlags', &__cuOccupancyMaxPotentialBlockSizeWithFlags, 7000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuOccupancyAvailableDynamicSMemPerBlock
 *         cuGetProcAddress('cuOccupancyAvailableDynamicSMemPerBlock', &__cuOccupancyAvailableDynamicSMemPerBlock, 10020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuOccupancyMaxPotentialBlockSizeWithFlags"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuOccupancyMaxPotentialBlockSizeWithFlags), 0x1B58, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 1378, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":1380
 *         cuGetProcAddress('cuOccupancyMaxPotentialBlockSizeWithFlags', &__cuOccupancyMaxPotentialBlockSizeWithFlags, 7000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuOccupancyAvailableDynamicSMemPerBlock
 *         cuGetProcAddress('cuOccupancyAvailableDynamicSMemPerBlock', &__cuOccupancyAvailableDynamicSMemPerBlock, 10020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuOccupancyMaxPotentialClusterSize
 *         cuGetProcAddress('cuOccupancyMaxPotentialClusterSize', &__cuOccupancyMaxPotentialClusterSize, 11070, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuOccupancyAvailableDynamicSMemPerBlock"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuOccupancyAvailableDynamicSMemPerBlock), 0x2724, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 1380, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":1382
 *         cuGetProcAddress('cuOccupancyAvailableDynamicSMemPerBlock', &__cuOccupancyAvailableDynamicSMemPerBlock, 10020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuOccupancyMaxPotentialClusterSize
 *         cuGetProcAddress('cuOccupancyMaxPotentialClusterSize', &__cuOccupancyMaxPotentialClusterSize, 11070, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuOccupancyMaxActiveClusters
 *         cuGetProcAddress('cuOccupancyMaxActiveClusters', &__cuOccupancyMaxActiveClusters, 11070, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuOccupancyMaxPotentialClusterSize"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuOccupancyMaxPotentialClusterSize), 0x2B3E, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 1382, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":1384
 *         cuGetProcAddress('cuOccupancyMaxPotentialClusterSize', &__cuOccupancyMaxPotentialClusterSize, 11070, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuOccupancyMaxActiveClusters
 *         cuGetProcAddress('cuOccupancyMaxActiveClusters', &__cuOccupancyMaxActiveClusters, 11070, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuTexRefSetArray
 *         cuGetProcAddress('cuTexRefSetArray', &__cuTexRefSetArray, 2000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuOccupancyMaxActiveClusters"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuOccupancyMaxActiveClusters), 0x2B3E, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 1384, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":1386
 *         cuGetProcAddress('cuOccupancyMaxActiveClusters', &__cuOccupancyMaxActiveClusters, 11070, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuTexRefSetArray
 *         cuGetProcAddress('cuTexRefSetArray', &__cuTexRefSetArray, 2000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuTexRefSetMipmappedArray
 *         cuGetProcAddress('cuTexRefSetMipmappedArray', &__cuTexRefSetMipmappedArray, 5000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuTexRefSetArray"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuTexRefSetArray), 0x7D0, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 1386, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":1388
 *         cuGetProcAddress('cuTexRefSetArray', &__cuTexRefSetArray, 2000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuTexRefSetMipmappedArray
 *         cuGetProcAddress('cuTexRefSetMipmappedArray', &__cuTexRefSetMipmappedArray, 5000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuTexRefSetAddress_v2
 *         cuGetProcAddress('cuTexRefSetAddress', &__cuTexRefSetAddress_v2, 3020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuTexRefSetMipmappedArray"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuTexRefSetMipmappedArray), 0x1388, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 1388, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":1390
 *         cuGetProcAddress('cuTexRefSetMipmappedArray', &__cuTexRefSetMipmappedArray, 5000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuTexRefSetAddress_v2
 *         cuGetProcAddress('cuTexRefSetAddress', &__cuTexRefSetAddress_v2, 3020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuTexRefSetAddress2D_v3
 *         cuGetProcAddress('cuTexRefSetAddress2D', &__cuTexRefSetAddress2D_v3, 4010, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuTexRefSetAddress"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuTexRefSetAddress_v2), 0xBCC, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 1390, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":1392
 *         cuGetProcAddress('cuTexRefSetAddress', &__cuTexRefSetAddress_v2, 3020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuTexRefSetAddress2D_v3
 *         cuGetProcAddress('cuTexRefSetAddress2D', &__cuTexRefSetAddress2D_v3, 4010, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuTexRefSetFormat
 *         cuGetProcAddress('cuTexRefSetFormat', &__cuTexRefSetFormat, 2000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuTexRefSetAddress2D"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuTexRefSetAddress2D_v3), 0xFAA, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 1392, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":1394
 *         cuGetProcAddress('cuTexRefSetAddress2D', &__cuTexRefSetAddress2D_v3, 4010, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuTexRefSetFormat
 *         cuGetProcAddress('cuTexRefSetFormat', &__cuTexRefSetFormat, 2000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuTexRefSetAddressMode
 *         cuGetProcAddress('cuTexRefSetAddressMode', &__cuTexRefSetAddressMode, 2000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuTexRefSetFormat"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuTexRefSetFormat), 0x7D0, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 1394, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":1396
 *         cuGetProcAddress('cuTexRefSetFormat', &__cuTexRefSetFormat, 2000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuTexRefSetAddressMode
 *         cuGetProcAddress('cuTexRefSetAddressMode', &__cuTexRefSetAddressMode, 2000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuTexRefSetFilterMode
 *         cuGetProcAddress('cuTexRefSetFilterMode', &__cuTexRefSetFilterMode, 2000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuTexRefSetAddressMode"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuTexRefSetAddressMode), 0x7D0, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 1396, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":1398
 *         cuGetProcAddress('cuTexRefSetAddressMode', &__cuTexRefSetAddressMode, 2000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuTexRefSetFilterMode
 *         cuGetProcAddress('cuTexRefSetFilterMode', &__cuTexRefSetFilterMode, 2000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuTexRefSetMipmapFilterMode
 *         cuGetProcAddress('cuTexRefSetMipmapFilterMode', &__cuTexRefSetMipmapFilterMode, 5000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuTexRefSetFilterMode"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuTexRefSetFilterMode), 0x7D0, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 1398, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":1400
 *         cuGetProcAddress('cuTexRefSetFilterMode', &__cuTexRefSetFilterMode, 2000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuTexRefSetMipmapFilterMode
 *         cuGetProcAddress('cuTexRefSetMipmapFilterMode', &__cuTexRefSetMipmapFilterMode, 5000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuTexRefSetMipmapLevelBias
 *         cuGetProcAddress('cuTexRefSetMipmapLevelBias', &__cuTexRefSetMipmapLevelBias, 5000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuTexRefSetMipmapFilterMode"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuTexRefSetMipmapFilterMode), 0x1388, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 1400, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":1402
 *         cuGetProcAddress('cuTexRefSetMipmapFilterMode', &__cuTexRefSetMipmapFilterMode, 5000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuTexRefSetMipmapLevelBias
 *         cuGetProcAddress('cuTexRefSetMipmapLevelBias', &__cuTexRefSetMipmapLevelBias, 5000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuTexRefSetMipmapLevelClamp
 *         cuGetProcAddress('cuTexRefSetMipmapLevelClamp', &__cuTexRefSetMipmapLevelClamp, 5000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuTexRefSetMipmapLevelBias"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuTexRefSetMipmapLevelBias), 0x1388, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 1402, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":1404
 *         cuGetProcAddress('cuTexRefSetMipmapLevelBias', &__cuTexRefSetMipmapLevelBias, 5000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuTexRefSetMipmapLevelClamp
 *         cuGetProcAddress('cuTexRefSetMipmapLevelClamp', &__cuTexRefSetMipmapLevelClamp, 5000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuTexRefSetMaxAnisotropy
 *         cuGetProcAddress('cuTexRefSetMaxAnisotropy', &__cuTexRefSetMaxAnisotropy, 5000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuTexRefSetMipmapLevelClamp"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuTexRefSetMipmapLevelClamp), 0x1388, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 1404, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":1406
 *         cuGetProcAddress('cuTexRefSetMipmapLevelClamp', &__cuTexRefSetMipmapLevelClamp, 5000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuTexRefSetMaxAnisotropy
 *         cuGetProcAddress('cuTexRefSetMaxAnisotropy', &__cuTexRefSetMaxAnisotropy, 5000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuTexRefSetBorderColor
 *         cuGetProcAddress('cuTexRefSetBorderColor', &__cuTexRefSetBorderColor, 8000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuTexRefSetMaxAnisotropy"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuTexRefSetMaxAnisotropy), 0x1388, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 1406, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":1408
 *         cuGetProcAddress('cuTexRefSetMaxAnisotropy', &__cuTexRefSetMaxAnisotropy, 5000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuTexRefSetBorderColor
 *         cuGetProcAddress('cuTexRefSetBorderColor', &__cuTexRefSetBorderColor, 8000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuTexRefSetFlags
 *         cuGetProcAddress('cuTexRefSetFlags', &__cuTexRefSetFlags, 2000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuTexRefSetBorderColor"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuTexRefSetBorderColor), 0x1F40, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 1408, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":1410
 *         cuGetProcAddress('cuTexRefSetBorderColor', &__cuTexRefSetBorderColor, 8000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuTexRefSetFlags
 *         cuGetProcAddress('cuTexRefSetFlags', &__cuTexRefSetFlags, 2000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuTexRefGetAddress_v2
 *         cuGetProcAddress('cuTexRefGetAddress', &__cuTexRefGetAddress_v2, 3020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuTexRefSetFlags"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuTexRefSetFlags), 0x7D0, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 1410, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":1412
 *         cuGetProcAddress('cuTexRefSetFlags', &__cuTexRefSetFlags, 2000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuTexRefGetAddress_v2
 *         cuGetProcAddress('cuTexRefGetAddress', &__cuTexRefGetAddress_v2, 3020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuTexRefGetArray
 *         cuGetProcAddress('cuTexRefGetArray', &__cuTexRefGetArray, 2000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuTexRefGetAddress"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuTexRefGetAddress_v2), 0xBCC, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 1412, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":1414
 *         cuGetProcAddress('cuTexRefGetAddress', &__cuTexRefGetAddress_v2, 3020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuTexRefGetArray
 *         cuGetProcAddress('cuTexRefGetArray', &__cuTexRefGetArray, 2000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuTexRefGetMipmappedArray
 *         cuGetProcAddress('cuTexRefGetMipmappedArray', &__cuTexRefGetMipmappedArray, 5000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuTexRefGetArray"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuTexRefGetArray), 0x7D0, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 1414, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":1416
 *         cuGetProcAddress('cuTexRefGetArray', &__cuTexRefGetArray, 2000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuTexRefGetMipmappedArray
 *         cuGetProcAddress('cuTexRefGetMipmappedArray', &__cuTexRefGetMipmappedArray, 5000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuTexRefGetAddressMode
 *         cuGetProcAddress('cuTexRefGetAddressMode', &__cuTexRefGetAddressMode, 2000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuTexRefGetMipmappedArray"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuTexRefGetMipmappedArray), 0x1388, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 1416, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":1418
 *         cuGetProcAddress('cuTexRefGetMipmappedArray', &__cuTexRefGetMipmappedArray, 5000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuTexRefGetAddressMode
 *         cuGetProcAddress('cuTexRefGetAddressMode', &__cuTexRefGetAddressMode, 2000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuTexRefGetFilterMode
 *         cuGetProcAddress('cuTexRefGetFilterMode', &__cuTexRefGetFilterMode, 2000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuTexRefGetAddressMode"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuTexRefGetAddressMode), 0x7D0, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 1418, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":1420
 *         cuGetProcAddress('cuTexRefGetAddressMode', &__cuTexRefGetAddressMode, 2000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuTexRefGetFilterMode
 *         cuGetProcAddress('cuTexRefGetFilterMode', &__cuTexRefGetFilterMode, 2000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuTexRefGetFormat
 *         cuGetProcAddress('cuTexRefGetFormat', &__cuTexRefGetFormat, 2000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuTexRefGetFilterMode"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuTexRefGetFilterMode), 0x7D0, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 1420, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":1422
 *         cuGetProcAddress('cuTexRefGetFilterMode', &__cuTexRefGetFilterMode, 2000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuTexRefGetFormat
 *         cuGetProcAddress('cuTexRefGetFormat', &__cuTexRefGetFormat, 2000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuTexRefGetMipmapFilterMode
 *         cuGetProcAddress('cuTexRefGetMipmapFilterMode', &__cuTexRefGetMipmapFilterMode, 5000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuTexRefGetFormat"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuTexRefGetFormat), 0x7D0, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 1422, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":1424
 *         cuGetProcAddress('cuTexRefGetFormat', &__cuTexRefGetFormat, 2000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuTexRefGetMipmapFilterMode
 *         cuGetProcAddress('cuTexRefGetMipmapFilterMode', &__cuTexRefGetMipmapFilterMode, 5000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuTexRefGetMipmapLevelBias
 *         cuGetProcAddress('cuTexRefGetMipmapLevelBias', &__cuTexRefGetMipmapLevelBias, 5000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuTexRefGetMipmapFilterMode"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuTexRefGetMipmapFilterMode), 0x1388, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 1424, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":1426
 *         cuGetProcAddress('cuTexRefGetMipmapFilterMode', &__cuTexRefGetMipmapFilterMode, 5000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuTexRefGetMipmapLevelBias
 *         cuGetProcAddress('cuTexRefGetMipmapLevelBias', &__cuTexRefGetMipmapLevelBias, 5000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuTexRefGetMipmapLevelClamp
 *         cuGetProcAddress('cuTexRefGetMipmapLevelClamp', &__cuTexRefGetMipmapLevelClamp, 5000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuTexRefGetMipmapLevelBias"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuTexRefGetMipmapLevelBias), 0x1388, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 1426, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":1428
 *         cuGetProcAddress('cuTexRefGetMipmapLevelBias', &__cuTexRefGetMipmapLevelBias, 5000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuTexRefGetMipmapLevelClamp
 *         cuGetProcAddress('cuTexRefGetMipmapLevelClamp', &__cuTexRefGetMipmapLevelClamp, 5000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuTexRefGetMaxAnisotropy
 *         cuGetProcAddress('cuTexRefGetMaxAnisotropy', &__cuTexRefGetMaxAnisotropy, 5000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuTexRefGetMipmapLevelClamp"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuTexRefGetMipmapLevelClamp), 0x1388, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 1428, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":1430
 *         cuGetProcAddress('cuTexRefGetMipmapLevelClamp', &__cuTexRefGetMipmapLevelClamp, 5000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuTexRefGetMaxAnisotropy
 *         cuGetProcAddress('cuTexRefGetMaxAnisotropy', &__cuTexRefGetMaxAnisotropy, 5000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuTexRefGetBorderColor
 *         cuGetProcAddress('cuTexRefGetBorderColor', &__cuTexRefGetBorderColor, 8000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuTexRefGetMaxAnisotropy"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuTexRefGetMaxAnisotropy), 0x1388, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 1430, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":1432
 *         cuGetProcAddress('cuTexRefGetMaxAnisotropy', &__cuTexRefGetMaxAnisotropy, 5000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuTexRefGetBorderColor
 *         cuGetProcAddress('cuTexRefGetBorderColor', &__cuTexRefGetBorderColor, 8000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuTexRefGetFlags
 *         cuGetProcAddress('cuTexRefGetFlags', &__cuTexRefGetFlags, 2000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuTexRefGetBorderColor"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuTexRefGetBorderColor), 0x1F40, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 1432, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":1434
 *         cuGetProcAddress('cuTexRefGetBorderColor', &__cuTexRefGetBorderColor, 8000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuTexRefGetFlags
 *         cuGetProcAddress('cuTexRefGetFlags', &__cuTexRefGetFlags, 2000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuTexRefCreate
 *         cuGetProcAddress('cuTexRefCreate', &__cuTexRefCreate, 2000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuTexRefGetFlags"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuTexRefGetFlags), 0x7D0, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 1434, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":1436
 *         cuGetProcAddress('cuTexRefGetFlags', &__cuTexRefGetFlags, 2000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuTexRefCreate
 *         cuGetProcAddress('cuTexRefCreate', &__cuTexRefCreate, 2000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuTexRefDestroy
 *         cuGetProcAddress('cuTexRefDestroy', &__cuTexRefDestroy, 2000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuTexRefCreate"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuTexRefCreate), 0x7D0, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 1436, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":1438
 *         cuGetProcAddress('cuTexRefCreate', &__cuTexRefCreate, 2000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuTexRefDestroy
 *         cuGetProcAddress('cuTexRefDestroy', &__cuTexRefDestroy, 2000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuSurfRefSetArray
 *         cuGetProcAddress('cuSurfRefSetArray', &__cuSurfRefSetArray, 3000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuTexRefDestroy"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuTexRefDestroy), 0x7D0, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 1438, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":1440
 *         cuGetProcAddress('cuTexRefDestroy', &__cuTexRefDestroy, 2000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuSurfRefSetArray
 *         cuGetProcAddress('cuSurfRefSetArray', &__cuSurfRefSetArray, 3000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuSurfRefGetArray
 *         cuGetProcAddress('cuSurfRefGetArray', &__cuSurfRefGetArray, 3000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuSurfRefSetArray"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuSurfRefSetArray), 0xBB8, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 1440, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":1442
 *         cuGetProcAddress('cuSurfRefSetArray', &__cuSurfRefSetArray, 3000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuSurfRefGetArray
 *         cuGetProcAddress('cuSurfRefGetArray', &__cuSurfRefGetArray, 3000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuTexObjectCreate
 *         cuGetProcAddress('cuTexObjectCreate', &__cuTexObjectCreate, 5000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuSurfRefGetArray"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuSurfRefGetArray), 0xBB8, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 1442, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":1444
 *         cuGetProcAddress('cuSurfRefGetArray', &__cuSurfRefGetArray, 3000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuTexObjectCreate
 *         cuGetProcAddress('cuTexObjectCreate', &__cuTexObjectCreate, 5000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuTexObjectDestroy
 *         cuGetProcAddress('cuTexObjectDestroy', &__cuTexObjectDestroy, 5000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuTexObjectCreate"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuTexObjectCreate), 0x1388, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 1444, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":1446
 *         cuGetProcAddress('cuTexObjectCreate', &__cuTexObjectCreate, 5000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuTexObjectDestroy
 *         cuGetProcAddress('cuTexObjectDestroy', &__cuTexObjectDestroy, 5000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuTexObjectGetResourceDesc
 *         cuGetProcAddress('cuTexObjectGetResourceDesc', &__cuTexObjectGetResourceDesc, 5000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuTexObjectDestroy"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuTexObjectDestroy), 0x1388, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 1446, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":1448
 *         cuGetProcAddress('cuTexObjectDestroy', &__cuTexObjectDestroy, 5000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuTexObjectGetResourceDesc
 *         cuGetProcAddress('cuTexObjectGetResourceDesc', &__cuTexObjectGetResourceDesc, 5000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuTexObjectGetTextureDesc
 *         cuGetProcAddress('cuTexObjectGetTextureDesc', &__cuTexObjectGetTextureDesc, 5000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuTexObjectGetResourceDesc"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuTexObjectGetResourceDesc), 0x1388, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 1448, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":1450
 *         cuGetProcAddress('cuTexObjectGetResourceDesc', &__cuTexObjectGetResourceDesc, 5000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuTexObjectGetTextureDesc
 *         cuGetProcAddress('cuTexObjectGetTextureDesc', &__cuTexObjectGetTextureDesc, 5000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuTexObjectGetResourceViewDesc
 *         cuGetProcAddress('cuTexObjectGetResourceViewDesc', &__cuTexObjectGetResourceViewDesc, 5000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuTexObjectGetTextureDesc"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuTexObjectGetTextureDesc), 0x1388, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 1450, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":1452
 *         cuGetProcAddress('cuTexObjectGetTextureDesc', &__cuTexObjectGetTextureDesc, 5000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuTexObjectGetResourceViewDesc
 *         cuGetProcAddress('cuTexObjectGetResourceViewDesc', &__cuTexObjectGetResourceViewDesc, 5000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuSurfObjectCreate
 *         cuGetProcAddress('cuSurfObjectCreate', &__cuSurfObjectCreate, 5000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuTexObjectGetResourceViewDesc"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuTexObjectGetResourceViewDesc), 0x1388, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 1452, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":1454
 *         cuGetProcAddress('cuTexObjectGetResourceViewDesc', &__cuTexObjectGetResourceViewDesc, 5000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuSurfObjectCreate
 *         cuGetProcAddress('cuSurfObjectCreate', &__cuSurfObjectCreate, 5000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuSurfObjectDestroy
 *         cuGetProcAddress('cuSurfObjectDestroy', &__cuSurfObjectDestroy, 5000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuSurfObjectCreate"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuSurfObjectCreate), 0x1388, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 1454, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":1456
 *         cuGetProcAddress('cuSurfObjectCreate', &__cuSurfObjectCreate, 5000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuSurfObjectDestroy
 *         cuGetProcAddress('cuSurfObjectDestroy', &__cuSurfObjectDestroy, 5000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuSurfObjectGetResourceDesc
 *         cuGetProcAddress('cuSurfObjectGetResourceDesc', &__cuSurfObjectGetResourceDesc, 5000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuSurfObjectDestroy"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuSurfObjectDestroy), 0x1388, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 1456, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":1458
 *         cuGetProcAddress('cuSurfObjectDestroy', &__cuSurfObjectDestroy, 5000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuSurfObjectGetResourceDesc
 *         cuGetProcAddress('cuSurfObjectGetResourceDesc', &__cuSurfObjectGetResourceDesc, 5000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuTensorMapEncodeTiled
 *         cuGetProcAddress('cuTensorMapEncodeTiled', &__cuTensorMapEncodeTiled, 12000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuSurfObjectGetResourceDesc"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuSurfObjectGetResourceDesc), 0x1388, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 1458, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":1460
 *         cuGetProcAddress('cuSurfObjectGetResourceDesc', &__cuSurfObjectGetResourceDesc, 5000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuTensorMapEncodeTiled
 *         cuGetProcAddress('cuTensorMapEncodeTiled', &__cuTensorMapEncodeTiled, 12000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuTensorMapEncodeIm2col
 *         cuGetProcAddress('cuTensorMapEncodeIm2col', &__cuTensorMapEncodeIm2col, 12000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuTensorMapEncodeTiled"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuTensorMapEncodeTiled), 0x2EE0, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 1460, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":1462
 *         cuGetProcAddress('cuTensorMapEncodeTiled', &__cuTensorMapEncodeTiled, 12000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuTensorMapEncodeIm2col
 *         cuGetProcAddress('cuTensorMapEncodeIm2col', &__cuTensorMapEncodeIm2col, 12000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuTensorMapReplaceAddress
 *         cuGetProcAddress('cuTensorMapReplaceAddress', &__cuTensorMapReplaceAddress, 12000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuTensorMapEncodeIm2col"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuTensorMapEncodeIm2col), 0x2EE0, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 1462, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":1464
 *         cuGetProcAddress('cuTensorMapEncodeIm2col', &__cuTensorMapEncodeIm2col, 12000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuTensorMapReplaceAddress
 *         cuGetProcAddress('cuTensorMapReplaceAddress', &__cuTensorMapReplaceAddress, 12000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuDeviceCanAccessPeer
 *         cuGetProcAddress('cuDeviceCanAccessPeer', &__cuDeviceCanAccessPeer, 4000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuTensorMapReplaceAddress"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuTensorMapReplaceAddress), 0x2EE0, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 1464, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":1466
 *         cuGetProcAddress('cuTensorMapReplaceAddress', &__cuTensorMapReplaceAddress, 12000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuDeviceCanAccessPeer
 *         cuGetProcAddress('cuDeviceCanAccessPeer', &__cuDeviceCanAccessPeer, 4000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuCtxEnablePeerAccess
 *         cuGetProcAddress('cuCtxEnablePeerAccess', &__cuCtxEnablePeerAccess, 4000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuDeviceCanAccessPeer"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuDeviceCanAccessPeer), 0xFA0, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 1466, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":1468
 *         cuGetProcAddress('cuDeviceCanAccessPeer', &__cuDeviceCanAccessPeer, 4000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuCtxEnablePeerAccess
 *         cuGetProcAddress('cuCtxEnablePeerAccess', &__cuCtxEnablePeerAccess, 4000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuCtxDisablePeerAccess
 *         cuGetProcAddress('cuCtxDisablePeerAccess', &__cuCtxDisablePeerAccess, 4000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuCtxEnablePeerAccess"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuCtxEnablePeerAccess), 0xFA0, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 1468, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":1470
 *         cuGetProcAddress('cuCtxEnablePeerAccess', &__cuCtxEnablePeerAccess, 4000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuCtxDisablePeerAccess
 *         cuGetProcAddress('cuCtxDisablePeerAccess', &__cuCtxDisablePeerAccess, 4000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuDeviceGetP2PAttribute
 *         cuGetProcAddress('cuDeviceGetP2PAttribute', &__cuDeviceGetP2PAttribute, 8000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuCtxDisablePeerAccess"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuCtxDisablePeerAccess), 0xFA0, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 1470, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":1472
 *         cuGetProcAddress('cuCtxDisablePeerAccess', &__cuCtxDisablePeerAccess, 4000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuDeviceGetP2PAttribute
 *         cuGetProcAddress('cuDeviceGetP2PAttribute', &__cuDeviceGetP2PAttribute, 8000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuGraphicsUnregisterResource
 *         cuGetProcAddress('cuGraphicsUnregisterResource', &__cuGraphicsUnregisterResource, 3000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuDeviceGetP2PAttribute"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuDeviceGetP2PAttribute), 0x1F40, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 1472, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":1474
 *         cuGetProcAddress('cuDeviceGetP2PAttribute', &__cuDeviceGetP2PAttribute, 8000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuGraphicsUnregisterResource
 *         cuGetProcAddress('cuGraphicsUnregisterResource', &__cuGraphicsUnregisterResource, 3000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuGraphicsSubResourceGetMappedArray
 *         cuGetProcAddress('cuGraphicsSubResourceGetMappedArray', &__cuGraphicsSubResourceGetMappedArray, 3000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuGraphicsUnregisterResource"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuGraphicsUnregisterResource), 0xBB8, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 1474, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":1476
 *         cuGetProcAddress('cuGraphicsUnregisterResource', &__cuGraphicsUnregisterResource, 3000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuGraphicsSubResourceGetMappedArray
 *         cuGetProcAddress('cuGraphicsSubResourceGetMappedArray', &__cuGraphicsSubResourceGetMappedArray, 3000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuGraphicsResourceGetMappedMipmappedArray
 *         cuGetProcAddress('cuGraphicsResourceGetMappedMipmappedArray', &__cuGraphicsResourceGetMappedMipmappedArray, 5000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuGraphicsSubResourceGetMappedArray"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuGraphicsSubResourceGetMappedArray), 0xBB8, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 1476, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":1478
 *         cuGetProcAddress('cuGraphicsSubResourceGetMappedArray', &__cuGraphicsSubResourceGetMappedArray, 3000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuGraphicsResourceGetMappedMipmappedArray
 *         cuGetProcAddress('cuGraphicsResourceGetMappedMipmappedArray', &__cuGraphicsResourceGetMappedMipmappedArray, 5000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuGraphicsResourceGetMappedPointer_v2
 *         cuGetProcAddress('cuGraphicsResourceGetMappedPointer', &__cuGraphicsResourceGetMappedPointer_v2, 3020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuGraphicsResourceGetMappedMipmappedArray"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuGraphicsResourceGetMappedMipmappedArray), 0x1388, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 1478, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":1480
 *         cuGetProcAddress('cuGraphicsResourceGetMappedMipmappedArray', &__cuGraphicsResourceGetMappedMipmappedArray, 5000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuGraphicsResourceGetMappedPointer_v2
 *         cuGetProcAddress('cuGraphicsResourceGetMappedPointer', &__cuGraphicsResourceGetMappedPointer_v2, 3020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuGraphicsResourceSetMapFlags_v2
 *         cuGetProcAddress('cuGraphicsResourceSetMapFlags', &__cuGraphicsResourceSetMapFlags_v2, 6050, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuGraphicsResourceGetMappedPointer"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuGraphicsResourceGetMappedPointer_v2), 0xBCC, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 1480, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":1482
 *         cuGetProcAddress('cuGraphicsResourceGetMappedPointer', &__cuGraphicsResourceGetMappedPointer_v2, 3020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuGraphicsResourceSetMapFlags_v2
 *         cuGetProcAddress('cuGraphicsResourceSetMapFlags', &__cuGraphicsResourceSetMapFlags_v2, 6050, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuGetProcAddress_v2
 *         cuGetProcAddress('cuGetProcAddress', &__cuGetProcAddress_v2, 12000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuGraphicsResourceSetMapFlags"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuGraphicsResourceSetMapFlags_v2), 0x17A2, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 1482, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":1484
 *         cuGetProcAddress('cuGraphicsResourceSetMapFlags', &__cuGraphicsResourceSetMapFlags_v2, 6050, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuGetProcAddress_v2
 *         cuGetProcAddress('cuGetProcAddress', &__cuGetProcAddress_v2, 12000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuCoredumpGetAttribute
 *         cuGetProcAddress('cuCoredumpGetAttribute', &__cuCoredumpGetAttribute, 12010, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuGetProcAddress"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuGetProcAddress_v2), 0x2EE0, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 1484, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":1486
 *         cuGetProcAddress('cuGetProcAddress', &__cuGetProcAddress_v2, 12000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuCoredumpGetAttribute
 *         cuGetProcAddress('cuCoredumpGetAttribute', &__cuCoredumpGetAttribute, 12010, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuCoredumpGetAttributeGlobal
 *         cuGetProcAddress('cuCoredumpGetAttributeGlobal', &__cuCoredumpGetAttributeGlobal, 12010, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuCoredumpGetAttribute"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuCoredumpGetAttribute), 0x2EEA, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 1486, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":1488
 *         cuGetProcAddress('cuCoredumpGetAttribute', &__cuCoredumpGetAttribute, 12010, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuCoredumpGetAttributeGlobal
 *         cuGetProcAddress('cuCoredumpGetAttributeGlobal', &__cuCoredumpGetAttributeGlobal, 12010, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuCoredumpSetAttribute
 *         cuGetProcAddress('cuCoredumpSetAttribute', &__cuCoredumpSetAttribute, 12010, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuCoredumpGetAttributeGlobal"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuCoredumpGetAttributeGlobal), 0x2EEA, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 1488, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":1490
 *         cuGetProcAddress('cuCoredumpGetAttributeGlobal', &__cuCoredumpGetAttributeGlobal, 12010, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuCoredumpSetAttribute
 *         cuGetProcAddress('cuCoredumpSetAttribute', &__cuCoredumpSetAttribute, 12010, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuCoredumpSetAttributeGlobal
 *         cuGetProcAddress('cuCoredumpSetAttributeGlobal', &__cuCoredumpSetAttributeGlobal, 12010, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuCoredumpSetAttribute"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuCoredumpSetAttribute), 0x2EEA, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 1490, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":1492
 *         cuGetProcAddress('cuCoredumpSetAttribute', &__cuCoredumpSetAttribute, 12010, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuCoredumpSetAttributeGlobal
 *         cuGetProcAddress('cuCoredumpSetAttributeGlobal', &__cuCoredumpSetAttributeGlobal, 12010, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuGetExportTable
 *         cuGetProcAddress('cuGetExportTable', &__cuGetExportTable, 3000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuCoredumpSetAttributeGlobal"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuCoredumpSetAttributeGlobal), 0x2EEA, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 1492, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":1494
 *         cuGetProcAddress('cuCoredumpSetAttributeGlobal', &__cuCoredumpSetAttributeGlobal, 12010, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuGetExportTable
 *         cuGetProcAddress('cuGetExportTable', &__cuGetExportTable, 3000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuGreenCtxCreate
 *         cuGetProcAddress('cuGreenCtxCreate', &__cuGreenCtxCreate, 12040, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuGetExportTable"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuGetExportTable), 0xBB8, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 1494, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":1496
 *         cuGetProcAddress('cuGetExportTable', &__cuGetExportTable, 3000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuGreenCtxCreate
 *         cuGetProcAddress('cuGreenCtxCreate', &__cuGreenCtxCreate, 12040, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuGreenCtxDestroy
 *         cuGetProcAddress('cuGreenCtxDestroy', &__cuGreenCtxDestroy, 12040, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuGreenCtxCreate"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuGreenCtxCreate), 0x2F08, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 1496, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":1498
 *         cuGetProcAddress('cuGreenCtxCreate', &__cuGreenCtxCreate, 12040, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuGreenCtxDestroy
 *         cuGetProcAddress('cuGreenCtxDestroy', &__cuGreenCtxDestroy, 12040, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuCtxFromGreenCtx
 *         cuGetProcAddress('cuCtxFromGreenCtx', &__cuCtxFromGreenCtx, 12040, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuGreenCtxDestroy"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuGreenCtxDestroy), 0x2F08, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 1498, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":1500
 *         cuGetProcAddress('cuGreenCtxDestroy', &__cuGreenCtxDestroy, 12040, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuCtxFromGreenCtx
 *         cuGetProcAddress('cuCtxFromGreenCtx', &__cuCtxFromGreenCtx, 12040, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuDeviceGetDevResource
 *         cuGetProcAddress('cuDeviceGetDevResource', &__cuDeviceGetDevResource, 12040, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuCtxFromGreenCtx"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuCtxFromGreenCtx), 0x2F08, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 1500, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":1502
 *         cuGetProcAddress('cuCtxFromGreenCtx', &__cuCtxFromGreenCtx, 12040, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuDeviceGetDevResource
 *         cuGetProcAddress('cuDeviceGetDevResource', &__cuDeviceGetDevResource, 12040, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuCtxGetDevResource
 *         cuGetProcAddress('cuCtxGetDevResource', &__cuCtxGetDevResource, 12040, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuDeviceGetDevResource"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuDeviceGetDevResource), 0x2F08, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 1502, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":1504
 *         cuGetProcAddress('cuDeviceGetDevResource', &__cuDeviceGetDevResource, 12040, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuCtxGetDevResource
 *         cuGetProcAddress('cuCtxGetDevResource', &__cuCtxGetDevResource, 12040, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuGreenCtxGetDevResource
 *         cuGetProcAddress('cuGreenCtxGetDevResource', &__cuGreenCtxGetDevResource, 12040, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuCtxGetDevResource"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuCtxGetDevResource), 0x2F08, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 1504, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":1506
 *         cuGetProcAddress('cuCtxGetDevResource', &__cuCtxGetDevResource, 12040, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuGreenCtxGetDevResource
 *         cuGetProcAddress('cuGreenCtxGetDevResource', &__cuGreenCtxGetDevResource, 12040, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuDevSmResourceSplitByCount
 *         cuGetProcAddress('cuDevSmResourceSplitByCount', &__cuDevSmResourceSplitByCount, 12040, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuGreenCtxGetDevResource"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuGreenCtxGetDevResource), 0x2F08, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 1506, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":1508
 *         cuGetProcAddress('cuGreenCtxGetDevResource', &__cuGreenCtxGetDevResource, 12040, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuDevSmResourceSplitByCount
 *         cuGetProcAddress('cuDevSmResourceSplitByCount', &__cuDevSmResourceSplitByCount, 12040, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuDevResourceGenerateDesc
 *         cuGetProcAddress('cuDevResourceGenerateDesc', &__cuDevResourceGenerateDesc, 12040, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuDevSmResourceSplitByCount"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuDevSmResourceSplitByCount), 0x2F08, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 1508, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":1510
 *         cuGetProcAddress('cuDevSmResourceSplitByCount', &__cuDevSmResourceSplitByCount, 12040, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuDevResourceGenerateDesc
 *         cuGetProcAddress('cuDevResourceGenerateDesc', &__cuDevResourceGenerateDesc, 12040, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuGreenCtxRecordEvent
 *         cuGetProcAddress('cuGreenCtxRecordEvent', &__cuGreenCtxRecordEvent, 12040, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuDevResourceGenerateDesc"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuDevResourceGenerateDesc), 0x2F08, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 1510, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":1512
 *         cuGetProcAddress('cuDevResourceGenerateDesc', &__cuDevResourceGenerateDesc, 12040, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuGreenCtxRecordEvent
 *         cuGetProcAddress('cuGreenCtxRecordEvent', &__cuGreenCtxRecordEvent, 12040, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuGreenCtxWaitEvent
 *         cuGetProcAddress('cuGreenCtxWaitEvent', &__cuGreenCtxWaitEvent, 12040, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuGreenCtxRecordEvent"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuGreenCtxRecordEvent), 0x2F08, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 1512, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":1514
 *         cuGetProcAddress('cuGreenCtxRecordEvent', &__cuGreenCtxRecordEvent, 12040, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuGreenCtxWaitEvent
 *         cuGetProcAddress('cuGreenCtxWaitEvent', &__cuGreenCtxWaitEvent, 12040, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuStreamGetGreenCtx
 *         cuGetProcAddress('cuStreamGetGreenCtx', &__cuStreamGetGreenCtx, 12040, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuGreenCtxWaitEvent"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuGreenCtxWaitEvent), 0x2F08, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 1514, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":1516
 *         cuGetProcAddress('cuGreenCtxWaitEvent', &__cuGreenCtxWaitEvent, 12040, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuStreamGetGreenCtx
 *         cuGetProcAddress('cuStreamGetGreenCtx', &__cuStreamGetGreenCtx, 12040, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuProfilerStart
 *         cuGetProcAddress('cuProfilerStart', &__cuProfilerStart, 4000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuStreamGetGreenCtx"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuStreamGetGreenCtx), 0x2F08, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 1516, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":1518
 *         cuGetProcAddress('cuStreamGetGreenCtx', &__cuStreamGetGreenCtx, 12040, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuProfilerStart
 *         cuGetProcAddress('cuProfilerStart', &__cuProfilerStart, 4000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuProfilerStop
 *         cuGetProcAddress('cuProfilerStop', &__cuProfilerStop, 4000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuProfilerStart"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuProfilerStart), 0xFA0, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 1518, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":1520
 *         cuGetProcAddress('cuProfilerStart', &__cuProfilerStart, 4000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuProfilerStop
 *         cuGetProcAddress('cuProfilerStop', &__cuProfilerStop, 4000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuGraphicsEGLRegisterImage
 *         cuGetProcAddress('cuGraphicsEGLRegisterImage', &__cuGraphicsEGLRegisterImage, 7000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuProfilerStop"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuProfilerStop), 0xFA0, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 1520, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":1522
 *         cuGetProcAddress('cuProfilerStop', &__cuProfilerStop, 4000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuGraphicsEGLRegisterImage
 *         cuGetProcAddress('cuGraphicsEGLRegisterImage', &__cuGraphicsEGLRegisterImage, 7000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuEGLStreamConsumerConnect
 *         cuGetProcAddress('cuEGLStreamConsumerConnect', &__cuEGLStreamConsumerConnect, 7000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuGraphicsEGLRegisterImage"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuGraphicsEGLRegisterImage), 0x1B58, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 1522, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":1524
 *         cuGetProcAddress('cuGraphicsEGLRegisterImage', &__cuGraphicsEGLRegisterImage, 7000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuEGLStreamConsumerConnect
 *         cuGetProcAddress('cuEGLStreamConsumerConnect', &__cuEGLStreamConsumerConnect, 7000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuEGLStreamConsumerConnectWithFlags
 *         cuGetProcAddress('cuEGLStreamConsumerConnectWithFlags', &__cuEGLStreamConsumerConnectWithFlags, 8000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuEGLStreamConsumerConnect"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuEGLStreamConsumerConnect), 0x1B58, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 1524, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":1526
 *         cuGetProcAddress('cuEGLStreamConsumerConnect', &__cuEGLStreamConsumerConnect, 7000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuEGLStreamConsumerConnectWithFlags
 *         cuGetProcAddress('cuEGLStreamConsumerConnectWithFlags', &__cuEGLStreamConsumerConnectWithFlags, 8000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuEGLStreamConsumerDisconnect
 *         cuGetProcAddress('cuEGLStreamConsumerDisconnect', &__cuEGLStreamConsumerDisconnect, 7000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuEGLStreamConsumerConnectWithFlags"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuEGLStreamConsumerConnectWithFlags), 0x1F40, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 1526, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":1528
 *         cuGetProcAddress('cuEGLStreamConsumerConnectWithFlags', &__cuEGLStreamConsumerConnectWithFlags, 8000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuEGLStreamConsumerDisconnect
 *         cuGetProcAddress('cuEGLStreamConsumerDisconnect', &__cuEGLStreamConsumerDisconnect, 7000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuEGLStreamConsumerAcquireFrame
 *         cuGetProcAddress('cuEGLStreamConsumerAcquireFrame', &__cuEGLStreamConsumerAcquireFrame, 7000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuEGLStreamConsumerDisconnect"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuEGLStreamConsumerDisconnect), 0x1B58, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 1528, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":1530
 *         cuGetProcAddress('cuEGLStreamConsumerDisconnect', &__cuEGLStreamConsumerDisconnect, 7000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuEGLStreamConsumerAcquireFrame
 *         cuGetProcAddress('cuEGLStreamConsumerAcquireFrame', &__cuEGLStreamConsumerAcquireFrame, 7000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuEGLStreamConsumerReleaseFrame
 *         cuGetProcAddress('cuEGLStreamConsumerReleaseFrame', &__cuEGLStreamConsumerReleaseFrame, 7000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuEGLStreamConsumerAcquireFrame"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuEGLStreamConsumerAcquireFrame), 0x1B58, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 1530, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":1532
 *         cuGetProcAddress('cuEGLStreamConsumerAcquireFrame', &__cuEGLStreamConsumerAcquireFrame, 7000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuEGLStreamConsumerReleaseFrame
 *         cuGetProcAddress('cuEGLStreamConsumerReleaseFrame', &__cuEGLStreamConsumerReleaseFrame, 7000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuEGLStreamProducerConnect
 *         cuGetProcAddress('cuEGLStreamProducerConnect', &__cuEGLStreamProducerConnect, 7000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuEGLStreamConsumerReleaseFrame"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuEGLStreamConsumerReleaseFrame), 0x1B58, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 1532, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":1534
 *         cuGetProcAddress('cuEGLStreamConsumerReleaseFrame', &__cuEGLStreamConsumerReleaseFrame, 7000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuEGLStreamProducerConnect
 *         cuGetProcAddress('cuEGLStreamProducerConnect', &__cuEGLStreamProducerConnect, 7000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuEGLStreamProducerDisconnect
 *         cuGetProcAddress('cuEGLStreamProducerDisconnect', &__cuEGLStreamProducerDisconnect, 7000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuEGLStreamProducerConnect"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuEGLStreamProducerConnect), 0x1B58, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 1534, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":1536
 *         cuGetProcAddress('cuEGLStreamProducerConnect', &__cuEGLStreamProducerConnect, 7000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuEGLStreamProducerDisconnect
 *         cuGetProcAddress('cuEGLStreamProducerDisconnect', &__cuEGLStreamProducerDisconnect, 7000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuEGLStreamProducerPresentFrame
 *         cuGetProcAddress('cuEGLStreamProducerPresentFrame', &__cuEGLStreamProducerPresentFrame, 7000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuEGLStreamProducerDisconnect"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuEGLStreamProducerDisconnect), 0x1B58, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 1536, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":1538
 *         cuGetProcAddress('cuEGLStreamProducerDisconnect', &__cuEGLStreamProducerDisconnect, 7000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuEGLStreamProducerPresentFrame
 *         cuGetProcAddress('cuEGLStreamProducerPresentFrame', &__cuEGLStreamProducerPresentFrame, 7000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuEGLStreamProducerReturnFrame
 *         cuGetProcAddress('cuEGLStreamProducerReturnFrame', &__cuEGLStreamProducerReturnFrame, 7000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuEGLStreamProducerPresentFrame"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuEGLStreamProducerPresentFrame), 0x1B58, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 1538, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":1540
 *         cuGetProcAddress('cuEGLStreamProducerPresentFrame', &__cuEGLStreamProducerPresentFrame, 7000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuEGLStreamProducerReturnFrame
 *         cuGetProcAddress('cuEGLStreamProducerReturnFrame', &__cuEGLStreamProducerReturnFrame, 7000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuGraphicsResourceGetMappedEglFrame
 *         cuGetProcAddress('cuGraphicsResourceGetMappedEglFrame', &__cuGraphicsResourceGetMappedEglFrame, 7000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuEGLStreamProducerReturnFrame"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuEGLStreamProducerReturnFrame), 0x1B58, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 1540, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":1542
 *         cuGetProcAddress('cuEGLStreamProducerReturnFrame', &__cuEGLStreamProducerReturnFrame, 7000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuGraphicsResourceGetMappedEglFrame
 *         cuGetProcAddress('cuGraphicsResourceGetMappedEglFrame', &__cuGraphicsResourceGetMappedEglFrame, 7000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuEventCreateFromEGLSync
 *         cuGetProcAddress('cuEventCreateFromEGLSync', &__cuEventCreateFromEGLSync, 9000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuGraphicsResourceGetMappedEglFrame"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuGraphicsResourceGetMappedEglFrame), 0x1B58, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 1542, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":1544
 *         cuGetProcAddress('cuGraphicsResourceGetMappedEglFrame', &__cuGraphicsResourceGetMappedEglFrame, 7000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuEventCreateFromEGLSync
 *         cuGetProcAddress('cuEventCreateFromEGLSync', &__cuEventCreateFromEGLSync, 9000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuGraphicsGLRegisterBuffer
 *         cuGetProcAddress('cuGraphicsGLRegisterBuffer', &__cuGraphicsGLRegisterBuffer, 3000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuEventCreateFromEGLSync"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuEventCreateFromEGLSync), 0x2328, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 1544, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":1546
 *         cuGetProcAddress('cuEventCreateFromEGLSync', &__cuEventCreateFromEGLSync, 9000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuGraphicsGLRegisterBuffer
 *         cuGetProcAddress('cuGraphicsGLRegisterBuffer', &__cuGraphicsGLRegisterBuffer, 3000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuGraphicsGLRegisterImage
 *         cuGetProcAddress('cuGraphicsGLRegisterImage', &__cuGraphicsGLRegisterImage, 3000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuGraphicsGLRegisterBuffer"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuGraphicsGLRegisterBuffer), 0xBB8, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 1546, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":1548
 *         cuGetProcAddress('cuGraphicsGLRegisterBuffer', &__cuGraphicsGLRegisterBuffer, 3000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuGraphicsGLRegisterImage
 *         cuGetProcAddress('cuGraphicsGLRegisterImage', &__cuGraphicsGLRegisterImage, 3000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuGLGetDevices_v2
 *         cuGetProcAddress('cuGLGetDevices', &__cuGLGetDevices_v2, 6050, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuGraphicsGLRegisterImage"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuGraphicsGLRegisterImage), 0xBB8, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 1548, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":1550
 *         cuGetProcAddress('cuGraphicsGLRegisterImage', &__cuGraphicsGLRegisterImage, 3000, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuGLGetDevices_v2
 *         cuGetProcAddress('cuGLGetDevices', &__cuGLGetDevices_v2, 6050, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuVDPAUGetDevice
 *         cuGetProcAddress('cuVDPAUGetDevice', &__cuVDPAUGetDevice, 3010, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuGLGetDevices"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuGLGetDevices_v2), 0x17A2, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 1550, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":1552
 *         cuGetProcAddress('cuGLGetDevices', &__cuGLGetDevices_v2, 6050, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuVDPAUGetDevice
 *         cuGetProcAddress('cuVDPAUGetDevice', &__cuVDPAUGetDevice, 3010, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuVDPAUCtxCreate_v2
 *         cuGetProcAddress('cuVDPAUCtxCreate', &__cuVDPAUCtxCreate_v2, 3020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuVDPAUGetDevice"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuVDPAUGetDevice), 0xBC2, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 1552, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":1554
 *         cuGetProcAddress('cuVDPAUGetDevice', &__cuVDPAUGetDevice, 3010, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuVDPAUCtxCreate_v2
 *         cuGetProcAddress('cuVDPAUCtxCreate', &__cuVDPAUCtxCreate_v2, 3020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuGraphicsVDPAURegisterVideoSurface
 *         cuGetProcAddress('cuGraphicsVDPAURegisterVideoSurface', &__cuGraphicsVDPAURegisterVideoSurface, 3010, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuVDPAUCtxCreate"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuVDPAUCtxCreate_v2), 0xBCC, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 1554, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":1556
 *         cuGetProcAddress('cuVDPAUCtxCreate', &__cuVDPAUCtxCreate_v2, 3020, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuGraphicsVDPAURegisterVideoSurface
 *         cuGetProcAddress('cuGraphicsVDPAURegisterVideoSurface', &__cuGraphicsVDPAURegisterVideoSurface, 3010, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         global __cuGraphicsVDPAURegisterOutputSurface
 *         cuGetProcAddress('cuGraphicsVDPAURegisterOutputSurface', &__cuGraphicsVDPAURegisterOutputSurface, 3010, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuGraphicsVDPAURegisterVideoSurface"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuGraphicsVDPAURegisterVideoSurface), 0xBC2, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 1556, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":1558
 *         cuGetProcAddress('cuGraphicsVDPAURegisterVideoSurface', &__cuGraphicsVDPAURegisterVideoSurface, 3010, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         global __cuGraphicsVDPAURegisterOutputSurface
 *         cuGetProcAddress('cuGraphicsVDPAURegisterOutputSurface', &__cuGraphicsVDPAURegisterOutputSurface, 3010, CU_GET_PROC_ADDRESS_DEFAULT, NULL)             # <<<<<<<<<<<<<<
 *         return 0
 * 
 */
    __pyx_t_8 = __pyx_f_4cuda_5ccuda_cuGetProcAddress(((char const *)"cuGraphicsVDPAURegisterOutputSurface"), (&__pyx_v_4cuda_5_cuda_5ccuda___cuGraphicsVDPAURegisterOutputSurface), 0xBC2, CU_GET_PROC_ADDRESS_DEFAULT, NULL); if (unlikely(__pyx_t_8 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 1558, __pyx_L1_error)

    /* "cuda/_cuda/ccuda.pyx":1559
 *         global __cuGraphicsVDPAURegisterOutputSurface
 *         cuGetProcAddress('cuGraphicsVDPAURegisterOutputSurface', &__cuGraphicsVDPAURegisterOutputSurface, 3010, CU_GET_PROC_ADDRESS_DEFAULT, NULL)
 *         return 0             # <<<<<<<<<<<<<<
 * 
 *     # Load using dlsym
 */
    __pyx_r = 0;
    goto __pyx_L0;

    /* "cuda/_cuda/ccuda.pyx":491
 * 
 *     # Load using cuGetProcAddress if available
 *     if __cuGetProcAddress_v2 != NULL:             # <<<<<<<<<<<<<<
 *         if usePTDS:
 *             # Get all PTDS version of functions
 */
  }

  /* "cuda/_cuda/ccuda.pyx":1562
 * 
 *     # Load using dlsym
 *     if usePTDS:             # <<<<<<<<<<<<<<
 *         # Get all PTDS version of functions
 *         pass
 */
  if (__pyx_v_usePTDS) {

    /* "cuda/_cuda/ccuda.pyx":1566
 *         pass
 *         global __cuMemcpy
 *         __cuMemcpy = dlfcn.dlsym(handle, 'cuMemcpy_ptds')             # <<<<<<<<<<<<<<
 *         global __cuMemcpyPeer
 *         __cuMemcpyPeer = dlfcn.dlsym(handle, 'cuMemcpyPeer_ptds')
 */
    __pyx_v_4cuda_5_cuda_5ccuda___cuMemcpy = dlsym(__pyx_v_handle, ((char const *)"cuMemcpy_ptds"));

    /* "cuda/_cuda/ccuda.pyx":1568
 *         __cuMemcpy = dlfcn.dlsym(handle, 'cuMemcpy_ptds')
 *         global __cuMemcpyPeer
 *         __cuMemcpyPeer = dlfcn.dlsym(handle, 'cuMemcpyPeer_ptds')             # <<<<<<<<<<<<<<
 *         global __cuMemcpyHtoD_v2
 *         __cuMemcpyHtoD_v2 = dlfcn.dlsym(handle, 'cuMemcpyHtoD_v2_ptds')
 */
    __pyx_v_4cuda_5_cuda_5ccuda___cuMemcpyPeer = dlsym(__pyx_v_handle, ((char const *)"cuMemcpyPeer_ptds"));

    /* "cuda/_cuda/ccuda.pyx":1570
 *         __cuMemcpyPeer = dlfcn.dlsym(handle, 'cuMemcpyPeer_ptds')
 *         global __cuMemcpyHtoD_v2
 *         __cuMemcpyHtoD_v2 = dlfcn.dlsym(handle, 'cuMemcpyHtoD_v2_ptds')             # <<<<<<<<<<<<<<
 *         global __cuMemcpyDtoH_v2
 *         __cuMemcpyDtoH_v2 = dlfcn.dlsym(handle, 'cuMemcpyDtoH_v2_ptds')
 */
    __pyx_v_4cuda_5_cuda_5ccuda___cuMemcpyHtoD_v2 = dlsym(__pyx_v_handle, ((char const *)"cuMemcpyHtoD_v2_ptds"));

    /* "cuda/_cuda/ccuda.pyx":1572
 *         __cuMemcpyHtoD_v2 = dlfcn.dlsym(handle, 'cuMemcpyHtoD_v2_ptds')
 *         global __cuMemcpyDtoH_v2
 *         __cuMemcpyDtoH_v2 = dlfcn.dlsym(handle, 'cuMemcpyDtoH_v2_ptds')             # <<<<<<<<<<<<<<
 *         global __cuMemcpyDtoD_v2
 *         __cuMemcpyDtoD_v2 = dlfcn.dlsym(handle, 'cuMemcpyDtoD_v2_ptds')
 */
    __pyx_v_4cuda_5_cuda_5ccuda___cuMemcpyDtoH_v2 = dlsym(__pyx_v_handle, ((char const *)"cuMemcpyDtoH_v2_ptds"));

    /* "cuda/_cuda/ccuda.pyx":1574
 *         __cuMemcpyDtoH_v2 = dlfcn.dlsym(handle, 'cuMemcpyDtoH_v2_ptds')
 *         global __cuMemcpyDtoD_v2
 *         __cuMemcpyDtoD_v2 = dlfcn.dlsym(handle, 'cuMemcpyDtoD_v2_ptds')             # <<<<<<<<<<<<<<
 *         global __cuMemcpyDtoA_v2
 *         __cuMemcpyDtoA_v2 = dlfcn.dlsym(handle, 'cuMemcpyDtoA_v2_ptds')
 */
    __pyx_v_4cuda_5_cuda_5ccuda___cuMemcpyDtoD_v2 = dlsym(__pyx_v_handle, ((char const *)"cuMemcpyDtoD_v2_ptds"));

    /* "cuda/_cuda/ccuda.pyx":1576
 *         __cuMemcpyDtoD_v2 = dlfcn.dlsym(handle, 'cuMemcpyDtoD_v2_ptds')
 *         global __cuMemcpyDtoA_v2
 *         __cuMemcpyDtoA_v2 = dlfcn.dlsym(handle, 'cuMemcpyDtoA_v2_ptds')             # <<<<<<<<<<<<<<
 *         global __cuMemcpyAtoD_v2
 *         __cuMemcpyAtoD_v2 = dlfcn.dlsym(handle, 'cuMemcpyAtoD_v2_ptds')
 */
    __pyx_v_4cuda_5_cuda_5ccuda___cuMemcpyDtoA_v2 = dlsym(__pyx_v_handle, ((char const *)"cuMemcpyDtoA_v2_ptds"));

    /* "cuda/_cuda/ccuda.pyx":1578
 *         __cuMemcpyDtoA_v2 = dlfcn.dlsym(handle, 'cuMemcpyDtoA_v2_ptds')
 *         global __cuMemcpyAtoD_v2
 *         __cuMemcpyAtoD_v2 = dlfcn.dlsym(handle, 'cuMemcpyAtoD_v2_ptds')             # <<<<<<<<<<<<<<
 *         global __cuMemcpyHtoA_v2
 *         __cuMemcpyHtoA_v2 = dlfcn.dlsym(handle, 'cuMemcpyHtoA_v2_ptds')
 */
    __pyx_v_4cuda_5_cuda_5ccuda___cuMemcpyAtoD_v2 = dlsym(__pyx_v_handle, ((char const *)"cuMemcpyAtoD_v2_ptds"));

    /* "cuda/_cuda/ccuda.pyx":1580
 *         __cuMemcpyAtoD_v2 = dlfcn.dlsym(handle, 'cuMemcpyAtoD_v2_ptds')
 *         global __cuMemcpyHtoA_v2
 *         __cuMemcpyHtoA_v2 = dlfcn.dlsym(handle, 'cuMemcpyHtoA_v2_ptds')             # <<<<<<<<<<<<<<
 *         global __cuMemcpyAtoH_v2
 *         __cuMemcpyAtoH_v2 = dlfcn.dlsym(handle, 'cuMemcpyAtoH_v2_ptds')
 */
    __pyx_v_4cuda_5_cuda_5ccuda___cuMemcpyHtoA_v2 = dlsym(__pyx_v_handle, ((char const *)"cuMemcpyHtoA_v2_ptds"));

    /* "cuda/_cuda/ccuda.pyx":1582
 *         __cuMemcpyHtoA_v2 = dlfcn.dlsym(handle, 'cuMemcpyHtoA_v2_ptds')
 *         global __cuMemcpyAtoH_v2
 *         __cuMemcpyAtoH_v2 = dlfcn.dlsym(handle, 'cuMemcpyAtoH_v2_ptds')             # <<<<<<<<<<<<<<
 *         global __cuMemcpyAtoA_v2
 *         __cuMemcpyAtoA_v2 = dlfcn.dlsym(handle, 'cuMemcpyAtoA_v2_ptds')
 */
    __pyx_v_4cuda_5_cuda_5ccuda___cuMemcpyAtoH_v2 = dlsym(__pyx_v_handle, ((char const *)"cuMemcpyAtoH_v2_ptds"));

    /* "cuda/_cuda/ccuda.pyx":1584
 *         __cuMemcpyAtoH_v2 = dlfcn.dlsym(handle, 'cuMemcpyAtoH_v2_ptds')
 *         global __cuMemcpyAtoA_v2
 *         __cuMemcpyAtoA_v2 = dlfcn.dlsym(handle, 'cuMemcpyAtoA_v2_ptds')             # <<<<<<<<<<<<<<
 *         global __cuMemcpy2D_v2
 *         __cuMemcpy2D_v2 = dlfcn.dlsym(handle, 'cuMemcpy2D_v2_ptds')
 */
    __pyx_v_4cuda_5_cuda_5ccuda___cuMemcpyAtoA_v2 = dlsym(__pyx_v_handle, ((char const *)"cuMemcpyAtoA_v2_ptds"));

    /* "cuda/_cuda/ccuda.pyx":1586
 *         __cuMemcpyAtoA_v2 = dlfcn.dlsym(handle, 'cuMemcpyAtoA_v2_ptds')
 *         global __cuMemcpy2D_v2
 *         __cuMemcpy2D_v2 = dlfcn.dlsym(handle, 'cuMemcpy2D_v2_ptds')             # <<<<<<<<<<<<<<
 *         global __cuMemcpy2DUnaligned_v2
 *         __cuMemcpy2DUnaligned_v2 = dlfcn.dlsym(handle, 'cuMemcpy2DUnaligned_v2_ptds')
 */
    __pyx_v_4cuda_5_cuda_5ccuda___cuMemcpy2D_v2 = dlsym(__pyx_v_handle, ((char const *)"cuMemcpy2D_v2_ptds"));

    /* "cuda/_cuda/ccuda.pyx":1588
 *         __cuMemcpy2D_v2 = dlfcn.dlsym(handle, 'cuMemcpy2D_v2_ptds')
 *         global __cuMemcpy2DUnaligned_v2
 *         __cuMemcpy2DUnaligned_v2 = dlfcn.dlsym(handle, 'cuMemcpy2DUnaligned_v2_ptds')             # <<<<<<<<<<<<<<
 *         global __cuMemcpy3D_v2
 *         __cuMemcpy3D_v2 = dlfcn.dlsym(handle, 'cuMemcpy3D_v2_ptds')
 */
    __pyx_v_4cuda_5_cuda_5ccuda___cuMemcpy2DUnaligned_v2 = dlsym(__pyx_v_handle, ((char const *)"cuMemcpy2DUnaligned_v2_ptds"));

    /* "cuda/_cuda/ccuda.pyx":1590
 *         __cuMemcpy2DUnaligned_v2 = dlfcn.dlsym(handle, 'cuMemcpy2DUnaligned_v2_ptds')
 *         global __cuMemcpy3D_v2
 *         __cuMemcpy3D_v2 = dlfcn.dlsym(handle, 'cuMemcpy3D_v2_ptds')             # <<<<<<<<<<<<<<
 *         global __cuMemcpy3DPeer
 *         __cuMemcpy3DPeer = dlfcn.dlsym(handle, 'cuMemcpy3DPeer_ptds')
 */
    __pyx_v_4cuda_5_cuda_5ccuda___cuMemcpy3D_v2 = dlsym(__pyx_v_handle, ((char const *)"cuMemcpy3D_v2_ptds"));

    /* "cuda/_cuda/ccuda.pyx":1592
 *         __cuMemcpy3D_v2 = dlfcn.dlsym(handle, 'cuMemcpy3D_v2_ptds')
 *         global __cuMemcpy3DPeer
 *         __cuMemcpy3DPeer = dlfcn.dlsym(handle, 'cuMemcpy3DPeer_ptds')             # <<<<<<<<<<<<<<
 *         global __cuMemcpyAsync
 *         __cuMemcpyAsync = dlfcn.dlsym(handle, 'cuMemcpyAsync_ptsz')
 */
    __pyx_v_4cuda_5_cuda_5ccuda___cuMemcpy3DPeer = dlsym(__pyx_v_handle, ((char const *)"cuMemcpy3DPeer_ptds"));

    /* "cuda/_cuda/ccuda.pyx":1594
 *         __cuMemcpy3DPeer = dlfcn.dlsym(handle, 'cuMemcpy3DPeer_ptds')
 *         global __cuMemcpyAsync
 *         __cuMemcpyAsync = dlfcn.dlsym(handle, 'cuMemcpyAsync_ptsz')             # <<<<<<<<<<<<<<
 *         global __cuMemcpyPeerAsync
 *         __cuMemcpyPeerAsync = dlfcn.dlsym(handle, 'cuMemcpyPeerAsync_ptsz')
 */
    __pyx_v_4cuda_5_cuda_5ccuda___cuMemcpyAsync = dlsym(__pyx_v_handle, ((char const *)"cuMemcpyAsync_ptsz"));

    /* "cuda/_cuda/ccuda.pyx":1596
 *         __cuMemcpyAsync = dlfcn.dlsym(handle, 'cuMemcpyAsync_ptsz')
 *         global __cuMemcpyPeerAsync
 *         __cuMemcpyPeerAsync = dlfcn.dlsym(handle, 'cuMemcpyPeerAsync_ptsz')             # <<<<<<<<<<<<<<
 *         global __cuMemcpyHtoDAsync_v2
 *         __cuMemcpyHtoDAsync_v2 = dlfcn.dlsym(handle, 'cuMemcpyHtoDAsync_v2_ptsz')
 */
    __pyx_v_4cuda_5_cuda_5ccuda___cuMemcpyPeerAsync = dlsym(__pyx_v_handle, ((char const *)"cuMemcpyPeerAsync_ptsz"));

    /* "cuda/_cuda/ccuda.pyx":1598
 *         __cuMemcpyPeerAsync = dlfcn.dlsym(handle, 'cuMemcpyPeerAsync_ptsz')
 *         global __cuMemcpyHtoDAsync_v2
 *         __cuMemcpyHtoDAsync_v2 = dlfcn.dlsym(handle, 'cuMemcpyHtoDAsync_v2_ptsz')             # <<<<<<<<<<<<<<
 *         global __cuMemcpyDtoHAsync_v2
 *         __cuMemcpyDtoHAsync_v2 = dlfcn.dlsym(handle, 'cuMemcpyDtoHAsync_v2_ptsz')
 */
    __pyx_v_4cuda_5_cuda_5ccuda___cuMemcpyHtoDAsync_v2 = dlsym(__pyx_v_handle, ((char const *)"cuMemcpyHtoDAsync_v2_ptsz"));

    /* "cuda/_cuda/ccuda.pyx":1600
 *         __cuMemcpyHtoDAsync_v2 = dlfcn.dlsym(handle, 'cuMemcpyHtoDAsync_v2_ptsz')
 *         global __cuMemcpyDtoHAsync_v2
 *         __cuMemcpyDtoHAsync_v2 = dlfcn.dlsym(handle, 'cuMemcpyDtoHAsync_v2_ptsz')             # <<<<<<<<<<<<<<
 *         global __cuMemcpyDtoDAsync_v2
 *         __cuMemcpyDtoDAsync_v2 = dlfcn.dlsym(handle, 'cuMemcpyDtoDAsync_v2_ptsz')
 */
    __pyx_v_4cuda_5_cuda_5ccuda___cuMemcpyDtoHAsync_v2 = dlsym(__pyx_v_handle, ((char const *)"cuMemcpyDtoHAsync_v2_ptsz"));

    /* "cuda/_cuda/ccuda.pyx":1602
 *         __cuMemcpyDtoHAsync_v2 = dlfcn.dlsym(handle, 'cuMemcpyDtoHAsync_v2_ptsz')
 *         global __cuMemcpyDtoDAsync_v2
 *         __cuMemcpyDtoDAsync_v2 = dlfcn.dlsym(handle, 'cuMemcpyDtoDAsync_v2_ptsz')             # <<<<<<<<<<<<<<
 *         global __cuMemcpyHtoAAsync_v2
 *         __cuMemcpyHtoAAsync_v2 = dlfcn.dlsym(handle, 'cuMemcpyHtoAAsync_v2_ptsz')
 */
    __pyx_v_4cuda_5_cuda_5ccuda___cuMemcpyDtoDAsync_v2 = dlsym(__pyx_v_handle, ((char const *)"cuMemcpyDtoDAsync_v2_ptsz"));

    /* "cuda/_cuda/ccuda.pyx":1604
 *         __cuMemcpyDtoDAsync_v2 = dlfcn.dlsym(handle, 'cuMemcpyDtoDAsync_v2_ptsz')
 *         global __cuMemcpyHtoAAsync_v2
 *         __cuMemcpyHtoAAsync_v2 = dlfcn.dlsym(handle, 'cuMemcpyHtoAAsync_v2_ptsz')             # <<<<<<<<<<<<<<
 *         global __cuMemcpyAtoHAsync_v2
 *         __cuMemcpyAtoHAsync_v2 = dlfcn.dlsym(handle, 'cuMemcpyAtoHAsync_v2_ptsz')
 */
    __pyx_v_4cuda_5_cuda_5ccuda___cuMemcpyHtoAAsync_v2 = dlsym(__pyx_v_handle, ((char const *)"cuMemcpyHtoAAsync_v2_ptsz"));

    /* "cuda/_cuda/ccuda.pyx":1606
 *         __cuMemcpyHtoAAsync_v2 = dlfcn.dlsym(handle, 'cuMemcpyHtoAAsync_v2_ptsz')
 *         global __cuMemcpyAtoHAsync_v2
 *         __cuMemcpyAtoHAsync_v2 = dlfcn.dlsym(handle, 'cuMemcpyAtoHAsync_v2_ptsz')             # <<<<<<<<<<<<<<
 *         global __cuMemcpy2DAsync_v2
 *         __cuMemcpy2DAsync_v2 = dlfcn.dlsym(handle, 'cuMemcpy2DAsync_v2_ptsz')
 */
    __pyx_v_4cuda_5_cuda_5ccuda___cuMemcpyAtoHAsync_v2 = dlsym(__pyx_v_handle, ((char const *)"cuMemcpyAtoHAsync_v2_ptsz"));

    /* "cuda/_cuda/ccuda.pyx":1608
 *         __cuMemcpyAtoHAsync_v2 = dlfcn.dlsym(handle, 'cuMemcpyAtoHAsync_v2_ptsz')
 *         global __cuMemcpy2DAsync_v2
 *         __cuMemcpy2DAsync_v2 = dlfcn.dlsym(handle, 'cuMemcpy2DAsync_v2_ptsz')             # <<<<<<<<<<<<<<
 *         global __cuMemcpy3DAsync_v2
 *         __cuMemcpy3DAsync_v2 = dlfcn.dlsym(handle, 'cuMemcpy3DAsync_v2_ptsz')
 */
    __pyx_v_4cuda_5_cuda_5ccuda___cuMemcpy2DAsync_v2 = dlsym(__pyx_v_handle, ((char const *)"cuMemcpy2DAsync_v2_ptsz"));

    /* "cuda/_cuda/ccuda.pyx":1610
 *         __cuMemcpy2DAsync_v2 = dlfcn.dlsym(handle, 'cuMemcpy2DAsync_v2_ptsz')
 *         global __cuMemcpy3DAsync_v2
 *         __cuMemcpy3DAsync_v2 = dlfcn.dlsym(handle, 'cuMemcpy3DAsync_v2_ptsz')             # <<<<<<<<<<<<<<
 *         global __cuMemcpy3DPeerAsync
 *         __cuMemcpy3DPeerAsync = dlfcn.dlsym(handle, 'cuMemcpy3DPeerAsync_ptsz')
 */
    __pyx_v_4cuda_5_cuda_5ccuda___cuMemcpy3DAsync_v2 = dlsym(__pyx_v_handle, ((char const *)"cuMemcpy3DAsync_v2_ptsz"));

    /* "cuda/_cuda/ccuda.pyx":1612
 *         __cuMemcpy3DAsync_v2 = dlfcn.dlsym(handle, 'cuMemcpy3DAsync_v2_ptsz')
 *         global __cuMemcpy3DPeerAsync
 *         __cuMemcpy3DPeerAsync = dlfcn.dlsym(handle, 'cuMemcpy3DPeerAsync_ptsz')             # <<<<<<<<<<<<<<
 *         global __cuMemsetD8_v2
 *         __cuMemsetD8_v2 = dlfcn.dlsym(handle, 'cuMemsetD8_v2_ptds')
 */
    __pyx_v_4cuda_5_cuda_5ccuda___cuMemcpy3DPeerAsync = dlsym(__pyx_v_handle, ((char const *)"cuMemcpy3DPeerAsync_ptsz"));

    /* "cuda/_cuda/ccuda.pyx":1614
 *         __cuMemcpy3DPeerAsync = dlfcn.dlsym(handle, 'cuMemcpy3DPeerAsync_ptsz')
 *         global __cuMemsetD8_v2
 *         __cuMemsetD8_v2 = dlfcn.dlsym(handle, 'cuMemsetD8_v2_ptds')             # <<<<<<<<<<<<<<
 *         global __cuMemsetD16_v2
 *         __cuMemsetD16_v2 = dlfcn.dlsym(handle, 'cuMemsetD16_v2_ptds')
 */
    __pyx_v_4cuda_5_cuda_5ccuda___cuMemsetD8_v2 = dlsym(__pyx_v_handle, ((char const *)"cuMemsetD8_v2_ptds"));

    /* "cuda/_cuda/ccuda.pyx":1616
 *         __cuMemsetD8_v2 = dlfcn.dlsym(handle, 'cuMemsetD8_v2_ptds')
 *         global __cuMemsetD16_v2
 *         __cuMemsetD16_v2 = dlfcn.dlsym(handle, 'cuMemsetD16_v2_ptds')             # <<<<<<<<<<<<<<
 *         global __cuMemsetD32_v2
 *         __cuMemsetD32_v2 = dlfcn.dlsym(handle, 'cuMemsetD32_v2_ptds')
 */
    __pyx_v_4cuda_5_cuda_5ccuda___cuMemsetD16_v2 = dlsym(__pyx_v_handle, ((char const *)"cuMemsetD16_v2_ptds"));

    /* "cuda/_cuda/ccuda.pyx":1618
 *         __cuMemsetD16_v2 = dlfcn.dlsym(handle, 'cuMemsetD16_v2_ptds')
 *         global __cuMemsetD32_v2
 *         __cuMemsetD32_v2 = dlfcn.dlsym(handle, 'cuMemsetD32_v2_ptds')             # <<<<<<<<<<<<<<
 *         global __cuMemsetD2D8_v2
 *         __cuMemsetD2D8_v2 = dlfcn.dlsym(handle, 'cuMemsetD2D8_v2_ptds')
 */
    __pyx_v_4cuda_5_cuda_5ccuda___cuMemsetD32_v2 = dlsym(__pyx_v_handle, ((char const *)"cuMemsetD32_v2_ptds"));

    /* "cuda/_cuda/ccuda.pyx":1620
 *         __cuMemsetD32_v2 = dlfcn.dlsym(handle, 'cuMemsetD32_v2_ptds')
 *         global __cuMemsetD2D8_v2
 *         __cuMemsetD2D8_v2 = dlfcn.dlsym(handle, 'cuMemsetD2D8_v2_ptds')             # <<<<<<<<<<<<<<
 *         global __cuMemsetD2D16_v2
 *         __cuMemsetD2D16_v2 = dlfcn.dlsym(handle, 'cuMemsetD2D16_v2_ptds')
 */
    __pyx_v_4cuda_5_cuda_5ccuda___cuMemsetD2D8_v2 = dlsym(__pyx_v_handle, ((char const *)"cuMemsetD2D8_v2_ptds"));

    /* "cuda/_cuda/ccuda.pyx":1622
 *         __cuMemsetD2D8_v2 = dlfcn.dlsym(handle, 'cuMemsetD2D8_v2_ptds')
 *         global __cuMemsetD2D16_v2
 *         __cuMemsetD2D16_v2 = dlfcn.dlsym(handle, 'cuMemsetD2D16_v2_ptds')             # <<<<<<<<<<<<<<
 *         global __cuMemsetD2D32_v2
 *         __cuMemsetD2D32_v2 = dlfcn.dlsym(handle, 'cuMemsetD2D32_v2_ptds')
 */
    __pyx_v_4cuda_5_cuda_5ccuda___cuMemsetD2D16_v2 = dlsym(__pyx_v_handle, ((char const *)"cuMemsetD2D16_v2_ptds"));

    /* "cuda/_cuda/ccuda.pyx":1624
 *         __cuMemsetD2D16_v2 = dlfcn.dlsym(handle, 'cuMemsetD2D16_v2_ptds')
 *         global __cuMemsetD2D32_v2
 *         __cuMemsetD2D32_v2 = dlfcn.dlsym(handle, 'cuMemsetD2D32_v2_ptds')             # <<<<<<<<<<<<<<
 *         global __cuMemsetD8Async
 *         __cuMemsetD8Async = dlfcn.dlsym(handle, 'cuMemsetD8Async_ptsz')
 */
    __pyx_v_4cuda_5_cuda_5ccuda___cuMemsetD2D32_v2 = dlsym(__pyx_v_handle, ((char const *)"cuMemsetD2D32_v2_ptds"));

    /* "cuda/_cuda/ccuda.pyx":1626
 *         __cuMemsetD2D32_v2 = dlfcn.dlsym(handle, 'cuMemsetD2D32_v2_ptds')
 *         global __cuMemsetD8Async
 *         __cuMemsetD8Async = dlfcn.dlsym(handle, 'cuMemsetD8Async_ptsz')             # <<<<<<<<<<<<<<
 *         global __cuMemsetD16Async
 *         __cuMemsetD16Async = dlfcn.dlsym(handle, 'cuMemsetD16Async_ptsz')
 */
    __pyx_v_4cuda_5_cuda_5ccuda___cuMemsetD8Async = dlsym(__pyx_v_handle, ((char const *)"cuMemsetD8Async_ptsz"));

    /* "cuda/_cuda/ccuda.pyx":1628
 *         __cuMemsetD8Async = dlfcn.dlsym(handle, 'cuMemsetD8Async_ptsz')
 *         global __cuMemsetD16Async
 *         __cuMemsetD16Async = dlfcn.dlsym(handle, 'cuMemsetD16Async_ptsz')             # <<<<<<<<<<<<<<
 *         global __cuMemsetD32Async
 *         __cuMemsetD32Async = dlfcn.dlsym(handle, 'cuMemsetD32Async_ptsz')
 */
    __pyx_v_4cuda_5_cuda_5ccuda___cuMemsetD16Async = dlsym(__pyx_v_handle, ((char const *)"cuMemsetD16Async_ptsz"));

    /* "cuda/_cuda/ccuda.pyx":1630
 *         __cuMemsetD16Async = dlfcn.dlsym(handle, 'cuMemsetD16Async_ptsz')
 *         global __cuMemsetD32Async
 *         __cuMemsetD32Async = dlfcn.dlsym(handle, 'cuMemsetD32Async_ptsz')             # <<<<<<<<<<<<<<
 *         global __cuMemsetD2D8Async
 *         __cuMemsetD2D8Async = dlfcn.dlsym(handle, 'cuMemsetD2D8Async_ptsz')
 */
    __pyx_v_4cuda_5_cuda_5ccuda___cuMemsetD32Async = dlsym(__pyx_v_handle, ((char const *)"cuMemsetD32Async_ptsz"));

    /* "cuda/_cuda/ccuda.pyx":1632
 *         __cuMemsetD32Async = dlfcn.dlsym(handle, 'cuMemsetD32Async_ptsz')
 *         global __cuMemsetD2D8Async
 *         __cuMemsetD2D8Async = dlfcn.dlsym(handle, 'cuMemsetD2D8Async_ptsz')             # <<<<<<<<<<<<<<
 *         global __cuMemsetD2D16Async
 *         __cuMemsetD2D16Async = dlfcn.dlsym(handle, 'cuMemsetD2D16Async_ptsz')
 */
    __pyx_v_4cuda_5_cuda_5ccuda___cuMemsetD2D8Async = dlsym(__pyx_v_handle, ((char const *)"cuMemsetD2D8Async_ptsz"));

    /* "cuda/_cuda/ccuda.pyx":1634
 *         __cuMemsetD2D8Async = dlfcn.dlsym(handle, 'cuMemsetD2D8Async_ptsz')
 *         global __cuMemsetD2D16Async
 *         __cuMemsetD2D16Async = dlfcn.dlsym(handle, 'cuMemsetD2D16Async_ptsz')             # <<<<<<<<<<<<<<
 *         global __cuMemsetD2D32Async
 *         __cuMemsetD2D32Async = dlfcn.dlsym(handle, 'cuMemsetD2D32Async_ptsz')
 */
    __pyx_v_4cuda_5_cuda_5ccuda___cuMemsetD2D16Async = dlsym(__pyx_v_handle, ((char const *)"cuMemsetD2D16Async_ptsz"));

    /* "cuda/_cuda/ccuda.pyx":1636
 *         __cuMemsetD2D16Async = dlfcn.dlsym(handle, 'cuMemsetD2D16Async_ptsz')
 *         global __cuMemsetD2D32Async
 *         __cuMemsetD2D32Async = dlfcn.dlsym(handle, 'cuMemsetD2D32Async_ptsz')             # <<<<<<<<<<<<<<
 *         global __cuMemMapArrayAsync
 *         __cuMemMapArrayAsync = dlfcn.dlsym(handle, 'cuMemMapArrayAsync_ptsz')
 */
    __pyx_v_4cuda_5_cuda_5ccuda___cuMemsetD2D32Async = dlsym(__pyx_v_handle, ((char const *)"cuMemsetD2D32Async_ptsz"));

    /* "cuda/_cuda/ccuda.pyx":1638
 *         __cuMemsetD2D32Async = dlfcn.dlsym(handle, 'cuMemsetD2D32Async_ptsz')
 *         global __cuMemMapArrayAsync
 *         __cuMemMapArrayAsync = dlfcn.dlsym(handle, 'cuMemMapArrayAsync_ptsz')             # <<<<<<<<<<<<<<
 *         global __cuMemFreeAsync
 *         __cuMemFreeAsync = dlfcn.dlsym(handle, 'cuMemFreeAsync_ptsz')
 */
    __pyx_v_4cuda_5_cuda_5ccuda___cuMemMapArrayAsync = dlsym(__pyx_v_handle, ((char const *)"cuMemMapArrayAsync_ptsz"));

    /* "cuda/_cuda/ccuda.pyx":1640
 *         __cuMemMapArrayAsync = dlfcn.dlsym(handle, 'cuMemMapArrayAsync_ptsz')
 *         global __cuMemFreeAsync
 *         __cuMemFreeAsync = dlfcn.dlsym(handle, 'cuMemFreeAsync_ptsz')             # <<<<<<<<<<<<<<
 *         global __cuMemAllocAsync
 *         __cuMemAllocAsync = dlfcn.dlsym(handle, 'cuMemAllocAsync_ptsz')
 */
    __pyx_v_4cuda_5_cuda_5ccuda___cuMemFreeAsync = dlsym(__pyx_v_handle, ((char const *)"cuMemFreeAsync_ptsz"));

    /* "cuda/_cuda/ccuda.pyx":1642
 *         __cuMemFreeAsync = dlfcn.dlsym(handle, 'cuMemFreeAsync_ptsz')
 *         global __cuMemAllocAsync
 *         __cuMemAllocAsync = dlfcn.dlsym(handle, 'cuMemAllocAsync_ptsz')             # <<<<<<<<<<<<<<
 *         global __cuMemAllocFromPoolAsync
 *         __cuMemAllocFromPoolAsync = dlfcn.dlsym(handle, 'cuMemAllocFromPoolAsync_ptsz')
 */
    __pyx_v_4cuda_5_cuda_5ccuda___cuMemAllocAsync = dlsym(__pyx_v_handle, ((char const *)"cuMemAllocAsync_ptsz"));

    /* "cuda/_cuda/ccuda.pyx":1644
 *         __cuMemAllocAsync = dlfcn.dlsym(handle, 'cuMemAllocAsync_ptsz')
 *         global __cuMemAllocFromPoolAsync
 *         __cuMemAllocFromPoolAsync = dlfcn.dlsym(handle, 'cuMemAllocFromPoolAsync_ptsz')             # <<<<<<<<<<<<<<
 *         global __cuMemPrefetchAsync
 *         __cuMemPrefetchAsync = dlfcn.dlsym(handle, 'cuMemPrefetchAsync_ptsz')
 */
    __pyx_v_4cuda_5_cuda_5ccuda___cuMemAllocFromPoolAsync = dlsym(__pyx_v_handle, ((char const *)"cuMemAllocFromPoolAsync_ptsz"));

    /* "cuda/_cuda/ccuda.pyx":1646
 *         __cuMemAllocFromPoolAsync = dlfcn.dlsym(handle, 'cuMemAllocFromPoolAsync_ptsz')
 *         global __cuMemPrefetchAsync
 *         __cuMemPrefetchAsync = dlfcn.dlsym(handle, 'cuMemPrefetchAsync_ptsz')             # <<<<<<<<<<<<<<
 *         global __cuMemPrefetchAsync_v2
 *         __cuMemPrefetchAsync_v2 = dlfcn.dlsym(handle, 'cuMemPrefetchAsync_v2_ptsz')
 */
    __pyx_v_4cuda_5_cuda_5ccuda___cuMemPrefetchAsync = dlsym(__pyx_v_handle, ((char const *)"cuMemPrefetchAsync_ptsz"));

    /* "cuda/_cuda/ccuda.pyx":1648
 *         __cuMemPrefetchAsync = dlfcn.dlsym(handle, 'cuMemPrefetchAsync_ptsz')
 *         global __cuMemPrefetchAsync_v2
 *         __cuMemPrefetchAsync_v2 = dlfcn.dlsym(handle, 'cuMemPrefetchAsync_v2_ptsz')             # <<<<<<<<<<<<<<
 *         global __cuStreamGetPriority
 *         __cuStreamGetPriority = dlfcn.dlsym(handle, 'cuStreamGetPriority_ptsz')
 */
    __pyx_v_4cuda_5_cuda_5ccuda___cuMemPrefetchAsync_v2 = dlsym(__pyx_v_handle, ((char const *)"cuMemPrefetchAsync_v2_ptsz"));

    /* "cuda/_cuda/ccuda.pyx":1650
 *         __cuMemPrefetchAsync_v2 = dlfcn.dlsym(handle, 'cuMemPrefetchAsync_v2_ptsz')
 *         global __cuStreamGetPriority
 *         __cuStreamGetPriority = dlfcn.dlsym(handle, 'cuStreamGetPriority_ptsz')             # <<<<<<<<<<<<<<
 *         global __cuStreamGetFlags
 *         __cuStreamGetFlags = dlfcn.dlsym(handle, 'cuStreamGetFlags_ptsz')
 */
    __pyx_v_4cuda_5_cuda_5ccuda___cuStreamGetPriority = dlsym(__pyx_v_handle, ((char const *)"cuStreamGetPriority_ptsz"));

    /* "cuda/_cuda/ccuda.pyx":1652
 *         __cuStreamGetPriority = dlfcn.dlsym(handle, 'cuStreamGetPriority_ptsz')
 *         global __cuStreamGetFlags
 *         __cuStreamGetFlags = dlfcn.dlsym(handle, 'cuStreamGetFlags_ptsz')             # <<<<<<<<<<<<<<
 *         global __cuStreamGetId
 *         __cuStreamGetId = dlfcn.dlsym(handle, 'cuStreamGetId_ptsz')
 */
    __pyx_v_4cuda_5_cuda_5ccuda___cuStreamGetFlags = dlsym(__pyx_v_handle, ((char const *)"cuStreamGetFlags_ptsz"));

    /* "cuda/_cuda/ccuda.pyx":1654
 *         __cuStreamGetFlags = dlfcn.dlsym(handle, 'cuStreamGetFlags_ptsz')
 *         global __cuStreamGetId
 *         __cuStreamGetId = dlfcn.dlsym(handle, 'cuStreamGetId_ptsz')             # <<<<<<<<<<<<<<
 *         global __cuStreamGetCtx
 *         __cuStreamGetCtx = dlfcn.dlsym(handle, 'cuStreamGetCtx_ptsz')
 */
    __pyx_v_4cuda_5_cuda_5ccuda___cuStreamGetId = dlsym(__pyx_v_handle, ((char const *)"cuStreamGetId_ptsz"));

    /* "cuda/_cuda/ccuda.pyx":1656
 *         __cuStreamGetId = dlfcn.dlsym(handle, 'cuStreamGetId_ptsz')
 *         global __cuStreamGetCtx
 *         __cuStreamGetCtx = dlfcn.dlsym(handle, 'cuStreamGetCtx_ptsz')             # <<<<<<<<<<<<<<
 *         global __cuStreamWaitEvent
 *         __cuStreamWaitEvent = dlfcn.dlsym(handle, 'cuStreamWaitEvent_ptsz')
 */
    __pyx_v_4cuda_5_cuda_5ccuda___cuStreamGetCtx = dlsym(__pyx_v_handle, ((char const *)"cuStreamGetCtx_ptsz"));

    /* "cuda/_cuda/ccuda.pyx":1658
 *         __cuStreamGetCtx = dlfcn.dlsym(handle, 'cuStreamGetCtx_ptsz')
 *         global __cuStreamWaitEvent
 *         __cuStreamWaitEvent = dlfcn.dlsym(handle, 'cuStreamWaitEvent_ptsz')             # <<<<<<<<<<<<<<
 *         global __cuStreamAddCallback
 *         __cuStreamAddCallback = dlfcn.dlsym(handle, 'cuStreamAddCallback_ptsz')
 */
    __pyx_v_4cuda_5_cuda_5ccuda___cuStreamWaitEvent = dlsym(__pyx_v_handle, ((char const *)"cuStreamWaitEvent_ptsz"));

    /* "cuda/_cuda/ccuda.pyx":1660
 *         __cuStreamWaitEvent = dlfcn.dlsym(handle, 'cuStreamWaitEvent_ptsz')
 *         global __cuStreamAddCallback
 *         __cuStreamAddCallback = dlfcn.dlsym(handle, 'cuStreamAddCallback_ptsz')             # <<<<<<<<<<<<<<
 *         global __cuStreamBeginCapture_v2
 *         __cuStreamBeginCapture_v2 = dlfcn.dlsym(handle, 'cuStreamBeginCapture_v2_ptsz')
 */
    __pyx_v_4cuda_5_cuda_5ccuda___cuStreamAddCallback = dlsym(__pyx_v_handle, ((char const *)"cuStreamAddCallback_ptsz"));

    /* "cuda/_cuda/ccuda.pyx":1662
 *         __cuStreamAddCallback = dlfcn.dlsym(handle, 'cuStreamAddCallback_ptsz')
 *         global __cuStreamBeginCapture_v2
 *         __cuStreamBeginCapture_v2 = dlfcn.dlsym(handle, 'cuStreamBeginCapture_v2_ptsz')             # <<<<<<<<<<<<<<
 *         global __cuStreamBeginCaptureToGraph
 *         __cuStreamBeginCaptureToGraph = dlfcn.dlsym(handle, 'cuStreamBeginCaptureToGraph_ptsz')
 */
    __pyx_v_4cuda_5_cuda_5ccuda___cuStreamBeginCapture_v2 = dlsym(__pyx_v_handle, ((char const *)"cuStreamBeginCapture_v2_ptsz"));

    /* "cuda/_cuda/ccuda.pyx":1664
 *         __cuStreamBeginCapture_v2 = dlfcn.dlsym(handle, 'cuStreamBeginCapture_v2_ptsz')
 *         global __cuStreamBeginCaptureToGraph
 *         __cuStreamBeginCaptureToGraph = dlfcn.dlsym(handle, 'cuStreamBeginCaptureToGraph_ptsz')             # <<<<<<<<<<<<<<
 *         global __cuStreamEndCapture
 *         __cuStreamEndCapture = dlfcn.dlsym(handle, 'cuStreamEndCapture_ptsz')
 */
    __pyx_v_4cuda_5_cuda_5ccuda___cuStreamBeginCaptureToGraph = dlsym(__pyx_v_handle, ((char const *)"cuStreamBeginCaptureToGraph_ptsz"));

    /* "cuda/_cuda/ccuda.pyx":1666
 *         __cuStreamBeginCaptureToGraph = dlfcn.dlsym(handle, 'cuStreamBeginCaptureToGraph_ptsz')
 *         global __cuStreamEndCapture
 *         __cuStreamEndCapture = dlfcn.dlsym(handle, 'cuStreamEndCapture_ptsz')             # <<<<<<<<<<<<<<
 *         global __cuStreamIsCapturing
 *         __cuStreamIsCapturing = dlfcn.dlsym(handle, 'cuStreamIsCapturing_ptsz')
 */
    __pyx_v_4cuda_5_cuda_5ccuda___cuStreamEndCapture = dlsym(__pyx_v_handle, ((char const *)"cuStreamEndCapture_ptsz"));

    /* "cuda/_cuda/ccuda.pyx":1668
 *         __cuStreamEndCapture = dlfcn.dlsym(handle, 'cuStreamEndCapture_ptsz')
 *         global __cuStreamIsCapturing
 *         __cuStreamIsCapturing = dlfcn.dlsym(handle, 'cuStreamIsCapturing_ptsz')             # <<<<<<<<<<<<<<
 *         global __cuStreamGetCaptureInfo_v2
 *         __cuStreamGetCaptureInfo_v2 = dlfcn.dlsym(handle, 'cuStreamGetCaptureInfo_v2_ptsz')
 */
    __pyx_v_4cuda_5_cuda_5ccuda___cuStreamIsCapturing = dlsym(__pyx_v_handle, ((char const *)"cuStreamIsCapturing_ptsz"));

    /* "cuda/_cuda/ccuda.pyx":1670
 *         __cuStreamIsCapturing = dlfcn.dlsym(handle, 'cuStreamIsCapturing_ptsz')
 *         global __cuStreamGetCaptureInfo_v2
 *         __cuStreamGetCaptureInfo_v2 = dlfcn.dlsym(handle, 'cuStreamGetCaptureInfo_v2_ptsz')             # <<<<<<<<<<<<<<
 *         global __cuStreamGetCaptureInfo_v3
 *         __cuStreamGetCaptureInfo_v3 = dlfcn.dlsym(handle, 'cuStreamGetCaptureInfo_v3_ptsz')
 */
    __pyx_v_4cuda_5_cuda_5ccuda___cuStreamGetCaptureInfo_v2 = dlsym(__pyx_v_handle, ((char const *)"cuStreamGetCaptureInfo_v2_ptsz"));

    /* "cuda/_cuda/ccuda.pyx":1672
 *         __cuStreamGetCaptureInfo_v2 = dlfcn.dlsym(handle, 'cuStreamGetCaptureInfo_v2_ptsz')
 *         global __cuStreamGetCaptureInfo_v3
 *         __cuStreamGetCaptureInfo_v3 = dlfcn.dlsym(handle, 'cuStreamGetCaptureInfo_v3_ptsz')             # <<<<<<<<<<<<<<
 *         global __cuStreamUpdateCaptureDependencies
 *         __cuStreamUpdateCaptureDependencies = dlfcn.dlsym(handle, 'cuStreamUpdateCaptureDependencies_ptsz')
 */
    __pyx_v_4cuda_5_cuda_5ccuda___cuStreamGetCaptureInfo_v3 = dlsym(__pyx_v_handle, ((char const *)"cuStreamGetCaptureInfo_v3_ptsz"));

    /* "cuda/_cuda/ccuda.pyx":1674
 *         __cuStreamGetCaptureInfo_v3 = dlfcn.dlsym(handle, 'cuStreamGetCaptureInfo_v3_ptsz')
 *         global __cuStreamUpdateCaptureDependencies
 *         __cuStreamUpdateCaptureDependencies = dlfcn.dlsym(handle, 'cuStreamUpdateCaptureDependencies_ptsz')             # <<<<<<<<<<<<<<
 *         global __cuStreamUpdateCaptureDependencies_v2
 *         __cuStreamUpdateCaptureDependencies_v2 = dlfcn.dlsym(handle, 'cuStreamUpdateCaptureDependencies_v2_ptsz')
 */
    __pyx_v_4cuda_5_cuda_5ccuda___cuStreamUpdateCaptureDependencies = dlsym(__pyx_v_handle, ((char const *)"cuStreamUpdateCaptureDependencies_ptsz"));

    /* "cuda/_cuda/ccuda.pyx":1676
 *         __cuStreamUpdateCaptureDependencies = dlfcn.dlsym(handle, 'cuStreamUpdateCaptureDependencies_ptsz')
 *         global __cuStreamUpdateCaptureDependencies_v2
 *         __cuStreamUpdateCaptureDependencies_v2 = dlfcn.dlsym(handle, 'cuStreamUpdateCaptureDependencies_v2_ptsz')             # <<<<<<<<<<<<<<
 *         global __cuStreamAttachMemAsync
 *         __cuStreamAttachMemAsync = dlfcn.dlsym(handle, 'cuStreamAttachMemAsync_ptsz')
 */
    __pyx_v_4cuda_5_cuda_5ccuda___cuStreamUpdateCaptureDependencies_v2 = dlsym(__pyx_v_handle, ((char const *)"cuStreamUpdateCaptureDependencies_v2_ptsz"));

    /* "cuda/_cuda/ccuda.pyx":1678
 *         __cuStreamUpdateCaptureDependencies_v2 = dlfcn.dlsym(handle, 'cuStreamUpdateCaptureDependencies_v2_ptsz')
 *         global __cuStreamAttachMemAsync
 *         __cuStreamAttachMemAsync = dlfcn.dlsym(handle, 'cuStreamAttachMemAsync_ptsz')             # <<<<<<<<<<<<<<
 *         global __cuStreamQuery
 *         __cuStreamQuery = dlfcn.dlsym(handle, 'cuStreamQuery_ptsz')
 */
    __pyx_v_4cuda_5_cuda_5ccuda___cuStreamAttachMemAsync = dlsym(__pyx_v_handle, ((char const *)"cuStreamAttachMemAsync_ptsz"));

    /* "cuda/_cuda/ccuda.pyx":1680
 *         __cuStreamAttachMemAsync = dlfcn.dlsym(handle, 'cuStreamAttachMemAsync_ptsz')
 *         global __cuStreamQuery
 *         __cuStreamQuery = dlfcn.dlsym(handle, 'cuStreamQuery_ptsz')             # <<<<<<<<<<<<<<
 *         global __cuStreamSynchronize
 *         __cuStreamSynchronize = dlfcn.dlsym(handle, 'cuStreamSynchronize_ptsz')
 */
    __pyx_v_4cuda_5_cuda_5ccuda___cuStreamQuery = dlsym(__pyx_v_handle, ((char const *)"cuStreamQuery_ptsz"));

    /* "cuda/_cuda/ccuda.pyx":1682
 *         __cuStreamQuery = dlfcn.dlsym(handle, 'cuStreamQuery_ptsz')
 *         global __cuStreamSynchronize
 *         __cuStreamSynchronize = dlfcn.dlsym(handle, 'cuStreamSynchronize_ptsz')             # <<<<<<<<<<<<<<
 *         global __cuStreamCopyAttributes
 *         __cuStreamCopyAttributes = dlfcn.dlsym(handle, 'cuStreamCopyAttributes_ptsz')
 */
    __pyx_v_4cuda_5_cuda_5ccuda___cuStreamSynchronize = dlsym(__pyx_v_handle, ((char const *)"cuStreamSynchronize_ptsz"));

    /* "cuda/_cuda/ccuda.pyx":1684
 *         __cuStreamSynchronize = dlfcn.dlsym(handle, 'cuStreamSynchronize_ptsz')
 *         global __cuStreamCopyAttributes
 *         __cuStreamCopyAttributes = dlfcn.dlsym(handle, 'cuStreamCopyAttributes_ptsz')             # <<<<<<<<<<<<<<
 *         global __cuStreamGetAttribute
 *         __cuStreamGetAttribute = dlfcn.dlsym(handle, 'cuStreamGetAttribute_ptsz')
 */
    __pyx_v_4cuda_5_cuda_5ccuda___cuStreamCopyAttributes = dlsym(__pyx_v_handle, ((char const *)"cuStreamCopyAttributes_ptsz"));

    /* "cuda/_cuda/ccuda.pyx":1686
 *         __cuStreamCopyAttributes = dlfcn.dlsym(handle, 'cuStreamCopyAttributes_ptsz')
 *         global __cuStreamGetAttribute
 *         __cuStreamGetAttribute = dlfcn.dlsym(handle, 'cuStreamGetAttribute_ptsz')             # <<<<<<<<<<<<<<
 *         global __cuStreamSetAttribute
 *         __cuStreamSetAttribute = dlfcn.dlsym(handle, 'cuStreamSetAttribute_ptsz')
 */
    __pyx_v_4cuda_5_cuda_5ccuda___cuStreamGetAttribute = dlsym(__pyx_v_handle, ((char const *)"cuStreamGetAttribute_ptsz"));

    /* "cuda/_cuda/ccuda.pyx":1688
 *         __cuStreamGetAttribute = dlfcn.dlsym(handle, 'cuStreamGetAttribute_ptsz')
 *         global __cuStreamSetAttribute
 *         __cuStreamSetAttribute = dlfcn.dlsym(handle, 'cuStreamSetAttribute_ptsz')             # <<<<<<<<<<<<<<
 *         global __cuEventRecord
 *         __cuEventRecord = dlfcn.dlsym(handle, 'cuEventRecord_ptsz')
 */
    __pyx_v_4cuda_5_cuda_5ccuda___cuStreamSetAttribute = dlsym(__pyx_v_handle, ((char const *)"cuStreamSetAttribute_ptsz"));

    /* "cuda/_cuda/ccuda.pyx":1690
 *         __cuStreamSetAttribute = dlfcn.dlsym(handle, 'cuStreamSetAttribute_ptsz')
 *         global __cuEventRecord
 *         __cuEventRecord = dlfcn.dlsym(handle, 'cuEventRecord_ptsz')             # <<<<<<<<<<<<<<
 *         global __cuEventRecordWithFlags
 *         __cuEventRecordWithFlags = dlfcn.dlsym(handle, 'cuEventRecordWithFlags_ptsz')
 */
    __pyx_v_4cuda_5_cuda_5ccuda___cuEventRecord = dlsym(__pyx_v_handle, ((char const *)"cuEventRecord_ptsz"));

    /* "cuda/_cuda/ccuda.pyx":1692
 *         __cuEventRecord = dlfcn.dlsym(handle, 'cuEventRecord_ptsz')
 *         global __cuEventRecordWithFlags
 *         __cuEventRecordWithFlags = dlfcn.dlsym(handle, 'cuEventRecordWithFlags_ptsz')             # <<<<<<<<<<<<<<
 *         global __cuSignalExternalSemaphoresAsync
 *         __cuSignalExternalSemaphoresAsync = dlfcn.dlsym(handle, 'cuSignalExternalSemaphoresAsync_ptsz')
 */
    __pyx_v_4cuda_5_cuda_5ccuda___cuEventRecordWithFlags = dlsym(__pyx_v_handle, ((char const *)"cuEventRecordWithFlags_ptsz"));

    /* "cuda/_cuda/ccuda.pyx":1694
 *         __cuEventRecordWithFlags = dlfcn.dlsym(handle, 'cuEventRecordWithFlags_ptsz')
 *         global __cuSignalExternalSemaphoresAsync
 *         __cuSignalExternalSemaphoresAsync = dlfcn.dlsym(handle, 'cuSignalExternalSemaphoresAsync_ptsz')             # <<<<<<<<<<<<<<
 *         global __cuWaitExternalSemaphoresAsync
 *         __cuWaitExternalSemaphoresAsync = dlfcn.dlsym(handle, 'cuWaitExternalSemaphoresAsync_ptsz')
 */
    __pyx_v_4cuda_5_cuda_5ccuda___cuSignalExternalSemaphoresAsync = dlsym(__pyx_v_handle, ((char const *)"cuSignalExternalSemaphoresAsync_ptsz"));

    /* "cuda/_cuda/ccuda.pyx":1696
 *         __cuSignalExternalSemaphoresAsync = dlfcn.dlsym(handle, 'cuSignalExternalSemaphoresAsync_ptsz')
 *         global __cuWaitExternalSemaphoresAsync
 *         __cuWaitExternalSemaphoresAsync = dlfcn.dlsym(handle, 'cuWaitExternalSemaphoresAsync_ptsz')             # <<<<<<<<<<<<<<
 *         global __cuStreamWaitValue32_v2
 *         __cuStreamWaitValue32_v2 = dlfcn.dlsym(handle, 'cuStreamWaitValue32_v2_ptsz')
 */
    __pyx_v_4cuda_5_cuda_5ccuda___cuWaitExternalSemaphoresAsync = dlsym(__pyx_v_handle, ((char const *)"cuWaitExternalSemaphoresAsync_ptsz"));

    /* "cuda/_cuda/ccuda.pyx":1698
 *         __cuWaitExternalSemaphoresAsync = dlfcn.dlsym(handle, 'cuWaitExternalSemaphoresAsync_ptsz')
 *         global __cuStreamWaitValue32_v2
 *         __cuStreamWaitValue32_v2 = dlfcn.dlsym(handle, 'cuStreamWaitValue32_v2_ptsz')             # <<<<<<<<<<<<<<
 *         global __cuStreamWaitValue64_v2
 *         __cuStreamWaitValue64_v2 = dlfcn.dlsym(handle, 'cuStreamWaitValue64_v2_ptsz')
 */
    __pyx_v_4cuda_5_cuda_5ccuda___cuStreamWaitValue32_v2 = dlsym(__pyx_v_handle, ((char const *)"cuStreamWaitValue32_v2_ptsz"));

    /* "cuda/_cuda/ccuda.pyx":1700
 *         __cuStreamWaitValue32_v2 = dlfcn.dlsym(handle, 'cuStreamWaitValue32_v2_ptsz')
 *         global __cuStreamWaitValue64_v2
 *         __cuStreamWaitValue64_v2 = dlfcn.dlsym(handle, 'cuStreamWaitValue64_v2_ptsz')             # <<<<<<<<<<<<<<
 *         global __cuStreamWriteValue32_v2
 *         __cuStreamWriteValue32_v2 = dlfcn.dlsym(handle, 'cuStreamWriteValue32_v2_ptsz')
 */
    __pyx_v_4cuda_5_cuda_5ccuda___cuStreamWaitValue64_v2 = dlsym(__pyx_v_handle, ((char const *)"cuStreamWaitValue64_v2_ptsz"));

    /* "cuda/_cuda/ccuda.pyx":1702
 *         __cuStreamWaitValue64_v2 = dlfcn.dlsym(handle, 'cuStreamWaitValue64_v2_ptsz')
 *         global __cuStreamWriteValue32_v2
 *         __cuStreamWriteValue32_v2 = dlfcn.dlsym(handle, 'cuStreamWriteValue32_v2_ptsz')             # <<<<<<<<<<<<<<
 *         global __cuStreamWriteValue64_v2
 *         __cuStreamWriteValue64_v2 = dlfcn.dlsym(handle, 'cuStreamWriteValue64_v2_ptsz')
 */
    __pyx_v_4cuda_5_cuda_5ccuda___cuStreamWriteValue32_v2 = dlsym(__pyx_v_handle, ((char const *)"cuStreamWriteValue32_v2_ptsz"));

    /* "cuda/_cuda/ccuda.pyx":1704
 *         __cuStreamWriteValue32_v2 = dlfcn.dlsym(handle, 'cuStreamWriteValue32_v2_ptsz')
 *         global __cuStreamWriteValue64_v2
 *         __cuStreamWriteValue64_v2 = dlfcn.dlsym(handle, 'cuStreamWriteValue64_v2_ptsz')             # <<<<<<<<<<<<<<
 *         global __cuStreamBatchMemOp_v2
 *         __cuStreamBatchMemOp_v2 = dlfcn.dlsym(handle, 'cuStreamBatchMemOp_v2_ptsz')
 */
    __pyx_v_4cuda_5_cuda_5ccuda___cuStreamWriteValue64_v2 = dlsym(__pyx_v_handle, ((char const *)"cuStreamWriteValue64_v2_ptsz"));

    /* "cuda/_cuda/ccuda.pyx":1706
 *         __cuStreamWriteValue64_v2 = dlfcn.dlsym(handle, 'cuStreamWriteValue64_v2_ptsz')
 *         global __cuStreamBatchMemOp_v2
 *         __cuStreamBatchMemOp_v2 = dlfcn.dlsym(handle, 'cuStreamBatchMemOp_v2_ptsz')             # <<<<<<<<<<<<<<
 *         global __cuLaunchKernel
 *         __cuLaunchKernel = dlfcn.dlsym(handle, 'cuLaunchKernel_ptsz')
 */
    __pyx_v_4cuda_5_cuda_5ccuda___cuStreamBatchMemOp_v2 = dlsym(__pyx_v_handle, ((char const *)"cuStreamBatchMemOp_v2_ptsz"));

    /* "cuda/_cuda/ccuda.pyx":1708
 *         __cuStreamBatchMemOp_v2 = dlfcn.dlsym(handle, 'cuStreamBatchMemOp_v2_ptsz')
 *         global __cuLaunchKernel
 *         __cuLaunchKernel = dlfcn.dlsym(handle, 'cuLaunchKernel_ptsz')             # <<<<<<<<<<<<<<
 *         global __cuLaunchKernelEx
 *         __cuLaunchKernelEx = dlfcn.dlsym(handle, 'cuLaunchKernelEx_ptsz')
 */
    __pyx_v_4cuda_5_cuda_5ccuda___cuLaunchKernel = dlsym(__pyx_v_handle, ((char const *)"cuLaunchKernel_ptsz"));

    /* "cuda/_cuda/ccuda.pyx":1710
 *         __cuLaunchKernel = dlfcn.dlsym(handle, 'cuLaunchKernel_ptsz')
 *         global __cuLaunchKernelEx
 *         __cuLaunchKernelEx = dlfcn.dlsym(handle, 'cuLaunchKernelEx_ptsz')             # <<<<<<<<<<<<<<
 *         global __cuLaunchCooperativeKernel
 *         __cuLaunchCooperativeKernel = dlfcn.dlsym(handle, 'cuLaunchCooperativeKernel_ptsz')
 */
    __pyx_v_4cuda_5_cuda_5ccuda___cuLaunchKernelEx = dlsym(__pyx_v_handle, ((char const *)"cuLaunchKernelEx_ptsz"));

    /* "cuda/_cuda/ccuda.pyx":1712
 *         __cuLaunchKernelEx = dlfcn.dlsym(handle, 'cuLaunchKernelEx_ptsz')
 *         global __cuLaunchCooperativeKernel
 *         __cuLaunchCooperativeKernel = dlfcn.dlsym(handle, 'cuLaunchCooperativeKernel_ptsz')             # <<<<<<<<<<<<<<
 *         global __cuLaunchHostFunc
 *         __cuLaunchHostFunc = dlfcn.dlsym(handle, 'cuLaunchHostFunc_ptsz')
 */
    __pyx_v_4cuda_5_cuda_5ccuda___cuLaunchCooperativeKernel = dlsym(__pyx_v_handle, ((char const *)"cuLaunchCooperativeKernel_ptsz"));

    /* "cuda/_cuda/ccuda.pyx":1714
 *         __cuLaunchCooperativeKernel = dlfcn.dlsym(handle, 'cuLaunchCooperativeKernel_ptsz')
 *         global __cuLaunchHostFunc
 *         __cuLaunchHostFunc = dlfcn.dlsym(handle, 'cuLaunchHostFunc_ptsz')             # <<<<<<<<<<<<<<
 *         global __cuGraphInstantiateWithParams
 *         __cuGraphInstantiateWithParams = dlfcn.dlsym(handle, 'cuGraphInstantiateWithParams_ptsz')
 */
    __pyx_v_4cuda_5_cuda_5ccuda___cuLaunchHostFunc = dlsym(__pyx_v_handle, ((char const *)"cuLaunchHostFunc_ptsz"));

    /* "cuda/_cuda/ccuda.pyx":1716
 *         __cuLaunchHostFunc = dlfcn.dlsym(handle, 'cuLaunchHostFunc_ptsz')
 *         global __cuGraphInstantiateWithParams
 *         __cuGraphInstantiateWithParams = dlfcn.dlsym(handle, 'cuGraphInstantiateWithParams_ptsz')             # <<<<<<<<<<<<<<
 *         global __cuGraphUpload
 *         __cuGraphUpload = dlfcn.dlsym(handle, 'cuGraphUpload_ptsz')
 */
    __pyx_v_4cuda_5_cuda_5ccuda___cuGraphInstantiateWithParams = dlsym(__pyx_v_handle, ((char const *)"cuGraphInstantiateWithParams_ptsz"));

    /* "cuda/_cuda/ccuda.pyx":1718
 *         __cuGraphInstantiateWithParams = dlfcn.dlsym(handle, 'cuGraphInstantiateWithParams_ptsz')
 *         global __cuGraphUpload
 *         __cuGraphUpload = dlfcn.dlsym(handle, 'cuGraphUpload_ptsz')             # <<<<<<<<<<<<<<
 *         global __cuGraphLaunch
 *         __cuGraphLaunch = dlfcn.dlsym(handle, 'cuGraphLaunch_ptsz')
 */
    __pyx_v_4cuda_5_cuda_5ccuda___cuGraphUpload = dlsym(__pyx_v_handle, ((char const *)"cuGraphUpload_ptsz"));

    /* "cuda/_cuda/ccuda.pyx":1720
 *         __cuGraphUpload = dlfcn.dlsym(handle, 'cuGraphUpload_ptsz')
 *         global __cuGraphLaunch
 *         __cuGraphLaunch = dlfcn.dlsym(handle, 'cuGraphLaunch_ptsz')             # <<<<<<<<<<<<<<
 *         global __cuGraphicsMapResources
 *         __cuGraphicsMapResources = dlfcn.dlsym(handle, 'cuGraphicsMapResources_ptsz')
 */
    __pyx_v_4cuda_5_cuda_5ccuda___cuGraphLaunch = dlsym(__pyx_v_handle, ((char const *)"cuGraphLaunch_ptsz"));

    /* "cuda/_cuda/ccuda.pyx":1722
 *         __cuGraphLaunch = dlfcn.dlsym(handle, 'cuGraphLaunch_ptsz')
 *         global __cuGraphicsMapResources
 *         __cuGraphicsMapResources = dlfcn.dlsym(handle, 'cuGraphicsMapResources_ptsz')             # <<<<<<<<<<<<<<
 *         global __cuGraphicsUnmapResources
 *         __cuGraphicsUnmapResources = dlfcn.dlsym(handle, 'cuGraphicsUnmapResources_ptsz')
 */
    __pyx_v_4cuda_5_cuda_5ccuda___cuGraphicsMapResources = dlsym(__pyx_v_handle, ((char const *)"cuGraphicsMapResources_ptsz"));

    /* "cuda/_cuda/ccuda.pyx":1724
 *         __cuGraphicsMapResources = dlfcn.dlsym(handle, 'cuGraphicsMapResources_ptsz')
 *         global __cuGraphicsUnmapResources
 *         __cuGraphicsUnmapResources = dlfcn.dlsym(handle, 'cuGraphicsUnmapResources_ptsz')             # <<<<<<<<<<<<<<
 *     else:
 *         # Else get the regular version
 */
    __pyx_v_4cuda_5_cuda_5ccuda___cuGraphicsUnmapResources = dlsym(__pyx_v_handle, ((char const *)"cuGraphicsUnmapResources_ptsz"));

    /* "cuda/_cuda/ccuda.pyx":1562
 * 
 *     # Load using dlsym
 *     if usePTDS:             # <<<<<<<<<<<<<<
 *         # Get all PTDS version of functions
 *         pass
 */
    goto __pyx_L16;
  }

  /* "cuda/_cuda/ccuda.pyx":1727
 *     else:
 *         # Else get the regular version
 *         pass             # <<<<<<<<<<<<<<
 *         global __cuMemcpy
 *         __cuMemcpy = dlfcn.dlsym(handle, 'cuMemcpy')
 */
  /*else*/ {

    /* "cuda/_cuda/ccuda.pyx":1729
 *         pass
 *         global __cuMemcpy
 *         __cuMemcpy = dlfcn.dlsym(handle, 'cuMemcpy')             # <<<<<<<<<<<<<<
 *         global __cuMemcpyPeer
 *         __cuMemcpyPeer = dlfcn.dlsym(handle, 'cuMemcpyPeer')
 */
    __pyx_v_4cuda_5_cuda_5ccuda___cuMemcpy = dlsym(__pyx_v_handle, ((char const *)"cuMemcpy"));

    /* "cuda/_cuda/ccuda.pyx":1731
 *         __cuMemcpy = dlfcn.dlsym(handle, 'cuMemcpy')
 *         global __cuMemcpyPeer
 *         __cuMemcpyPeer = dlfcn.dlsym(handle, 'cuMemcpyPeer')             # <<<<<<<<<<<<<<
 *         global __cuMemcpyHtoD_v2
 *         __cuMemcpyHtoD_v2 = dlfcn.dlsym(handle, 'cuMemcpyHtoD_v2')
 */
    __pyx_v_4cuda_5_cuda_5ccuda___cuMemcpyPeer = dlsym(__pyx_v_handle, ((char const *)"cuMemcpyPeer"));

    /* "cuda/_cuda/ccuda.pyx":1733
 *         __cuMemcpyPeer = dlfcn.dlsym(handle, 'cuMemcpyPeer')
 *         global __cuMemcpyHtoD_v2
 *         __cuMemcpyHtoD_v2 = dlfcn.dlsym(handle, 'cuMemcpyHtoD_v2')             # <<<<<<<<<<<<<<
 *         global __cuMemcpyDtoH_v2
 *         __cuMemcpyDtoH_v2 = dlfcn.dlsym(handle, 'cuMemcpyDtoH_v2')
 */
    __pyx_v_4cuda_5_cuda_5ccuda___cuMemcpyHtoD_v2 = dlsym(__pyx_v_handle, ((char const *)"cuMemcpyHtoD_v2"));

    /* "cuda/_cuda/ccuda.pyx":1735
 *         __cuMemcpyHtoD_v2 = dlfcn.dlsym(handle, 'cuMemcpyHtoD_v2')
 *         global __cuMemcpyDtoH_v2
 *         __cuMemcpyDtoH_v2 = dlfcn.dlsym(handle, 'cuMemcpyDtoH_v2')             # <<<<<<<<<<<<<<
 *         global __cuMemcpyDtoD_v2
 *         __cuMemcpyDtoD_v2 = dlfcn.dlsym(handle, 'cuMemcpyDtoD_v2')
 */
    __pyx_v_4cuda_5_cuda_5ccuda___cuMemcpyDtoH_v2 = dlsym(__pyx_v_handle, ((char const *)"cuMemcpyDtoH_v2"));

    /* "cuda/_cuda/ccuda.pyx":1737
 *         __cuMemcpyDtoH_v2 = dlfcn.dlsym(handle, 'cuMemcpyDtoH_v2')
 *         global __cuMemcpyDtoD_v2
 *         __cuMemcpyDtoD_v2 = dlfcn.dlsym(handle, 'cuMemcpyDtoD_v2')             # <<<<<<<<<<<<<<
 *         global __cuMemcpyDtoA_v2
 *         __cuMemcpyDtoA_v2 = dlfcn.dlsym(handle, 'cuMemcpyDtoA_v2')
 */
    __pyx_v_4cuda_5_cuda_5ccuda___cuMemcpyDtoD_v2 = dlsym(__pyx_v_handle, ((char const *)"cuMemcpyDtoD_v2"));

    /* "cuda/_cuda/ccuda.pyx":1739
 *         __cuMemcpyDtoD_v2 = dlfcn.dlsym(handle, 'cuMemcpyDtoD_v2')
 *         global __cuMemcpyDtoA_v2
 *         __cuMemcpyDtoA_v2 = dlfcn.dlsym(handle, 'cuMemcpyDtoA_v2')             # <<<<<<<<<<<<<<
 *         global __cuMemcpyAtoD_v2
 *         __cuMemcpyAtoD_v2 = dlfcn.dlsym(handle, 'cuMemcpyAtoD_v2')
 */
    __pyx_v_4cuda_5_cuda_5ccuda___cuMemcpyDtoA_v2 = dlsym(__pyx_v_handle, ((char const *)"cuMemcpyDtoA_v2"));

    /* "cuda/_cuda/ccuda.pyx":1741
 *         __cuMemcpyDtoA_v2 = dlfcn.dlsym(handle, 'cuMemcpyDtoA_v2')
 *         global __cuMemcpyAtoD_v2
 *         __cuMemcpyAtoD_v2 = dlfcn.dlsym(handle, 'cuMemcpyAtoD_v2')             # <<<<<<<<<<<<<<
 *         global __cuMemcpyHtoA_v2
 *         __cuMemcpyHtoA_v2 = dlfcn.dlsym(handle, 'cuMemcpyHtoA_v2')
 */
    __pyx_v_4cuda_5_cuda_5ccuda___cuMemcpyAtoD_v2 = dlsym(__pyx_v_handle, ((char const *)"cuMemcpyAtoD_v2"));

    /* "cuda/_cuda/ccuda.pyx":1743
 *         __cuMemcpyAtoD_v2 = dlfcn.dlsym(handle, 'cuMemcpyAtoD_v2')
 *         global __cuMemcpyHtoA_v2
 *         __cuMemcpyHtoA_v2 = dlfcn.dlsym(handle, 'cuMemcpyHtoA_v2')             # <<<<<<<<<<<<<<
 *         global __cuMemcpyAtoH_v2
 *         __cuMemcpyAtoH_v2 = dlfcn.dlsym(handle, 'cuMemcpyAtoH_v2')
 */
    __pyx_v_4cuda_5_cuda_5ccuda___cuMemcpyHtoA_v2 = dlsym(__pyx_v_handle, ((char const *)"cuMemcpyHtoA_v2"));

    /* "cuda/_cuda/ccuda.pyx":1745
 *         __cuMemcpyHtoA_v2 = dlfcn.dlsym(handle, 'cuMemcpyHtoA_v2')
 *         global __cuMemcpyAtoH_v2
 *         __cuMemcpyAtoH_v2 = dlfcn.dlsym(handle, 'cuMemcpyAtoH_v2')             # <<<<<<<<<<<<<<
 *         global __cuMemcpyAtoA_v2
 *         __cuMemcpyAtoA_v2 = dlfcn.dlsym(handle, 'cuMemcpyAtoA_v2')
 */
    __pyx_v_4cuda_5_cuda_5ccuda___cuMemcpyAtoH_v2 = dlsym(__pyx_v_handle, ((char const *)"cuMemcpyAtoH_v2"));

    /* "cuda/_cuda/ccuda.pyx":1747
 *         __cuMemcpyAtoH_v2 = dlfcn.dlsym(handle, 'cuMemcpyAtoH_v2')
 *         global __cuMemcpyAtoA_v2
 *         __cuMemcpyAtoA_v2 = dlfcn.dlsym(handle, 'cuMemcpyAtoA_v2')             # <<<<<<<<<<<<<<
 *         global __cuMemcpy2D_v2
 *         __cuMemcpy2D_v2 = dlfcn.dlsym(handle, 'cuMemcpy2D_v2')
 */
    __pyx_v_4cuda_5_cuda_5ccuda___cuMemcpyAtoA_v2 = dlsym(__pyx_v_handle, ((char const *)"cuMemcpyAtoA_v2"));

    /* "cuda/_cuda/ccuda.pyx":1749
 *         __cuMemcpyAtoA_v2 = dlfcn.dlsym(handle, 'cuMemcpyAtoA_v2')
 *         global __cuMemcpy2D_v2
 *         __cuMemcpy2D_v2 = dlfcn.dlsym(handle, 'cuMemcpy2D_v2')             # <<<<<<<<<<<<<<
 *         global __cuMemcpy2DUnaligned_v2
 *         __cuMemcpy2DUnaligned_v2 = dlfcn.dlsym(handle, 'cuMemcpy2DUnaligned_v2')
 */
    __pyx_v_4cuda_5_cuda_5ccuda___cuMemcpy2D_v2 = dlsym(__pyx_v_handle, ((char const *)"cuMemcpy2D_v2"));

    /* "cuda/_cuda/ccuda.pyx":1751
 *         __cuMemcpy2D_v2 = dlfcn.dlsym(handle, 'cuMemcpy2D_v2')
 *         global __cuMemcpy2DUnaligned_v2
 *         __cuMemcpy2DUnaligned_v2 = dlfcn.dlsym(handle, 'cuMemcpy2DUnaligned_v2')             # <<<<<<<<<<<<<<
 *         global __cuMemcpy3D_v2
 *         __cuMemcpy3D_v2 = dlfcn.dlsym(handle, 'cuMemcpy3D_v2')
 */
    __pyx_v_4cuda_5_cuda_5ccuda___cuMemcpy2DUnaligned_v2 = dlsym(__pyx_v_handle, ((char const *)"cuMemcpy2DUnaligned_v2"));

    /* "cuda/_cuda/ccuda.pyx":1753
 *         __cuMemcpy2DUnaligned_v2 = dlfcn.dlsym(handle, 'cuMemcpy2DUnaligned_v2')
 *         global __cuMemcpy3D_v2
 *         __cuMemcpy3D_v2 = dlfcn.dlsym(handle, 'cuMemcpy3D_v2')             # <<<<<<<<<<<<<<
 *         global __cuMemcpy3DPeer
 *         __cuMemcpy3DPeer = dlfcn.dlsym(handle, 'cuMemcpy3DPeer')
 */
    __pyx_v_4cuda_5_cuda_5ccuda___cuMemcpy3D_v2 = dlsym(__pyx_v_handle, ((char const *)"cuMemcpy3D_v2"));

    /* "cuda/_cuda/ccuda.pyx":1755
 *         __cuMemcpy3D_v2 = dlfcn.dlsym(handle, 'cuMemcpy3D_v2')
 *         global __cuMemcpy3DPeer
 *         __cuMemcpy3DPeer = dlfcn.dlsym(handle, 'cuMemcpy3DPeer')             # <<<<<<<<<<<<<<
 *         global __cuMemcpyAsync
 *         __cuMemcpyAsync = dlfcn.dlsym(handle, 'cuMemcpyAsync')
 */
    __pyx_v_4cuda_5_cuda_5ccuda___cuMemcpy3DPeer = dlsym(__pyx_v_handle, ((char const *)"cuMemcpy3DPeer"));

    /* "cuda/_cuda/ccuda.pyx":1757
 *         __cuMemcpy3DPeer = dlfcn.dlsym(handle, 'cuMemcpy3DPeer')
 *         global __cuMemcpyAsync
 *         __cuMemcpyAsync = dlfcn.dlsym(handle, 'cuMemcpyAsync')             # <<<<<<<<<<<<<<
 *         global __cuMemcpyPeerAsync
 *         __cuMemcpyPeerAsync = dlfcn.dlsym(handle, 'cuMemcpyPeerAsync')
 */
    __pyx_v_4cuda_5_cuda_5ccuda___cuMemcpyAsync = dlsym(__pyx_v_handle, ((char const *)"cuMemcpyAsync"));

    /* "cuda/_cuda/ccuda.pyx":1759
 *         __cuMemcpyAsync = dlfcn.dlsym(handle, 'cuMemcpyAsync')
 *         global __cuMemcpyPeerAsync
 *         __cuMemcpyPeerAsync = dlfcn.dlsym(handle, 'cuMemcpyPeerAsync')             # <<<<<<<<<<<<<<
 *         global __cuMemcpyHtoDAsync_v2
 *         __cuMemcpyHtoDAsync_v2 = dlfcn.dlsym(handle, 'cuMemcpyHtoDAsync_v2')
 */
    __pyx_v_4cuda_5_cuda_5ccuda___cuMemcpyPeerAsync = dlsym(__pyx_v_handle, ((char const *)"cuMemcpyPeerAsync"));

    /* "cuda/_cuda/ccuda.pyx":1761
 *         __cuMemcpyPeerAsync = dlfcn.dlsym(handle, 'cuMemcpyPeerAsync')
 *         global __cuMemcpyHtoDAsync_v2
 *         __cuMemcpyHtoDAsync_v2 = dlfcn.dlsym(handle, 'cuMemcpyHtoDAsync_v2')             # <<<<<<<<<<<<<<
 *         global __cuMemcpyDtoHAsync_v2
 *         __cuMemcpyDtoHAsync_v2 = dlfcn.dlsym(handle, 'cuMemcpyDtoHAsync_v2')
 */
    __pyx_v_4cuda_5_cuda_5ccuda___cuMemcpyHtoDAsync_v2 = dlsym(__pyx_v_handle, ((char const *)"cuMemcpyHtoDAsync_v2"));

    /* "cuda/_cuda/ccuda.pyx":1763
 *         __cuMemcpyHtoDAsync_v2 = dlfcn.dlsym(handle, 'cuMemcpyHtoDAsync_v2')
 *         global __cuMemcpyDtoHAsync_v2
 *         __cuMemcpyDtoHAsync_v2 = dlfcn.dlsym(handle, 'cuMemcpyDtoHAsync_v2')             # <<<<<<<<<<<<<<
 *         global __cuMemcpyDtoDAsync_v2
 *         __cuMemcpyDtoDAsync_v2 = dlfcn.dlsym(handle, 'cuMemcpyDtoDAsync_v2')
 */
    __pyx_v_4cuda_5_cuda_5ccuda___cuMemcpyDtoHAsync_v2 = dlsym(__pyx_v_handle, ((char const *)"cuMemcpyDtoHAsync_v2"));

    /* "cuda/_cuda/ccuda.pyx":1765
 *         __cuMemcpyDtoHAsync_v2 = dlfcn.dlsym(handle, 'cuMemcpyDtoHAsync_v2')
 *         global __cuMemcpyDtoDAsync_v2
 *         __cuMemcpyDtoDAsync_v2 = dlfcn.dlsym(handle, 'cuMemcpyDtoDAsync_v2')             # <<<<<<<<<<<<<<
 *         global __cuMemcpyHtoAAsync_v2
 *         __cuMemcpyHtoAAsync_v2 = dlfcn.dlsym(handle, 'cuMemcpyHtoAAsync_v2')
 */
    __pyx_v_4cuda_5_cuda_5ccuda___cuMemcpyDtoDAsync_v2 = dlsym(__pyx_v_handle, ((char const *)"cuMemcpyDtoDAsync_v2"));

    /* "cuda/_cuda/ccuda.pyx":1767
 *         __cuMemcpyDtoDAsync_v2 = dlfcn.dlsym(handle, 'cuMemcpyDtoDAsync_v2')
 *         global __cuMemcpyHtoAAsync_v2
 *         __cuMemcpyHtoAAsync_v2 = dlfcn.dlsym(handle, 'cuMemcpyHtoAAsync_v2')             # <<<<<<<<<<<<<<
 *         global __cuMemcpyAtoHAsync_v2
 *         __cuMemcpyAtoHAsync_v2 = dlfcn.dlsym(handle, 'cuMemcpyAtoHAsync_v2')
 */
    __pyx_v_4cuda_5_cuda_5ccuda___cuMemcpyHtoAAsync_v2 = dlsym(__pyx_v_handle, ((char const *)"cuMemcpyHtoAAsync_v2"));

    /* "cuda/_cuda/ccuda.pyx":1769
 *         __cuMemcpyHtoAAsync_v2 = dlfcn.dlsym(handle, 'cuMemcpyHtoAAsync_v2')
 *         global __cuMemcpyAtoHAsync_v2
 *         __cuMemcpyAtoHAsync_v2 = dlfcn.dlsym(handle, 'cuMemcpyAtoHAsync_v2')             # <<<<<<<<<<<<<<
 *         global __cuMemcpy2DAsync_v2
 *         __cuMemcpy2DAsync_v2 = dlfcn.dlsym(handle, 'cuMemcpy2DAsync_v2')
 */
    __pyx_v_4cuda_5_cuda_5ccuda___cuMemcpyAtoHAsync_v2 = dlsym(__pyx_v_handle, ((char const *)"cuMemcpyAtoHAsync_v2"));

    /* "cuda/_cuda/ccuda.pyx":1771
 *         __cuMemcpyAtoHAsync_v2 = dlfcn.dlsym(handle, 'cuMemcpyAtoHAsync_v2')
 *         global __cuMemcpy2DAsync_v2
 *         __cuMemcpy2DAsync_v2 = dlfcn.dlsym(handle, 'cuMemcpy2DAsync_v2')             # <<<<<<<<<<<<<<
 *         global __cuMemcpy3DAsync_v2
 *         __cuMemcpy3DAsync_v2 = dlfcn.dlsym(handle, 'cuMemcpy3DAsync_v2')
 */
    __pyx_v_4cuda_5_cuda_5ccuda___cuMemcpy2DAsync_v2 = dlsym(__pyx_v_handle, ((char const *)"cuMemcpy2DAsync_v2"));

    /* "cuda/_cuda/ccuda.pyx":1773
 *         __cuMemcpy2DAsync_v2 = dlfcn.dlsym(handle, 'cuMemcpy2DAsync_v2')
 *         global __cuMemcpy3DAsync_v2
 *         __cuMemcpy3DAsync_v2 = dlfcn.dlsym(handle, 'cuMemcpy3DAsync_v2')             # <<<<<<<<<<<<<<
 *         global __cuMemcpy3DPeerAsync
 *         __cuMemcpy3DPeerAsync = dlfcn.dlsym(handle, 'cuMemcpy3DPeerAsync')
 */
    __pyx_v_4cuda_5_cuda_5ccuda___cuMemcpy3DAsync_v2 = dlsym(__pyx_v_handle, ((char const *)"cuMemcpy3DAsync_v2"));

    /* "cuda/_cuda/ccuda.pyx":1775
 *         __cuMemcpy3DAsync_v2 = dlfcn.dlsym(handle, 'cuMemcpy3DAsync_v2')
 *         global __cuMemcpy3DPeerAsync
 *         __cuMemcpy3DPeerAsync = dlfcn.dlsym(handle, 'cuMemcpy3DPeerAsync')             # <<<<<<<<<<<<<<
 *         global __cuMemsetD8_v2
 *         __cuMemsetD8_v2 = dlfcn.dlsym(handle, 'cuMemsetD8_v2')
 */
    __pyx_v_4cuda_5_cuda_5ccuda___cuMemcpy3DPeerAsync = dlsym(__pyx_v_handle, ((char const *)"cuMemcpy3DPeerAsync"));

    /* "cuda/_cuda/ccuda.pyx":1777
 *         __cuMemcpy3DPeerAsync = dlfcn.dlsym(handle, 'cuMemcpy3DPeerAsync')
 *         global __cuMemsetD8_v2
 *         __cuMemsetD8_v2 = dlfcn.dlsym(handle, 'cuMemsetD8_v2')             # <<<<<<<<<<<<<<
 *         global __cuMemsetD16_v2
 *         __cuMemsetD16_v2 = dlfcn.dlsym(handle, 'cuMemsetD16_v2')
 */
    __pyx_v_4cuda_5_cuda_5ccuda___cuMemsetD8_v2 = dlsym(__pyx_v_handle, ((char const *)"cuMemsetD8_v2"));

    /* "cuda/_cuda/ccuda.pyx":1779
 *         __cuMemsetD8_v2 = dlfcn.dlsym(handle, 'cuMemsetD8_v2')
 *         global __cuMemsetD16_v2
 *         __cuMemsetD16_v2 = dlfcn.dlsym(handle, 'cuMemsetD16_v2')             # <<<<<<<<<<<<<<
 *         global __cuMemsetD32_v2
 *         __cuMemsetD32_v2 = dlfcn.dlsym(handle, 'cuMemsetD32_v2')
 */
    __pyx_v_4cuda_5_cuda_5ccuda___cuMemsetD16_v2 = dlsym(__pyx_v_handle, ((char const *)"cuMemsetD16_v2"));

    /* "cuda/_cuda/ccuda.pyx":1781
 *         __cuMemsetD16_v2 = dlfcn.dlsym(handle, 'cuMemsetD16_v2')
 *         global __cuMemsetD32_v2
 *         __cuMemsetD32_v2 = dlfcn.dlsym(handle, 'cuMemsetD32_v2')             # <<<<<<<<<<<<<<
 *         global __cuMemsetD2D8_v2
 *         __cuMemsetD2D8_v2 = dlfcn.dlsym(handle, 'cuMemsetD2D8_v2')
 */
    __pyx_v_4cuda_5_cuda_5ccuda___cuMemsetD32_v2 = dlsym(__pyx_v_handle, ((char const *)"cuMemsetD32_v2"));

    /* "cuda/_cuda/ccuda.pyx":1783
 *         __cuMemsetD32_v2 = dlfcn.dlsym(handle, 'cuMemsetD32_v2')
 *         global __cuMemsetD2D8_v2
 *         __cuMemsetD2D8_v2 = dlfcn.dlsym(handle, 'cuMemsetD2D8_v2')             # <<<<<<<<<<<<<<
 *         global __cuMemsetD2D16_v2
 *         __cuMemsetD2D16_v2 = dlfcn.dlsym(handle, 'cuMemsetD2D16_v2')
 */
    __pyx_v_4cuda_5_cuda_5ccuda___cuMemsetD2D8_v2 = dlsym(__pyx_v_handle, ((char const *)"cuMemsetD2D8_v2"));

    /* "cuda/_cuda/ccuda.pyx":1785
 *         __cuMemsetD2D8_v2 = dlfcn.dlsym(handle, 'cuMemsetD2D8_v2')
 *         global __cuMemsetD2D16_v2
 *         __cuMemsetD2D16_v2 = dlfcn.dlsym(handle, 'cuMemsetD2D16_v2')             # <<<<<<<<<<<<<<
 *         global __cuMemsetD2D32_v2
 *         __cuMemsetD2D32_v2 = dlfcn.dlsym(handle, 'cuMemsetD2D32_v2')
 */
    __pyx_v_4cuda_5_cuda_5ccuda___cuMemsetD2D16_v2 = dlsym(__pyx_v_handle, ((char const *)"cuMemsetD2D16_v2"));

    /* "cuda/_cuda/ccuda.pyx":1787
 *         __cuMemsetD2D16_v2 = dlfcn.dlsym(handle, 'cuMemsetD2D16_v2')
 *         global __cuMemsetD2D32_v2
 *         __cuMemsetD2D32_v2 = dlfcn.dlsym(handle, 'cuMemsetD2D32_v2')             # <<<<<<<<<<<<<<
 *         global __cuMemsetD8Async
 *         __cuMemsetD8Async = dlfcn.dlsym(handle, 'cuMemsetD8Async')
 */
    __pyx_v_4cuda_5_cuda_5ccuda___cuMemsetD2D32_v2 = dlsym(__pyx_v_handle, ((char const *)"cuMemsetD2D32_v2"));

    /* "cuda/_cuda/ccuda.pyx":1789
 *         __cuMemsetD2D32_v2 = dlfcn.dlsym(handle, 'cuMemsetD2D32_v2')
 *         global __cuMemsetD8Async
 *         __cuMemsetD8Async = dlfcn.dlsym(handle, 'cuMemsetD8Async')             # <<<<<<<<<<<<<<
 *         global __cuMemsetD16Async
 *         __cuMemsetD16Async = dlfcn.dlsym(handle, 'cuMemsetD16Async')
 */
    __pyx_v_4cuda_5_cuda_5ccuda___cuMemsetD8Async = dlsym(__pyx_v_handle, ((char const *)"cuMemsetD8Async"));

    /* "cuda/_cuda/ccuda.pyx":1791
 *         __cuMemsetD8Async = dlfcn.dlsym(handle, 'cuMemsetD8Async')
 *         global __cuMemsetD16Async
 *         __cuMemsetD16Async = dlfcn.dlsym(handle, 'cuMemsetD16Async')             # <<<<<<<<<<<<<<
 *         global __cuMemsetD32Async
 *         __cuMemsetD32Async = dlfcn.dlsym(handle, 'cuMemsetD32Async')
 */
    __pyx_v_4cuda_5_cuda_5ccuda___cuMemsetD16Async = dlsym(__pyx_v_handle, ((char const *)"cuMemsetD16Async"));

    /* "cuda/_cuda/ccuda.pyx":1793
 *         __cuMemsetD16Async = dlfcn.dlsym(handle, 'cuMemsetD16Async')
 *         global __cuMemsetD32Async
 *         __cuMemsetD32Async = dlfcn.dlsym(handle, 'cuMemsetD32Async')             # <<<<<<<<<<<<<<
 *         global __cuMemsetD2D8Async
 *         __cuMemsetD2D8Async = dlfcn.dlsym(handle, 'cuMemsetD2D8Async')
 */
    __pyx_v_4cuda_5_cuda_5ccuda___cuMemsetD32Async = dlsym(__pyx_v_handle, ((char const *)"cuMemsetD32Async"));

    /* "cuda/_cuda/ccuda.pyx":1795
 *         __cuMemsetD32Async = dlfcn.dlsym(handle, 'cuMemsetD32Async')
 *         global __cuMemsetD2D8Async
 *         __cuMemsetD2D8Async = dlfcn.dlsym(handle, 'cuMemsetD2D8Async')             # <<<<<<<<<<<<<<
 *         global __cuMemsetD2D16Async
 *         __cuMemsetD2D16Async = dlfcn.dlsym(handle, 'cuMemsetD2D16Async')
 */
    __pyx_v_4cuda_5_cuda_5ccuda___cuMemsetD2D8Async = dlsym(__pyx_v_handle, ((char const *)"cuMemsetD2D8Async"));

    /* "cuda/_cuda/ccuda.pyx":1797
 *         __cuMemsetD2D8Async = dlfcn.dlsym(handle, 'cuMemsetD2D8Async')
 *         global __cuMemsetD2D16Async
 *         __cuMemsetD2D16Async = dlfcn.dlsym(handle, 'cuMemsetD2D16Async')             # <<<<<<<<<<<<<<
 *         global __cuMemsetD2D32Async
 *         __cuMemsetD2D32Async = dlfcn.dlsym(handle, 'cuMemsetD2D32Async')
 */
    __pyx_v_4cuda_5_cuda_5ccuda___cuMemsetD2D16Async = dlsym(__pyx_v_handle, ((char const *)"cuMemsetD2D16Async"));

    /* "cuda/_cuda/ccuda.pyx":1799
 *         __cuMemsetD2D16Async = dlfcn.dlsym(handle, 'cuMemsetD2D16Async')
 *         global __cuMemsetD2D32Async
 *         __cuMemsetD2D32Async = dlfcn.dlsym(handle, 'cuMemsetD2D32Async')             # <<<<<<<<<<<<<<
 *         global __cuMemMapArrayAsync
 *         __cuMemMapArrayAsync = dlfcn.dlsym(handle, 'cuMemMapArrayAsync')
 */
    __pyx_v_4cuda_5_cuda_5ccuda___cuMemsetD2D32Async = dlsym(__pyx_v_handle, ((char const *)"cuMemsetD2D32Async"));

    /* "cuda/_cuda/ccuda.pyx":1801
 *         __cuMemsetD2D32Async = dlfcn.dlsym(handle, 'cuMemsetD2D32Async')
 *         global __cuMemMapArrayAsync
 *         __cuMemMapArrayAsync = dlfcn.dlsym(handle, 'cuMemMapArrayAsync')             # <<<<<<<<<<<<<<
 *         global __cuMemFreeAsync
 *         __cuMemFreeAsync = dlfcn.dlsym(handle, 'cuMemFreeAsync')
 */
    __pyx_v_4cuda_5_cuda_5ccuda___cuMemMapArrayAsync = dlsym(__pyx_v_handle, ((char const *)"cuMemMapArrayAsync"));

    /* "cuda/_cuda/ccuda.pyx":1803
 *         __cuMemMapArrayAsync = dlfcn.dlsym(handle, 'cuMemMapArrayAsync')
 *         global __cuMemFreeAsync
 *         __cuMemFreeAsync = dlfcn.dlsym(handle, 'cuMemFreeAsync')             # <<<<<<<<<<<<<<
 *         global __cuMemAllocAsync
 *         __cuMemAllocAsync = dlfcn.dlsym(handle, 'cuMemAllocAsync')
 */
    __pyx_v_4cuda_5_cuda_5ccuda___cuMemFreeAsync = dlsym(__pyx_v_handle, ((char const *)"cuMemFreeAsync"));

    /* "cuda/_cuda/ccuda.pyx":1805
 *         __cuMemFreeAsync = dlfcn.dlsym(handle, 'cuMemFreeAsync')
 *         global __cuMemAllocAsync
 *         __cuMemAllocAsync = dlfcn.dlsym(handle, 'cuMemAllocAsync')             # <<<<<<<<<<<<<<
 *         global __cuMemAllocFromPoolAsync
 *         __cuMemAllocFromPoolAsync = dlfcn.dlsym(handle, 'cuMemAllocFromPoolAsync')
 */
    __pyx_v_4cuda_5_cuda_5ccuda___cuMemAllocAsync = dlsym(__pyx_v_handle, ((char const *)"cuMemAllocAsync"));

    /* "cuda/_cuda/ccuda.pyx":1807
 *         __cuMemAllocAsync = dlfcn.dlsym(handle, 'cuMemAllocAsync')
 *         global __cuMemAllocFromPoolAsync
 *         __cuMemAllocFromPoolAsync = dlfcn.dlsym(handle, 'cuMemAllocFromPoolAsync')             # <<<<<<<<<<<<<<
 *         global __cuMemPrefetchAsync
 *         __cuMemPrefetchAsync = dlfcn.dlsym(handle, 'cuMemPrefetchAsync')
 */
    __pyx_v_4cuda_5_cuda_5ccuda___cuMemAllocFromPoolAsync = dlsym(__pyx_v_handle, ((char const *)"cuMemAllocFromPoolAsync"));

    /* "cuda/_cuda/ccuda.pyx":1809
 *         __cuMemAllocFromPoolAsync = dlfcn.dlsym(handle, 'cuMemAllocFromPoolAsync')
 *         global __cuMemPrefetchAsync
 *         __cuMemPrefetchAsync = dlfcn.dlsym(handle, 'cuMemPrefetchAsync')             # <<<<<<<<<<<<<<
 *         global __cuMemPrefetchAsync_v2
 *         __cuMemPrefetchAsync_v2 = dlfcn.dlsym(handle, 'cuMemPrefetchAsync_v2')
 */
    __pyx_v_4cuda_5_cuda_5ccuda___cuMemPrefetchAsync = dlsym(__pyx_v_handle, ((char const *)"cuMemPrefetchAsync"));

    /* "cuda/_cuda/ccuda.pyx":1811
 *         __cuMemPrefetchAsync = dlfcn.dlsym(handle, 'cuMemPrefetchAsync')
 *         global __cuMemPrefetchAsync_v2
 *         __cuMemPrefetchAsync_v2 = dlfcn.dlsym(handle, 'cuMemPrefetchAsync_v2')             # <<<<<<<<<<<<<<
 *         global __cuStreamGetPriority
 *         __cuStreamGetPriority = dlfcn.dlsym(handle, 'cuStreamGetPriority')
 */
    __pyx_v_4cuda_5_cuda_5ccuda___cuMemPrefetchAsync_v2 = dlsym(__pyx_v_handle, ((char const *)"cuMemPrefetchAsync_v2"));

    /* "cuda/_cuda/ccuda.pyx":1813
 *         __cuMemPrefetchAsync_v2 = dlfcn.dlsym(handle, 'cuMemPrefetchAsync_v2')
 *         global __cuStreamGetPriority
 *         __cuStreamGetPriority = dlfcn.dlsym(handle, 'cuStreamGetPriority')             # <<<<<<<<<<<<<<
 *         global __cuStreamGetFlags
 *         __cuStreamGetFlags = dlfcn.dlsym(handle, 'cuStreamGetFlags')
 */
    __pyx_v_4cuda_5_cuda_5ccuda___cuStreamGetPriority = dlsym(__pyx_v_handle, ((char const *)"cuStreamGetPriority"));

    /* "cuda/_cuda/ccuda.pyx":1815
 *         __cuStreamGetPriority = dlfcn.dlsym(handle, 'cuStreamGetPriority')
 *         global __cuStreamGetFlags
 *         __cuStreamGetFlags = dlfcn.dlsym(handle, 'cuStreamGetFlags')             # <<<<<<<<<<<<<<
 *         global __cuStreamGetId
 *         __cuStreamGetId = dlfcn.dlsym(handle, 'cuStreamGetId')
 */
    __pyx_v_4cuda_5_cuda_5ccuda___cuStreamGetFlags = dlsym(__pyx_v_handle, ((char const *)"cuStreamGetFlags"));

    /* "cuda/_cuda/ccuda.pyx":1817
 *         __cuStreamGetFlags = dlfcn.dlsym(handle, 'cuStreamGetFlags')
 *         global __cuStreamGetId
 *         __cuStreamGetId = dlfcn.dlsym(handle, 'cuStreamGetId')             # <<<<<<<<<<<<<<
 *         global __cuStreamGetCtx
 *         __cuStreamGetCtx = dlfcn.dlsym(handle, 'cuStreamGetCtx')
 */
    __pyx_v_4cuda_5_cuda_5ccuda___cuStreamGetId = dlsym(__pyx_v_handle, ((char const *)"cuStreamGetId"));

    /* "cuda/_cuda/ccuda.pyx":1819
 *         __cuStreamGetId = dlfcn.dlsym(handle, 'cuStreamGetId')
 *         global __cuStreamGetCtx
 *         __cuStreamGetCtx = dlfcn.dlsym(handle, 'cuStreamGetCtx')             # <<<<<<<<<<<<<<
 *         global __cuStreamWaitEvent
 *         __cuStreamWaitEvent = dlfcn.dlsym(handle, 'cuStreamWaitEvent')
 */
    __pyx_v_4cuda_5_cuda_5ccuda___cuStreamGetCtx = dlsym(__pyx_v_handle, ((char const *)"cuStreamGetCtx"));

    /* "cuda/_cuda/ccuda.pyx":1821
 *         __cuStreamGetCtx = dlfcn.dlsym(handle, 'cuStreamGetCtx')
 *         global __cuStreamWaitEvent
 *         __cuStreamWaitEvent = dlfcn.dlsym(handle, 'cuStreamWaitEvent')             # <<<<<<<<<<<<<<
 *         global __cuStreamAddCallback
 *         __cuStreamAddCallback = dlfcn.dlsym(handle, 'cuStreamAddCallback')
 */
    __pyx_v_4cuda_5_cuda_5ccuda___cuStreamWaitEvent = dlsym(__pyx_v_handle, ((char const *)"cuStreamWaitEvent"));

    /* "cuda/_cuda/ccuda.pyx":1823
 *         __cuStreamWaitEvent = dlfcn.dlsym(handle, 'cuStreamWaitEvent')
 *         global __cuStreamAddCallback
 *         __cuStreamAddCallback = dlfcn.dlsym(handle, 'cuStreamAddCallback')             # <<<<<<<<<<<<<<
 *         global __cuStreamBeginCapture_v2
 *         __cuStreamBeginCapture_v2 = dlfcn.dlsym(handle, 'cuStreamBeginCapture_v2')
 */
    __pyx_v_4cuda_5_cuda_5ccuda___cuStreamAddCallback = dlsym(__pyx_v_handle, ((char const *)"cuStreamAddCallback"));

    /* "cuda/_cuda/ccuda.pyx":1825
 *         __cuStreamAddCallback = dlfcn.dlsym(handle, 'cuStreamAddCallback')
 *         global __cuStreamBeginCapture_v2
 *         __cuStreamBeginCapture_v2 = dlfcn.dlsym(handle, 'cuStreamBeginCapture_v2')             # <<<<<<<<<<<<<<
 *         global __cuStreamBeginCaptureToGraph
 *         __cuStreamBeginCaptureToGraph = dlfcn.dlsym(handle, 'cuStreamBeginCaptureToGraph')
 */
    __pyx_v_4cuda_5_cuda_5ccuda___cuStreamBeginCapture_v2 = dlsym(__pyx_v_handle, ((char const *)"cuStreamBeginCapture_v2"));

    /* "cuda/_cuda/ccuda.pyx":1827
 *         __cuStreamBeginCapture_v2 = dlfcn.dlsym(handle, 'cuStreamBeginCapture_v2')
 *         global __cuStreamBeginCaptureToGraph
 *         __cuStreamBeginCaptureToGraph = dlfcn.dlsym(handle, 'cuStreamBeginCaptureToGraph')             # <<<<<<<<<<<<<<
 *         global __cuStreamEndCapture
 *         __cuStreamEndCapture = dlfcn.dlsym(handle, 'cuStreamEndCapture')
 */
    __pyx_v_4cuda_5_cuda_5ccuda___cuStreamBeginCaptureToGraph = dlsym(__pyx_v_handle, ((char const *)"cuStreamBeginCaptureToGraph"));

    /* "cuda/_cuda/ccuda.pyx":1829
 *         __cuStreamBeginCaptureToGraph = dlfcn.dlsym(handle, 'cuStreamBeginCaptureToGraph')
 *         global __cuStreamEndCapture
 *         __cuStreamEndCapture = dlfcn.dlsym(handle, 'cuStreamEndCapture')             # <<<<<<<<<<<<<<
 *         global __cuStreamIsCapturing
 *         __cuStreamIsCapturing = dlfcn.dlsym(handle, 'cuStreamIsCapturing')
 */
    __pyx_v_4cuda_5_cuda_5ccuda___cuStreamEndCapture = dlsym(__pyx_v_handle, ((char const *)"cuStreamEndCapture"));

    /* "cuda/_cuda/ccuda.pyx":1831
 *         __cuStreamEndCapture = dlfcn.dlsym(handle, 'cuStreamEndCapture')
 *         global __cuStreamIsCapturing
 *         __cuStreamIsCapturing = dlfcn.dlsym(handle, 'cuStreamIsCapturing')             # <<<<<<<<<<<<<<
 *         global __cuStreamGetCaptureInfo_v2
 *         __cuStreamGetCaptureInfo_v2 = dlfcn.dlsym(handle, 'cuStreamGetCaptureInfo_v2')
 */
    __pyx_v_4cuda_5_cuda_5ccuda___cuStreamIsCapturing = dlsym(__pyx_v_handle, ((char const *)"cuStreamIsCapturing"));

    /* "cuda/_cuda/ccuda.pyx":1833
 *         __cuStreamIsCapturing = dlfcn.dlsym(handle, 'cuStreamIsCapturing')
 *         global __cuStreamGetCaptureInfo_v2
 *         __cuStreamGetCaptureInfo_v2 = dlfcn.dlsym(handle, 'cuStreamGetCaptureInfo_v2')             # <<<<<<<<<<<<<<
 *         global __cuStreamGetCaptureInfo_v3
 *         __cuStreamGetCaptureInfo_v3 = dlfcn.dlsym(handle, 'cuStreamGetCaptureInfo_v3')
 */
    __pyx_v_4cuda_5_cuda_5ccuda___cuStreamGetCaptureInfo_v2 = dlsym(__pyx_v_handle, ((char const *)"cuStreamGetCaptureInfo_v2"));

    /* "cuda/_cuda/ccuda.pyx":1835
 *         __cuStreamGetCaptureInfo_v2 = dlfcn.dlsym(handle, 'cuStreamGetCaptureInfo_v2')
 *         global __cuStreamGetCaptureInfo_v3
 *         __cuStreamGetCaptureInfo_v3 = dlfcn.dlsym(handle, 'cuStreamGetCaptureInfo_v3')             # <<<<<<<<<<<<<<
 *         global __cuStreamUpdateCaptureDependencies
 *         __cuStreamUpdateCaptureDependencies = dlfcn.dlsym(handle, 'cuStreamUpdateCaptureDependencies')
 */
    __pyx_v_4cuda_5_cuda_5ccuda___cuStreamGetCaptureInfo_v3 = dlsym(__pyx_v_handle, ((char const *)"cuStreamGetCaptureInfo_v3"));

    /* "cuda/_cuda/ccuda.pyx":1837
 *         __cuStreamGetCaptureInfo_v3 = dlfcn.dlsym(handle, 'cuStreamGetCaptureInfo_v3')
 *         global __cuStreamUpdateCaptureDependencies
 *         __cuStreamUpdateCaptureDependencies = dlfcn.dlsym(handle, 'cuStreamUpdateCaptureDependencies')             # <<<<<<<<<<<<<<
 *         global __cuStreamUpdateCaptureDependencies_v2
 *         __cuStreamUpdateCaptureDependencies_v2 = dlfcn.dlsym(handle, 'cuStreamUpdateCaptureDependencies_v2')
 */
    __pyx_v_4cuda_5_cuda_5ccuda___cuStreamUpdateCaptureDependencies = dlsym(__pyx_v_handle, ((char const *)"cuStreamUpdateCaptureDependencies"));

    /* "cuda/_cuda/ccuda.pyx":1839
 *         __cuStreamUpdateCaptureDependencies = dlfcn.dlsym(handle, 'cuStreamUpdateCaptureDependencies')
 *         global __cuStreamUpdateCaptureDependencies_v2
 *         __cuStreamUpdateCaptureDependencies_v2 = dlfcn.dlsym(handle, 'cuStreamUpdateCaptureDependencies_v2')             # <<<<<<<<<<<<<<
 *         global __cuStreamAttachMemAsync
 *         __cuStreamAttachMemAsync = dlfcn.dlsym(handle, 'cuStreamAttachMemAsync')
 */
    __pyx_v_4cuda_5_cuda_5ccuda___cuStreamUpdateCaptureDependencies_v2 = dlsym(__pyx_v_handle, ((char const *)"cuStreamUpdateCaptureDependencies_v2"));

    /* "cuda/_cuda/ccuda.pyx":1841
 *         __cuStreamUpdateCaptureDependencies_v2 = dlfcn.dlsym(handle, 'cuStreamUpdateCaptureDependencies_v2')
 *         global __cuStreamAttachMemAsync
 *         __cuStreamAttachMemAsync = dlfcn.dlsym(handle, 'cuStreamAttachMemAsync')             # <<<<<<<<<<<<<<
 *         global __cuStreamQuery
 *         __cuStreamQuery = dlfcn.dlsym(handle, 'cuStreamQuery')
 */
    __pyx_v_4cuda_5_cuda_5ccuda___cuStreamAttachMemAsync = dlsym(__pyx_v_handle, ((char const *)"cuStreamAttachMemAsync"));

    /* "cuda/_cuda/ccuda.pyx":1843
 *         __cuStreamAttachMemAsync = dlfcn.dlsym(handle, 'cuStreamAttachMemAsync')
 *         global __cuStreamQuery
 *         __cuStreamQuery = dlfcn.dlsym(handle, 'cuStreamQuery')             # <<<<<<<<<<<<<<
 *         global __cuStreamSynchronize
 *         __cuStreamSynchronize = dlfcn.dlsym(handle, 'cuStreamSynchronize')
 */
    __pyx_v_4cuda_5_cuda_5ccuda___cuStreamQuery = dlsym(__pyx_v_handle, ((char const *)"cuStreamQuery"));

    /* "cuda/_cuda/ccuda.pyx":1845
 *         __cuStreamQuery = dlfcn.dlsym(handle, 'cuStreamQuery')
 *         global __cuStreamSynchronize
 *         __cuStreamSynchronize = dlfcn.dlsym(handle, 'cuStreamSynchronize')             # <<<<<<<<<<<<<<
 *         global __cuStreamCopyAttributes
 *         __cuStreamCopyAttributes = dlfcn.dlsym(handle, 'cuStreamCopyAttributes')
 */
    __pyx_v_4cuda_5_cuda_5ccuda___cuStreamSynchronize = dlsym(__pyx_v_handle, ((char const *)"cuStreamSynchronize"));

    /* "cuda/_cuda/ccuda.pyx":1847
 *         __cuStreamSynchronize = dlfcn.dlsym(handle, 'cuStreamSynchronize')
 *         global __cuStreamCopyAttributes
 *         __cuStreamCopyAttributes = dlfcn.dlsym(handle, 'cuStreamCopyAttributes')             # <<<<<<<<<<<<<<
 *         global __cuStreamGetAttribute
 *         __cuStreamGetAttribute = dlfcn.dlsym(handle, 'cuStreamGetAttribute')
 */
    __pyx_v_4cuda_5_cuda_5ccuda___cuStreamCopyAttributes = dlsym(__pyx_v_handle, ((char const *)"cuStreamCopyAttributes"));

    /* "cuda/_cuda/ccuda.pyx":1849
 *         __cuStreamCopyAttributes = dlfcn.dlsym(handle, 'cuStreamCopyAttributes')
 *         global __cuStreamGetAttribute
 *         __cuStreamGetAttribute = dlfcn.dlsym(handle, 'cuStreamGetAttribute')             # <<<<<<<<<<<<<<
 *         global __cuStreamSetAttribute
 *         __cuStreamSetAttribute = dlfcn.dlsym(handle, 'cuStreamSetAttribute')
 */
    __pyx_v_4cuda_5_cuda_5ccuda___cuStreamGetAttribute = dlsym(__pyx_v_handle, ((char const *)"cuStreamGetAttribute"));

    /* "cuda/_cuda/ccuda.pyx":1851
 *         __cuStreamGetAttribute = dlfcn.dlsym(handle, 'cuStreamGetAttribute')
 *         global __cuStreamSetAttribute
 *         __cuStreamSetAttribute = dlfcn.dlsym(handle, 'cuStreamSetAttribute')             # <<<<<<<<<<<<<<
 *         global __cuEventRecord
 *         __cuEventRecord = dlfcn.dlsym(handle, 'cuEventRecord')
 */
    __pyx_v_4cuda_5_cuda_5ccuda___cuStreamSetAttribute = dlsym(__pyx_v_handle, ((char const *)"cuStreamSetAttribute"));

    /* "cuda/_cuda/ccuda.pyx":1853
 *         __cuStreamSetAttribute = dlfcn.dlsym(handle, 'cuStreamSetAttribute')
 *         global __cuEventRecord
 *         __cuEventRecord = dlfcn.dlsym(handle, 'cuEventRecord')             # <<<<<<<<<<<<<<
 *         global __cuEventRecordWithFlags
 *         __cuEventRecordWithFlags = dlfcn.dlsym(handle, 'cuEventRecordWithFlags')
 */
    __pyx_v_4cuda_5_cuda_5ccuda___cuEventRecord = dlsym(__pyx_v_handle, ((char const *)"cuEventRecord"));

    /* "cuda/_cuda/ccuda.pyx":1855
 *         __cuEventRecord = dlfcn.dlsym(handle, 'cuEventRecord')
 *         global __cuEventRecordWithFlags
 *         __cuEventRecordWithFlags = dlfcn.dlsym(handle, 'cuEventRecordWithFlags')             # <<<<<<<<<<<<<<
 *         global __cuSignalExternalSemaphoresAsync
 *         __cuSignalExternalSemaphoresAsync = dlfcn.dlsym(handle, 'cuSignalExternalSemaphoresAsync')
 */
    __pyx_v_4cuda_5_cuda_5ccuda___cuEventRecordWithFlags = dlsym(__pyx_v_handle, ((char const *)"cuEventRecordWithFlags"));

    /* "cuda/_cuda/ccuda.pyx":1857
 *         __cuEventRecordWithFlags = dlfcn.dlsym(handle, 'cuEventRecordWithFlags')
 *         global __cuSignalExternalSemaphoresAsync
 *         __cuSignalExternalSemaphoresAsync = dlfcn.dlsym(handle, 'cuSignalExternalSemaphoresAsync')             # <<<<<<<<<<<<<<
 *         global __cuWaitExternalSemaphoresAsync
 *         __cuWaitExternalSemaphoresAsync = dlfcn.dlsym(handle, 'cuWaitExternalSemaphoresAsync')
 */
    __pyx_v_4cuda_5_cuda_5ccuda___cuSignalExternalSemaphoresAsync = dlsym(__pyx_v_handle, ((char const *)"cuSignalExternalSemaphoresAsync"));

    /* "cuda/_cuda/ccuda.pyx":1859
 *         __cuSignalExternalSemaphoresAsync = dlfcn.dlsym(handle, 'cuSignalExternalSemaphoresAsync')
 *         global __cuWaitExternalSemaphoresAsync
 *         __cuWaitExternalSemaphoresAsync = dlfcn.dlsym(handle, 'cuWaitExternalSemaphoresAsync')             # <<<<<<<<<<<<<<
 *         global __cuStreamWaitValue32_v2
 *         __cuStreamWaitValue32_v2 = dlfcn.dlsym(handle, 'cuStreamWaitValue32_v2')
 */
    __pyx_v_4cuda_5_cuda_5ccuda___cuWaitExternalSemaphoresAsync = dlsym(__pyx_v_handle, ((char const *)"cuWaitExternalSemaphoresAsync"));

    /* "cuda/_cuda/ccuda.pyx":1861
 *         __cuWaitExternalSemaphoresAsync = dlfcn.dlsym(handle, 'cuWaitExternalSemaphoresAsync')
 *         global __cuStreamWaitValue32_v2
 *         __cuStreamWaitValue32_v2 = dlfcn.dlsym(handle, 'cuStreamWaitValue32_v2')             # <<<<<<<<<<<<<<
 *         global __cuStreamWaitValue64_v2
 *         __cuStreamWaitValue64_v2 = dlfcn.dlsym(handle, 'cuStreamWaitValue64_v2')
 */
    __pyx_v_4cuda_5_cuda_5ccuda___cuStreamWaitValue32_v2 = dlsym(__pyx_v_handle, ((char const *)"cuStreamWaitValue32_v2"));

    /* "cuda/_cuda/ccuda.pyx":1863
 *         __cuStreamWaitValue32_v2 = dlfcn.dlsym(handle, 'cuStreamWaitValue32_v2')
 *         global __cuStreamWaitValue64_v2
 *         __cuStreamWaitValue64_v2 = dlfcn.dlsym(handle, 'cuStreamWaitValue64_v2')             # <<<<<<<<<<<<<<
 *         global __cuStreamWriteValue32_v2
 *         __cuStreamWriteValue32_v2 = dlfcn.dlsym(handle, 'cuStreamWriteValue32_v2')
 */
    __pyx_v_4cuda_5_cuda_5ccuda___cuStreamWaitValue64_v2 = dlsym(__pyx_v_handle, ((char const *)"cuStreamWaitValue64_v2"));

    /* "cuda/_cuda/ccuda.pyx":1865
 *         __cuStreamWaitValue64_v2 = dlfcn.dlsym(handle, 'cuStreamWaitValue64_v2')
 *         global __cuStreamWriteValue32_v2
 *         __cuStreamWriteValue32_v2 = dlfcn.dlsym(handle, 'cuStreamWriteValue32_v2')             # <<<<<<<<<<<<<<
 *         global __cuStreamWriteValue64_v2
 *         __cuStreamWriteValue64_v2 = dlfcn.dlsym(handle, 'cuStreamWriteValue64_v2')
 */
    __pyx_v_4cuda_5_cuda_5ccuda___cuStreamWriteValue32_v2 = dlsym(__pyx_v_handle, ((char const *)"cuStreamWriteValue32_v2"));

    /* "cuda/_cuda/ccuda.pyx":1867
 *         __cuStreamWriteValue32_v2 = dlfcn.dlsym(handle, 'cuStreamWriteValue32_v2')
 *         global __cuStreamWriteValue64_v2
 *         __cuStreamWriteValue64_v2 = dlfcn.dlsym(handle, 'cuStreamWriteValue64_v2')             # <<<<<<<<<<<<<<
 *         global __cuStreamBatchMemOp_v2
 *         __cuStreamBatchMemOp_v2 = dlfcn.dlsym(handle, 'cuStreamBatchMemOp_v2')
 */
    __pyx_v_4cuda_5_cuda_5ccuda___cuStreamWriteValue64_v2 = dlsym(__pyx_v_handle, ((char const *)"cuStreamWriteValue64_v2"));

    /* "cuda/_cuda/ccuda.pyx":1869
 *         __cuStreamWriteValue64_v2 = dlfcn.dlsym(handle, 'cuStreamWriteValue64_v2')
 *         global __cuStreamBatchMemOp_v2
 *         __cuStreamBatchMemOp_v2 = dlfcn.dlsym(handle, 'cuStreamBatchMemOp_v2')             # <<<<<<<<<<<<<<
 *         global __cuLaunchKernel
 *         __cuLaunchKernel = dlfcn.dlsym(handle, 'cuLaunchKernel')
 */
    __pyx_v_4cuda_5_cuda_5ccuda___cuStreamBatchMemOp_v2 = dlsym(__pyx_v_handle, ((char const *)"cuStreamBatchMemOp_v2"));

    /* "cuda/_cuda/ccuda.pyx":1871
 *         __cuStreamBatchMemOp_v2 = dlfcn.dlsym(handle, 'cuStreamBatchMemOp_v2')
 *         global __cuLaunchKernel
 *         __cuLaunchKernel = dlfcn.dlsym(handle, 'cuLaunchKernel')             # <<<<<<<<<<<<<<
 *         global __cuLaunchKernelEx
 *         __cuLaunchKernelEx = dlfcn.dlsym(handle, 'cuLaunchKernelEx')
 */
    __pyx_v_4cuda_5_cuda_5ccuda___cuLaunchKernel = dlsym(__pyx_v_handle, ((char const *)"cuLaunchKernel"));

    /* "cuda/_cuda/ccuda.pyx":1873
 *         __cuLaunchKernel = dlfcn.dlsym(handle, 'cuLaunchKernel')
 *         global __cuLaunchKernelEx
 *         __cuLaunchKernelEx = dlfcn.dlsym(handle, 'cuLaunchKernelEx')             # <<<<<<<<<<<<<<
 *         global __cuLaunchCooperativeKernel
 *         __cuLaunchCooperativeKernel = dlfcn.dlsym(handle, 'cuLaunchCooperativeKernel')
 */
    __pyx_v_4cuda_5_cuda_5ccuda___cuLaunchKernelEx = dlsym(__pyx_v_handle, ((char const *)"cuLaunchKernelEx"));

    /* "cuda/_cuda/ccuda.pyx":1875
 *         __cuLaunchKernelEx = dlfcn.dlsym(handle, 'cuLaunchKernelEx')
 *         global __cuLaunchCooperativeKernel
 *         __cuLaunchCooperativeKernel = dlfcn.dlsym(handle, 'cuLaunchCooperativeKernel')             # <<<<<<<<<<<<<<
 *         global __cuLaunchHostFunc
 *         __cuLaunchHostFunc = dlfcn.dlsym(handle, 'cuLaunchHostFunc')
 */
    __pyx_v_4cuda_5_cuda_5ccuda___cuLaunchCooperativeKernel = dlsym(__pyx_v_handle, ((char const *)"cuLaunchCooperativeKernel"));

    /* "cuda/_cuda/ccuda.pyx":1877
 *         __cuLaunchCooperativeKernel = dlfcn.dlsym(handle, 'cuLaunchCooperativeKernel')
 *         global __cuLaunchHostFunc
 *         __cuLaunchHostFunc = dlfcn.dlsym(handle, 'cuLaunchHostFunc')             # <<<<<<<<<<<<<<
 *         global __cuGraphInstantiateWithParams
 *         __cuGraphInstantiateWithParams = dlfcn.dlsym(handle, 'cuGraphInstantiateWithParams')
 */
    __pyx_v_4cuda_5_cuda_5ccuda___cuLaunchHostFunc = dlsym(__pyx_v_handle, ((char const *)"cuLaunchHostFunc"));

    /* "cuda/_cuda/ccuda.pyx":1879
 *         __cuLaunchHostFunc = dlfcn.dlsym(handle, 'cuLaunchHostFunc')
 *         global __cuGraphInstantiateWithParams
 *         __cuGraphInstantiateWithParams = dlfcn.dlsym(handle, 'cuGraphInstantiateWithParams')             # <<<<<<<<<<<<<<
 *         global __cuGraphUpload
 *         __cuGraphUpload = dlfcn.dlsym(handle, 'cuGraphUpload')
 */
    __pyx_v_4cuda_5_cuda_5ccuda___cuGraphInstantiateWithParams = dlsym(__pyx_v_handle, ((char const *)"cuGraphInstantiateWithParams"));

    /* "cuda/_cuda/ccuda.pyx":1881
 *         __cuGraphInstantiateWithParams = dlfcn.dlsym(handle, 'cuGraphInstantiateWithParams')
 *         global __cuGraphUpload
 *         __cuGraphUpload = dlfcn.dlsym(handle, 'cuGraphUpload')             # <<<<<<<<<<<<<<
 *         global __cuGraphLaunch
 *         __cuGraphLaunch = dlfcn.dlsym(handle, 'cuGraphLaunch')
 */
    __pyx_v_4cuda_5_cuda_5ccuda___cuGraphUpload = dlsym(__pyx_v_handle, ((char const *)"cuGraphUpload"));

    /* "cuda/_cuda/ccuda.pyx":1883
 *         __cuGraphUpload = dlfcn.dlsym(handle, 'cuGraphUpload')
 *         global __cuGraphLaunch
 *         __cuGraphLaunch = dlfcn.dlsym(handle, 'cuGraphLaunch')             # <<<<<<<<<<<<<<
 *         global __cuGraphicsMapResources
 *         __cuGraphicsMapResources = dlfcn.dlsym(handle, 'cuGraphicsMapResources')
 */
    __pyx_v_4cuda_5_cuda_5ccuda___cuGraphLaunch = dlsym(__pyx_v_handle, ((char const *)"cuGraphLaunch"));

    /* "cuda/_cuda/ccuda.pyx":1885
 *         __cuGraphLaunch = dlfcn.dlsym(handle, 'cuGraphLaunch')
 *         global __cuGraphicsMapResources
 *         __cuGraphicsMapResources = dlfcn.dlsym(handle, 'cuGraphicsMapResources')             # <<<<<<<<<<<<<<
 *         global __cuGraphicsUnmapResources
 *         __cuGraphicsUnmapResources = dlfcn.dlsym(handle, 'cuGraphicsUnmapResources')
 */
    __pyx_v_4cuda_5_cuda_5ccuda___cuGraphicsMapResources = dlsym(__pyx_v_handle, ((char const *)"cuGraphicsMapResources"));

    /* "cuda/_cuda/ccuda.pyx":1887
 *         __cuGraphicsMapResources = dlfcn.dlsym(handle, 'cuGraphicsMapResources')
 *         global __cuGraphicsUnmapResources
 *         __cuGraphicsUnmapResources = dlfcn.dlsym(handle, 'cuGraphicsUnmapResources')             # <<<<<<<<<<<<<<
 *     # Get remaining functions
 *     global __cuGetErrorString
 */
    __pyx_v_4cuda_5_cuda_5ccuda___cuGraphicsUnmapResources = dlsym(__pyx_v_handle, ((char const *)"cuGraphicsUnmapResources"));
  }
  __pyx_L16:;

  /* "cuda/_cuda/ccuda.pyx":1890
 *     # Get remaining functions
 *     global __cuGetErrorString
 *     __cuGetErrorString = dlfcn.dlsym(handle, 'cuGetErrorString')             # <<<<<<<<<<<<<<
 *     global __cuGetErrorName
 *     __cuGetErrorName = dlfcn.dlsym(handle, 'cuGetErrorName')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuGetErrorString = dlsym(__pyx_v_handle, ((char const *)"cuGetErrorString"));

  /* "cuda/_cuda/ccuda.pyx":1892
 *     __cuGetErrorString = dlfcn.dlsym(handle, 'cuGetErrorString')
 *     global __cuGetErrorName
 *     __cuGetErrorName = dlfcn.dlsym(handle, 'cuGetErrorName')             # <<<<<<<<<<<<<<
 *     global __cuInit
 *     __cuInit = dlfcn.dlsym(handle, 'cuInit')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuGetErrorName = dlsym(__pyx_v_handle, ((char const *)"cuGetErrorName"));

  /* "cuda/_cuda/ccuda.pyx":1894
 *     __cuGetErrorName = dlfcn.dlsym(handle, 'cuGetErrorName')
 *     global __cuInit
 *     __cuInit = dlfcn.dlsym(handle, 'cuInit')             # <<<<<<<<<<<<<<
 *     global __cuDriverGetVersion
 *     __cuDriverGetVersion = dlfcn.dlsym(handle, 'cuDriverGetVersion')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuInit = dlsym(__pyx_v_handle, ((char const *)"cuInit"));

  /* "cuda/_cuda/ccuda.pyx":1896
 *     __cuInit = dlfcn.dlsym(handle, 'cuInit')
 *     global __cuDriverGetVersion
 *     __cuDriverGetVersion = dlfcn.dlsym(handle, 'cuDriverGetVersion')             # <<<<<<<<<<<<<<
 *     global __cuDeviceGet
 *     __cuDeviceGet = dlfcn.dlsym(handle, 'cuDeviceGet')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuDriverGetVersion = dlsym(__pyx_v_handle, ((char const *)"cuDriverGetVersion"));

  /* "cuda/_cuda/ccuda.pyx":1898
 *     __cuDriverGetVersion = dlfcn.dlsym(handle, 'cuDriverGetVersion')
 *     global __cuDeviceGet
 *     __cuDeviceGet = dlfcn.dlsym(handle, 'cuDeviceGet')             # <<<<<<<<<<<<<<
 *     global __cuDeviceGetCount
 *     __cuDeviceGetCount = dlfcn.dlsym(handle, 'cuDeviceGetCount')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuDeviceGet = dlsym(__pyx_v_handle, ((char const *)"cuDeviceGet"));

  /* "cuda/_cuda/ccuda.pyx":1900
 *     __cuDeviceGet = dlfcn.dlsym(handle, 'cuDeviceGet')
 *     global __cuDeviceGetCount
 *     __cuDeviceGetCount = dlfcn.dlsym(handle, 'cuDeviceGetCount')             # <<<<<<<<<<<<<<
 *     global __cuDeviceGetName
 *     __cuDeviceGetName = dlfcn.dlsym(handle, 'cuDeviceGetName')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuDeviceGetCount = dlsym(__pyx_v_handle, ((char const *)"cuDeviceGetCount"));

  /* "cuda/_cuda/ccuda.pyx":1902
 *     __cuDeviceGetCount = dlfcn.dlsym(handle, 'cuDeviceGetCount')
 *     global __cuDeviceGetName
 *     __cuDeviceGetName = dlfcn.dlsym(handle, 'cuDeviceGetName')             # <<<<<<<<<<<<<<
 *     global __cuDeviceGetUuid
 *     __cuDeviceGetUuid = dlfcn.dlsym(handle, 'cuDeviceGetUuid')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuDeviceGetName = dlsym(__pyx_v_handle, ((char const *)"cuDeviceGetName"));

  /* "cuda/_cuda/ccuda.pyx":1904
 *     __cuDeviceGetName = dlfcn.dlsym(handle, 'cuDeviceGetName')
 *     global __cuDeviceGetUuid
 *     __cuDeviceGetUuid = dlfcn.dlsym(handle, 'cuDeviceGetUuid')             # <<<<<<<<<<<<<<
 *     global __cuDeviceGetUuid_v2
 *     __cuDeviceGetUuid_v2 = dlfcn.dlsym(handle, 'cuDeviceGetUuid_v2')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuDeviceGetUuid = dlsym(__pyx_v_handle, ((char const *)"cuDeviceGetUuid"));

  /* "cuda/_cuda/ccuda.pyx":1906
 *     __cuDeviceGetUuid = dlfcn.dlsym(handle, 'cuDeviceGetUuid')
 *     global __cuDeviceGetUuid_v2
 *     __cuDeviceGetUuid_v2 = dlfcn.dlsym(handle, 'cuDeviceGetUuid_v2')             # <<<<<<<<<<<<<<
 *     global __cuDeviceGetLuid
 *     __cuDeviceGetLuid = dlfcn.dlsym(handle, 'cuDeviceGetLuid')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuDeviceGetUuid_v2 = dlsym(__pyx_v_handle, ((char const *)"cuDeviceGetUuid_v2"));

  /* "cuda/_cuda/ccuda.pyx":1908
 *     __cuDeviceGetUuid_v2 = dlfcn.dlsym(handle, 'cuDeviceGetUuid_v2')
 *     global __cuDeviceGetLuid
 *     __cuDeviceGetLuid = dlfcn.dlsym(handle, 'cuDeviceGetLuid')             # <<<<<<<<<<<<<<
 *     global __cuDeviceTotalMem_v2
 *     __cuDeviceTotalMem_v2 = dlfcn.dlsym(handle, 'cuDeviceTotalMem_v2')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuDeviceGetLuid = dlsym(__pyx_v_handle, ((char const *)"cuDeviceGetLuid"));

  /* "cuda/_cuda/ccuda.pyx":1910
 *     __cuDeviceGetLuid = dlfcn.dlsym(handle, 'cuDeviceGetLuid')
 *     global __cuDeviceTotalMem_v2
 *     __cuDeviceTotalMem_v2 = dlfcn.dlsym(handle, 'cuDeviceTotalMem_v2')             # <<<<<<<<<<<<<<
 *     global __cuDeviceGetTexture1DLinearMaxWidth
 *     __cuDeviceGetTexture1DLinearMaxWidth = dlfcn.dlsym(handle, 'cuDeviceGetTexture1DLinearMaxWidth')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuDeviceTotalMem_v2 = dlsym(__pyx_v_handle, ((char const *)"cuDeviceTotalMem_v2"));

  /* "cuda/_cuda/ccuda.pyx":1912
 *     __cuDeviceTotalMem_v2 = dlfcn.dlsym(handle, 'cuDeviceTotalMem_v2')
 *     global __cuDeviceGetTexture1DLinearMaxWidth
 *     __cuDeviceGetTexture1DLinearMaxWidth = dlfcn.dlsym(handle, 'cuDeviceGetTexture1DLinearMaxWidth')             # <<<<<<<<<<<<<<
 *     global __cuDeviceGetAttribute
 *     __cuDeviceGetAttribute = dlfcn.dlsym(handle, 'cuDeviceGetAttribute')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuDeviceGetTexture1DLinearMaxWidth = dlsym(__pyx_v_handle, ((char const *)"cuDeviceGetTexture1DLinearMaxWidth"));

  /* "cuda/_cuda/ccuda.pyx":1914
 *     __cuDeviceGetTexture1DLinearMaxWidth = dlfcn.dlsym(handle, 'cuDeviceGetTexture1DLinearMaxWidth')
 *     global __cuDeviceGetAttribute
 *     __cuDeviceGetAttribute = dlfcn.dlsym(handle, 'cuDeviceGetAttribute')             # <<<<<<<<<<<<<<
 *     global __cuDeviceGetNvSciSyncAttributes
 *     __cuDeviceGetNvSciSyncAttributes = dlfcn.dlsym(handle, 'cuDeviceGetNvSciSyncAttributes')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuDeviceGetAttribute = dlsym(__pyx_v_handle, ((char const *)"cuDeviceGetAttribute"));

  /* "cuda/_cuda/ccuda.pyx":1916
 *     __cuDeviceGetAttribute = dlfcn.dlsym(handle, 'cuDeviceGetAttribute')
 *     global __cuDeviceGetNvSciSyncAttributes
 *     __cuDeviceGetNvSciSyncAttributes = dlfcn.dlsym(handle, 'cuDeviceGetNvSciSyncAttributes')             # <<<<<<<<<<<<<<
 *     global __cuDeviceSetMemPool
 *     __cuDeviceSetMemPool = dlfcn.dlsym(handle, 'cuDeviceSetMemPool')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuDeviceGetNvSciSyncAttributes = dlsym(__pyx_v_handle, ((char const *)"cuDeviceGetNvSciSyncAttributes"));

  /* "cuda/_cuda/ccuda.pyx":1918
 *     __cuDeviceGetNvSciSyncAttributes = dlfcn.dlsym(handle, 'cuDeviceGetNvSciSyncAttributes')
 *     global __cuDeviceSetMemPool
 *     __cuDeviceSetMemPool = dlfcn.dlsym(handle, 'cuDeviceSetMemPool')             # <<<<<<<<<<<<<<
 *     global __cuDeviceGetMemPool
 *     __cuDeviceGetMemPool = dlfcn.dlsym(handle, 'cuDeviceGetMemPool')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuDeviceSetMemPool = dlsym(__pyx_v_handle, ((char const *)"cuDeviceSetMemPool"));

  /* "cuda/_cuda/ccuda.pyx":1920
 *     __cuDeviceSetMemPool = dlfcn.dlsym(handle, 'cuDeviceSetMemPool')
 *     global __cuDeviceGetMemPool
 *     __cuDeviceGetMemPool = dlfcn.dlsym(handle, 'cuDeviceGetMemPool')             # <<<<<<<<<<<<<<
 *     global __cuDeviceGetDefaultMemPool
 *     __cuDeviceGetDefaultMemPool = dlfcn.dlsym(handle, 'cuDeviceGetDefaultMemPool')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuDeviceGetMemPool = dlsym(__pyx_v_handle, ((char const *)"cuDeviceGetMemPool"));

  /* "cuda/_cuda/ccuda.pyx":1922
 *     __cuDeviceGetMemPool = dlfcn.dlsym(handle, 'cuDeviceGetMemPool')
 *     global __cuDeviceGetDefaultMemPool
 *     __cuDeviceGetDefaultMemPool = dlfcn.dlsym(handle, 'cuDeviceGetDefaultMemPool')             # <<<<<<<<<<<<<<
 *     global __cuDeviceGetExecAffinitySupport
 *     __cuDeviceGetExecAffinitySupport = dlfcn.dlsym(handle, 'cuDeviceGetExecAffinitySupport')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuDeviceGetDefaultMemPool = dlsym(__pyx_v_handle, ((char const *)"cuDeviceGetDefaultMemPool"));

  /* "cuda/_cuda/ccuda.pyx":1924
 *     __cuDeviceGetDefaultMemPool = dlfcn.dlsym(handle, 'cuDeviceGetDefaultMemPool')
 *     global __cuDeviceGetExecAffinitySupport
 *     __cuDeviceGetExecAffinitySupport = dlfcn.dlsym(handle, 'cuDeviceGetExecAffinitySupport')             # <<<<<<<<<<<<<<
 *     global __cuFlushGPUDirectRDMAWrites
 *     __cuFlushGPUDirectRDMAWrites = dlfcn.dlsym(handle, 'cuFlushGPUDirectRDMAWrites')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuDeviceGetExecAffinitySupport = dlsym(__pyx_v_handle, ((char const *)"cuDeviceGetExecAffinitySupport"));

  /* "cuda/_cuda/ccuda.pyx":1926
 *     __cuDeviceGetExecAffinitySupport = dlfcn.dlsym(handle, 'cuDeviceGetExecAffinitySupport')
 *     global __cuFlushGPUDirectRDMAWrites
 *     __cuFlushGPUDirectRDMAWrites = dlfcn.dlsym(handle, 'cuFlushGPUDirectRDMAWrites')             # <<<<<<<<<<<<<<
 *     global __cuDeviceGetProperties
 *     __cuDeviceGetProperties = dlfcn.dlsym(handle, 'cuDeviceGetProperties')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuFlushGPUDirectRDMAWrites = dlsym(__pyx_v_handle, ((char const *)"cuFlushGPUDirectRDMAWrites"));

  /* "cuda/_cuda/ccuda.pyx":1928
 *     __cuFlushGPUDirectRDMAWrites = dlfcn.dlsym(handle, 'cuFlushGPUDirectRDMAWrites')
 *     global __cuDeviceGetProperties
 *     __cuDeviceGetProperties = dlfcn.dlsym(handle, 'cuDeviceGetProperties')             # <<<<<<<<<<<<<<
 *     global __cuDeviceComputeCapability
 *     __cuDeviceComputeCapability = dlfcn.dlsym(handle, 'cuDeviceComputeCapability')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuDeviceGetProperties = dlsym(__pyx_v_handle, ((char const *)"cuDeviceGetProperties"));

  /* "cuda/_cuda/ccuda.pyx":1930
 *     __cuDeviceGetProperties = dlfcn.dlsym(handle, 'cuDeviceGetProperties')
 *     global __cuDeviceComputeCapability
 *     __cuDeviceComputeCapability = dlfcn.dlsym(handle, 'cuDeviceComputeCapability')             # <<<<<<<<<<<<<<
 *     global __cuDevicePrimaryCtxRetain
 *     __cuDevicePrimaryCtxRetain = dlfcn.dlsym(handle, 'cuDevicePrimaryCtxRetain')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuDeviceComputeCapability = dlsym(__pyx_v_handle, ((char const *)"cuDeviceComputeCapability"));

  /* "cuda/_cuda/ccuda.pyx":1932
 *     __cuDeviceComputeCapability = dlfcn.dlsym(handle, 'cuDeviceComputeCapability')
 *     global __cuDevicePrimaryCtxRetain
 *     __cuDevicePrimaryCtxRetain = dlfcn.dlsym(handle, 'cuDevicePrimaryCtxRetain')             # <<<<<<<<<<<<<<
 *     global __cuDevicePrimaryCtxRelease_v2
 *     __cuDevicePrimaryCtxRelease_v2 = dlfcn.dlsym(handle, 'cuDevicePrimaryCtxRelease_v2')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuDevicePrimaryCtxRetain = dlsym(__pyx_v_handle, ((char const *)"cuDevicePrimaryCtxRetain"));

  /* "cuda/_cuda/ccuda.pyx":1934
 *     __cuDevicePrimaryCtxRetain = dlfcn.dlsym(handle, 'cuDevicePrimaryCtxRetain')
 *     global __cuDevicePrimaryCtxRelease_v2
 *     __cuDevicePrimaryCtxRelease_v2 = dlfcn.dlsym(handle, 'cuDevicePrimaryCtxRelease_v2')             # <<<<<<<<<<<<<<
 *     global __cuDevicePrimaryCtxSetFlags_v2
 *     __cuDevicePrimaryCtxSetFlags_v2 = dlfcn.dlsym(handle, 'cuDevicePrimaryCtxSetFlags_v2')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuDevicePrimaryCtxRelease_v2 = dlsym(__pyx_v_handle, ((char const *)"cuDevicePrimaryCtxRelease_v2"));

  /* "cuda/_cuda/ccuda.pyx":1936
 *     __cuDevicePrimaryCtxRelease_v2 = dlfcn.dlsym(handle, 'cuDevicePrimaryCtxRelease_v2')
 *     global __cuDevicePrimaryCtxSetFlags_v2
 *     __cuDevicePrimaryCtxSetFlags_v2 = dlfcn.dlsym(handle, 'cuDevicePrimaryCtxSetFlags_v2')             # <<<<<<<<<<<<<<
 *     global __cuDevicePrimaryCtxGetState
 *     __cuDevicePrimaryCtxGetState = dlfcn.dlsym(handle, 'cuDevicePrimaryCtxGetState')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuDevicePrimaryCtxSetFlags_v2 = dlsym(__pyx_v_handle, ((char const *)"cuDevicePrimaryCtxSetFlags_v2"));

  /* "cuda/_cuda/ccuda.pyx":1938
 *     __cuDevicePrimaryCtxSetFlags_v2 = dlfcn.dlsym(handle, 'cuDevicePrimaryCtxSetFlags_v2')
 *     global __cuDevicePrimaryCtxGetState
 *     __cuDevicePrimaryCtxGetState = dlfcn.dlsym(handle, 'cuDevicePrimaryCtxGetState')             # <<<<<<<<<<<<<<
 *     global __cuDevicePrimaryCtxReset_v2
 *     __cuDevicePrimaryCtxReset_v2 = dlfcn.dlsym(handle, 'cuDevicePrimaryCtxReset_v2')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuDevicePrimaryCtxGetState = dlsym(__pyx_v_handle, ((char const *)"cuDevicePrimaryCtxGetState"));

  /* "cuda/_cuda/ccuda.pyx":1940
 *     __cuDevicePrimaryCtxGetState = dlfcn.dlsym(handle, 'cuDevicePrimaryCtxGetState')
 *     global __cuDevicePrimaryCtxReset_v2
 *     __cuDevicePrimaryCtxReset_v2 = dlfcn.dlsym(handle, 'cuDevicePrimaryCtxReset_v2')             # <<<<<<<<<<<<<<
 *     global __cuCtxCreate_v2
 *     __cuCtxCreate_v2 = dlfcn.dlsym(handle, 'cuCtxCreate_v2')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuDevicePrimaryCtxReset_v2 = dlsym(__pyx_v_handle, ((char const *)"cuDevicePrimaryCtxReset_v2"));

  /* "cuda/_cuda/ccuda.pyx":1942
 *     __cuDevicePrimaryCtxReset_v2 = dlfcn.dlsym(handle, 'cuDevicePrimaryCtxReset_v2')
 *     global __cuCtxCreate_v2
 *     __cuCtxCreate_v2 = dlfcn.dlsym(handle, 'cuCtxCreate_v2')             # <<<<<<<<<<<<<<
 *     global __cuCtxCreate_v3
 *     __cuCtxCreate_v3 = dlfcn.dlsym(handle, 'cuCtxCreate_v3')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuCtxCreate_v2 = dlsym(__pyx_v_handle, ((char const *)"cuCtxCreate_v2"));

  /* "cuda/_cuda/ccuda.pyx":1944
 *     __cuCtxCreate_v2 = dlfcn.dlsym(handle, 'cuCtxCreate_v2')
 *     global __cuCtxCreate_v3
 *     __cuCtxCreate_v3 = dlfcn.dlsym(handle, 'cuCtxCreate_v3')             # <<<<<<<<<<<<<<
 *     global __cuCtxDestroy_v2
 *     __cuCtxDestroy_v2 = dlfcn.dlsym(handle, 'cuCtxDestroy_v2')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuCtxCreate_v3 = dlsym(__pyx_v_handle, ((char const *)"cuCtxCreate_v3"));

  /* "cuda/_cuda/ccuda.pyx":1946
 *     __cuCtxCreate_v3 = dlfcn.dlsym(handle, 'cuCtxCreate_v3')
 *     global __cuCtxDestroy_v2
 *     __cuCtxDestroy_v2 = dlfcn.dlsym(handle, 'cuCtxDestroy_v2')             # <<<<<<<<<<<<<<
 *     global __cuCtxPushCurrent_v2
 *     __cuCtxPushCurrent_v2 = dlfcn.dlsym(handle, 'cuCtxPushCurrent_v2')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuCtxDestroy_v2 = dlsym(__pyx_v_handle, ((char const *)"cuCtxDestroy_v2"));

  /* "cuda/_cuda/ccuda.pyx":1948
 *     __cuCtxDestroy_v2 = dlfcn.dlsym(handle, 'cuCtxDestroy_v2')
 *     global __cuCtxPushCurrent_v2
 *     __cuCtxPushCurrent_v2 = dlfcn.dlsym(handle, 'cuCtxPushCurrent_v2')             # <<<<<<<<<<<<<<
 *     global __cuCtxPopCurrent_v2
 *     __cuCtxPopCurrent_v2 = dlfcn.dlsym(handle, 'cuCtxPopCurrent_v2')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuCtxPushCurrent_v2 = dlsym(__pyx_v_handle, ((char const *)"cuCtxPushCurrent_v2"));

  /* "cuda/_cuda/ccuda.pyx":1950
 *     __cuCtxPushCurrent_v2 = dlfcn.dlsym(handle, 'cuCtxPushCurrent_v2')
 *     global __cuCtxPopCurrent_v2
 *     __cuCtxPopCurrent_v2 = dlfcn.dlsym(handle, 'cuCtxPopCurrent_v2')             # <<<<<<<<<<<<<<
 *     global __cuCtxSetCurrent
 *     __cuCtxSetCurrent = dlfcn.dlsym(handle, 'cuCtxSetCurrent')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuCtxPopCurrent_v2 = dlsym(__pyx_v_handle, ((char const *)"cuCtxPopCurrent_v2"));

  /* "cuda/_cuda/ccuda.pyx":1952
 *     __cuCtxPopCurrent_v2 = dlfcn.dlsym(handle, 'cuCtxPopCurrent_v2')
 *     global __cuCtxSetCurrent
 *     __cuCtxSetCurrent = dlfcn.dlsym(handle, 'cuCtxSetCurrent')             # <<<<<<<<<<<<<<
 *     global __cuCtxGetCurrent
 *     __cuCtxGetCurrent = dlfcn.dlsym(handle, 'cuCtxGetCurrent')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuCtxSetCurrent = dlsym(__pyx_v_handle, ((char const *)"cuCtxSetCurrent"));

  /* "cuda/_cuda/ccuda.pyx":1954
 *     __cuCtxSetCurrent = dlfcn.dlsym(handle, 'cuCtxSetCurrent')
 *     global __cuCtxGetCurrent
 *     __cuCtxGetCurrent = dlfcn.dlsym(handle, 'cuCtxGetCurrent')             # <<<<<<<<<<<<<<
 *     global __cuCtxGetDevice
 *     __cuCtxGetDevice = dlfcn.dlsym(handle, 'cuCtxGetDevice')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuCtxGetCurrent = dlsym(__pyx_v_handle, ((char const *)"cuCtxGetCurrent"));

  /* "cuda/_cuda/ccuda.pyx":1956
 *     __cuCtxGetCurrent = dlfcn.dlsym(handle, 'cuCtxGetCurrent')
 *     global __cuCtxGetDevice
 *     __cuCtxGetDevice = dlfcn.dlsym(handle, 'cuCtxGetDevice')             # <<<<<<<<<<<<<<
 *     global __cuCtxGetFlags
 *     __cuCtxGetFlags = dlfcn.dlsym(handle, 'cuCtxGetFlags')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuCtxGetDevice = dlsym(__pyx_v_handle, ((char const *)"cuCtxGetDevice"));

  /* "cuda/_cuda/ccuda.pyx":1958
 *     __cuCtxGetDevice = dlfcn.dlsym(handle, 'cuCtxGetDevice')
 *     global __cuCtxGetFlags
 *     __cuCtxGetFlags = dlfcn.dlsym(handle, 'cuCtxGetFlags')             # <<<<<<<<<<<<<<
 *     global __cuCtxSetFlags
 *     __cuCtxSetFlags = dlfcn.dlsym(handle, 'cuCtxSetFlags')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuCtxGetFlags = dlsym(__pyx_v_handle, ((char const *)"cuCtxGetFlags"));

  /* "cuda/_cuda/ccuda.pyx":1960
 *     __cuCtxGetFlags = dlfcn.dlsym(handle, 'cuCtxGetFlags')
 *     global __cuCtxSetFlags
 *     __cuCtxSetFlags = dlfcn.dlsym(handle, 'cuCtxSetFlags')             # <<<<<<<<<<<<<<
 *     global __cuCtxGetId
 *     __cuCtxGetId = dlfcn.dlsym(handle, 'cuCtxGetId')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuCtxSetFlags = dlsym(__pyx_v_handle, ((char const *)"cuCtxSetFlags"));

  /* "cuda/_cuda/ccuda.pyx":1962
 *     __cuCtxSetFlags = dlfcn.dlsym(handle, 'cuCtxSetFlags')
 *     global __cuCtxGetId
 *     __cuCtxGetId = dlfcn.dlsym(handle, 'cuCtxGetId')             # <<<<<<<<<<<<<<
 *     global __cuCtxSynchronize
 *     __cuCtxSynchronize = dlfcn.dlsym(handle, 'cuCtxSynchronize')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuCtxGetId = dlsym(__pyx_v_handle, ((char const *)"cuCtxGetId"));

  /* "cuda/_cuda/ccuda.pyx":1964
 *     __cuCtxGetId = dlfcn.dlsym(handle, 'cuCtxGetId')
 *     global __cuCtxSynchronize
 *     __cuCtxSynchronize = dlfcn.dlsym(handle, 'cuCtxSynchronize')             # <<<<<<<<<<<<<<
 *     global __cuCtxSetLimit
 *     __cuCtxSetLimit = dlfcn.dlsym(handle, 'cuCtxSetLimit')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuCtxSynchronize = dlsym(__pyx_v_handle, ((char const *)"cuCtxSynchronize"));

  /* "cuda/_cuda/ccuda.pyx":1966
 *     __cuCtxSynchronize = dlfcn.dlsym(handle, 'cuCtxSynchronize')
 *     global __cuCtxSetLimit
 *     __cuCtxSetLimit = dlfcn.dlsym(handle, 'cuCtxSetLimit')             # <<<<<<<<<<<<<<
 *     global __cuCtxGetLimit
 *     __cuCtxGetLimit = dlfcn.dlsym(handle, 'cuCtxGetLimit')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuCtxSetLimit = dlsym(__pyx_v_handle, ((char const *)"cuCtxSetLimit"));

  /* "cuda/_cuda/ccuda.pyx":1968
 *     __cuCtxSetLimit = dlfcn.dlsym(handle, 'cuCtxSetLimit')
 *     global __cuCtxGetLimit
 *     __cuCtxGetLimit = dlfcn.dlsym(handle, 'cuCtxGetLimit')             # <<<<<<<<<<<<<<
 *     global __cuCtxGetCacheConfig
 *     __cuCtxGetCacheConfig = dlfcn.dlsym(handle, 'cuCtxGetCacheConfig')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuCtxGetLimit = dlsym(__pyx_v_handle, ((char const *)"cuCtxGetLimit"));

  /* "cuda/_cuda/ccuda.pyx":1970
 *     __cuCtxGetLimit = dlfcn.dlsym(handle, 'cuCtxGetLimit')
 *     global __cuCtxGetCacheConfig
 *     __cuCtxGetCacheConfig = dlfcn.dlsym(handle, 'cuCtxGetCacheConfig')             # <<<<<<<<<<<<<<
 *     global __cuCtxSetCacheConfig
 *     __cuCtxSetCacheConfig = dlfcn.dlsym(handle, 'cuCtxSetCacheConfig')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuCtxGetCacheConfig = dlsym(__pyx_v_handle, ((char const *)"cuCtxGetCacheConfig"));

  /* "cuda/_cuda/ccuda.pyx":1972
 *     __cuCtxGetCacheConfig = dlfcn.dlsym(handle, 'cuCtxGetCacheConfig')
 *     global __cuCtxSetCacheConfig
 *     __cuCtxSetCacheConfig = dlfcn.dlsym(handle, 'cuCtxSetCacheConfig')             # <<<<<<<<<<<<<<
 *     global __cuCtxGetApiVersion
 *     __cuCtxGetApiVersion = dlfcn.dlsym(handle, 'cuCtxGetApiVersion')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuCtxSetCacheConfig = dlsym(__pyx_v_handle, ((char const *)"cuCtxSetCacheConfig"));

  /* "cuda/_cuda/ccuda.pyx":1974
 *     __cuCtxSetCacheConfig = dlfcn.dlsym(handle, 'cuCtxSetCacheConfig')
 *     global __cuCtxGetApiVersion
 *     __cuCtxGetApiVersion = dlfcn.dlsym(handle, 'cuCtxGetApiVersion')             # <<<<<<<<<<<<<<
 *     global __cuCtxGetStreamPriorityRange
 *     __cuCtxGetStreamPriorityRange = dlfcn.dlsym(handle, 'cuCtxGetStreamPriorityRange')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuCtxGetApiVersion = dlsym(__pyx_v_handle, ((char const *)"cuCtxGetApiVersion"));

  /* "cuda/_cuda/ccuda.pyx":1976
 *     __cuCtxGetApiVersion = dlfcn.dlsym(handle, 'cuCtxGetApiVersion')
 *     global __cuCtxGetStreamPriorityRange
 *     __cuCtxGetStreamPriorityRange = dlfcn.dlsym(handle, 'cuCtxGetStreamPriorityRange')             # <<<<<<<<<<<<<<
 *     global __cuCtxResetPersistingL2Cache
 *     __cuCtxResetPersistingL2Cache = dlfcn.dlsym(handle, 'cuCtxResetPersistingL2Cache')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuCtxGetStreamPriorityRange = dlsym(__pyx_v_handle, ((char const *)"cuCtxGetStreamPriorityRange"));

  /* "cuda/_cuda/ccuda.pyx":1978
 *     __cuCtxGetStreamPriorityRange = dlfcn.dlsym(handle, 'cuCtxGetStreamPriorityRange')
 *     global __cuCtxResetPersistingL2Cache
 *     __cuCtxResetPersistingL2Cache = dlfcn.dlsym(handle, 'cuCtxResetPersistingL2Cache')             # <<<<<<<<<<<<<<
 *     global __cuCtxGetExecAffinity
 *     __cuCtxGetExecAffinity = dlfcn.dlsym(handle, 'cuCtxGetExecAffinity')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuCtxResetPersistingL2Cache = dlsym(__pyx_v_handle, ((char const *)"cuCtxResetPersistingL2Cache"));

  /* "cuda/_cuda/ccuda.pyx":1980
 *     __cuCtxResetPersistingL2Cache = dlfcn.dlsym(handle, 'cuCtxResetPersistingL2Cache')
 *     global __cuCtxGetExecAffinity
 *     __cuCtxGetExecAffinity = dlfcn.dlsym(handle, 'cuCtxGetExecAffinity')             # <<<<<<<<<<<<<<
 *     global __cuCtxAttach
 *     __cuCtxAttach = dlfcn.dlsym(handle, 'cuCtxAttach')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuCtxGetExecAffinity = dlsym(__pyx_v_handle, ((char const *)"cuCtxGetExecAffinity"));

  /* "cuda/_cuda/ccuda.pyx":1982
 *     __cuCtxGetExecAffinity = dlfcn.dlsym(handle, 'cuCtxGetExecAffinity')
 *     global __cuCtxAttach
 *     __cuCtxAttach = dlfcn.dlsym(handle, 'cuCtxAttach')             # <<<<<<<<<<<<<<
 *     global __cuCtxDetach
 *     __cuCtxDetach = dlfcn.dlsym(handle, 'cuCtxDetach')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuCtxAttach = dlsym(__pyx_v_handle, ((char const *)"cuCtxAttach"));

  /* "cuda/_cuda/ccuda.pyx":1984
 *     __cuCtxAttach = dlfcn.dlsym(handle, 'cuCtxAttach')
 *     global __cuCtxDetach
 *     __cuCtxDetach = dlfcn.dlsym(handle, 'cuCtxDetach')             # <<<<<<<<<<<<<<
 *     global __cuCtxGetSharedMemConfig
 *     __cuCtxGetSharedMemConfig = dlfcn.dlsym(handle, 'cuCtxGetSharedMemConfig')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuCtxDetach = dlsym(__pyx_v_handle, ((char const *)"cuCtxDetach"));

  /* "cuda/_cuda/ccuda.pyx":1986
 *     __cuCtxDetach = dlfcn.dlsym(handle, 'cuCtxDetach')
 *     global __cuCtxGetSharedMemConfig
 *     __cuCtxGetSharedMemConfig = dlfcn.dlsym(handle, 'cuCtxGetSharedMemConfig')             # <<<<<<<<<<<<<<
 *     global __cuCtxSetSharedMemConfig
 *     __cuCtxSetSharedMemConfig = dlfcn.dlsym(handle, 'cuCtxSetSharedMemConfig')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuCtxGetSharedMemConfig = dlsym(__pyx_v_handle, ((char const *)"cuCtxGetSharedMemConfig"));

  /* "cuda/_cuda/ccuda.pyx":1988
 *     __cuCtxGetSharedMemConfig = dlfcn.dlsym(handle, 'cuCtxGetSharedMemConfig')
 *     global __cuCtxSetSharedMemConfig
 *     __cuCtxSetSharedMemConfig = dlfcn.dlsym(handle, 'cuCtxSetSharedMemConfig')             # <<<<<<<<<<<<<<
 *     global __cuModuleLoad
 *     __cuModuleLoad = dlfcn.dlsym(handle, 'cuModuleLoad')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuCtxSetSharedMemConfig = dlsym(__pyx_v_handle, ((char const *)"cuCtxSetSharedMemConfig"));

  /* "cuda/_cuda/ccuda.pyx":1990
 *     __cuCtxSetSharedMemConfig = dlfcn.dlsym(handle, 'cuCtxSetSharedMemConfig')
 *     global __cuModuleLoad
 *     __cuModuleLoad = dlfcn.dlsym(handle, 'cuModuleLoad')             # <<<<<<<<<<<<<<
 *     global __cuModuleLoadData
 *     __cuModuleLoadData = dlfcn.dlsym(handle, 'cuModuleLoadData')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuModuleLoad = dlsym(__pyx_v_handle, ((char const *)"cuModuleLoad"));

  /* "cuda/_cuda/ccuda.pyx":1992
 *     __cuModuleLoad = dlfcn.dlsym(handle, 'cuModuleLoad')
 *     global __cuModuleLoadData
 *     __cuModuleLoadData = dlfcn.dlsym(handle, 'cuModuleLoadData')             # <<<<<<<<<<<<<<
 *     global __cuModuleLoadDataEx
 *     __cuModuleLoadDataEx = dlfcn.dlsym(handle, 'cuModuleLoadDataEx')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuModuleLoadData = dlsym(__pyx_v_handle, ((char const *)"cuModuleLoadData"));

  /* "cuda/_cuda/ccuda.pyx":1994
 *     __cuModuleLoadData = dlfcn.dlsym(handle, 'cuModuleLoadData')
 *     global __cuModuleLoadDataEx
 *     __cuModuleLoadDataEx = dlfcn.dlsym(handle, 'cuModuleLoadDataEx')             # <<<<<<<<<<<<<<
 *     global __cuModuleLoadFatBinary
 *     __cuModuleLoadFatBinary = dlfcn.dlsym(handle, 'cuModuleLoadFatBinary')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuModuleLoadDataEx = dlsym(__pyx_v_handle, ((char const *)"cuModuleLoadDataEx"));

  /* "cuda/_cuda/ccuda.pyx":1996
 *     __cuModuleLoadDataEx = dlfcn.dlsym(handle, 'cuModuleLoadDataEx')
 *     global __cuModuleLoadFatBinary
 *     __cuModuleLoadFatBinary = dlfcn.dlsym(handle, 'cuModuleLoadFatBinary')             # <<<<<<<<<<<<<<
 *     global __cuModuleUnload
 *     __cuModuleUnload = dlfcn.dlsym(handle, 'cuModuleUnload')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuModuleLoadFatBinary = dlsym(__pyx_v_handle, ((char const *)"cuModuleLoadFatBinary"));

  /* "cuda/_cuda/ccuda.pyx":1998
 *     __cuModuleLoadFatBinary = dlfcn.dlsym(handle, 'cuModuleLoadFatBinary')
 *     global __cuModuleUnload
 *     __cuModuleUnload = dlfcn.dlsym(handle, 'cuModuleUnload')             # <<<<<<<<<<<<<<
 *     global __cuModuleGetLoadingMode
 *     __cuModuleGetLoadingMode = dlfcn.dlsym(handle, 'cuModuleGetLoadingMode')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuModuleUnload = dlsym(__pyx_v_handle, ((char const *)"cuModuleUnload"));

  /* "cuda/_cuda/ccuda.pyx":2000
 *     __cuModuleUnload = dlfcn.dlsym(handle, 'cuModuleUnload')
 *     global __cuModuleGetLoadingMode
 *     __cuModuleGetLoadingMode = dlfcn.dlsym(handle, 'cuModuleGetLoadingMode')             # <<<<<<<<<<<<<<
 *     global __cuModuleGetFunction
 *     __cuModuleGetFunction = dlfcn.dlsym(handle, 'cuModuleGetFunction')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuModuleGetLoadingMode = dlsym(__pyx_v_handle, ((char const *)"cuModuleGetLoadingMode"));

  /* "cuda/_cuda/ccuda.pyx":2002
 *     __cuModuleGetLoadingMode = dlfcn.dlsym(handle, 'cuModuleGetLoadingMode')
 *     global __cuModuleGetFunction
 *     __cuModuleGetFunction = dlfcn.dlsym(handle, 'cuModuleGetFunction')             # <<<<<<<<<<<<<<
 *     global __cuModuleGetFunctionCount
 *     __cuModuleGetFunctionCount = dlfcn.dlsym(handle, 'cuModuleGetFunctionCount')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuModuleGetFunction = dlsym(__pyx_v_handle, ((char const *)"cuModuleGetFunction"));

  /* "cuda/_cuda/ccuda.pyx":2004
 *     __cuModuleGetFunction = dlfcn.dlsym(handle, 'cuModuleGetFunction')
 *     global __cuModuleGetFunctionCount
 *     __cuModuleGetFunctionCount = dlfcn.dlsym(handle, 'cuModuleGetFunctionCount')             # <<<<<<<<<<<<<<
 *     global __cuModuleEnumerateFunctions
 *     __cuModuleEnumerateFunctions = dlfcn.dlsym(handle, 'cuModuleEnumerateFunctions')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuModuleGetFunctionCount = dlsym(__pyx_v_handle, ((char const *)"cuModuleGetFunctionCount"));

  /* "cuda/_cuda/ccuda.pyx":2006
 *     __cuModuleGetFunctionCount = dlfcn.dlsym(handle, 'cuModuleGetFunctionCount')
 *     global __cuModuleEnumerateFunctions
 *     __cuModuleEnumerateFunctions = dlfcn.dlsym(handle, 'cuModuleEnumerateFunctions')             # <<<<<<<<<<<<<<
 *     global __cuModuleGetGlobal_v2
 *     __cuModuleGetGlobal_v2 = dlfcn.dlsym(handle, 'cuModuleGetGlobal_v2')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuModuleEnumerateFunctions = dlsym(__pyx_v_handle, ((char const *)"cuModuleEnumerateFunctions"));

  /* "cuda/_cuda/ccuda.pyx":2008
 *     __cuModuleEnumerateFunctions = dlfcn.dlsym(handle, 'cuModuleEnumerateFunctions')
 *     global __cuModuleGetGlobal_v2
 *     __cuModuleGetGlobal_v2 = dlfcn.dlsym(handle, 'cuModuleGetGlobal_v2')             # <<<<<<<<<<<<<<
 *     global __cuLinkCreate_v2
 *     __cuLinkCreate_v2 = dlfcn.dlsym(handle, 'cuLinkCreate_v2')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuModuleGetGlobal_v2 = dlsym(__pyx_v_handle, ((char const *)"cuModuleGetGlobal_v2"));

  /* "cuda/_cuda/ccuda.pyx":2010
 *     __cuModuleGetGlobal_v2 = dlfcn.dlsym(handle, 'cuModuleGetGlobal_v2')
 *     global __cuLinkCreate_v2
 *     __cuLinkCreate_v2 = dlfcn.dlsym(handle, 'cuLinkCreate_v2')             # <<<<<<<<<<<<<<
 *     global __cuLinkAddData_v2
 *     __cuLinkAddData_v2 = dlfcn.dlsym(handle, 'cuLinkAddData_v2')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuLinkCreate_v2 = dlsym(__pyx_v_handle, ((char const *)"cuLinkCreate_v2"));

  /* "cuda/_cuda/ccuda.pyx":2012
 *     __cuLinkCreate_v2 = dlfcn.dlsym(handle, 'cuLinkCreate_v2')
 *     global __cuLinkAddData_v2
 *     __cuLinkAddData_v2 = dlfcn.dlsym(handle, 'cuLinkAddData_v2')             # <<<<<<<<<<<<<<
 *     global __cuLinkAddFile_v2
 *     __cuLinkAddFile_v2 = dlfcn.dlsym(handle, 'cuLinkAddFile_v2')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuLinkAddData_v2 = dlsym(__pyx_v_handle, ((char const *)"cuLinkAddData_v2"));

  /* "cuda/_cuda/ccuda.pyx":2014
 *     __cuLinkAddData_v2 = dlfcn.dlsym(handle, 'cuLinkAddData_v2')
 *     global __cuLinkAddFile_v2
 *     __cuLinkAddFile_v2 = dlfcn.dlsym(handle, 'cuLinkAddFile_v2')             # <<<<<<<<<<<<<<
 *     global __cuLinkComplete
 *     __cuLinkComplete = dlfcn.dlsym(handle, 'cuLinkComplete')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuLinkAddFile_v2 = dlsym(__pyx_v_handle, ((char const *)"cuLinkAddFile_v2"));

  /* "cuda/_cuda/ccuda.pyx":2016
 *     __cuLinkAddFile_v2 = dlfcn.dlsym(handle, 'cuLinkAddFile_v2')
 *     global __cuLinkComplete
 *     __cuLinkComplete = dlfcn.dlsym(handle, 'cuLinkComplete')             # <<<<<<<<<<<<<<
 *     global __cuLinkDestroy
 *     __cuLinkDestroy = dlfcn.dlsym(handle, 'cuLinkDestroy')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuLinkComplete = dlsym(__pyx_v_handle, ((char const *)"cuLinkComplete"));

  /* "cuda/_cuda/ccuda.pyx":2018
 *     __cuLinkComplete = dlfcn.dlsym(handle, 'cuLinkComplete')
 *     global __cuLinkDestroy
 *     __cuLinkDestroy = dlfcn.dlsym(handle, 'cuLinkDestroy')             # <<<<<<<<<<<<<<
 *     global __cuModuleGetTexRef
 *     __cuModuleGetTexRef = dlfcn.dlsym(handle, 'cuModuleGetTexRef')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuLinkDestroy = dlsym(__pyx_v_handle, ((char const *)"cuLinkDestroy"));

  /* "cuda/_cuda/ccuda.pyx":2020
 *     __cuLinkDestroy = dlfcn.dlsym(handle, 'cuLinkDestroy')
 *     global __cuModuleGetTexRef
 *     __cuModuleGetTexRef = dlfcn.dlsym(handle, 'cuModuleGetTexRef')             # <<<<<<<<<<<<<<
 *     global __cuModuleGetSurfRef
 *     __cuModuleGetSurfRef = dlfcn.dlsym(handle, 'cuModuleGetSurfRef')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuModuleGetTexRef = dlsym(__pyx_v_handle, ((char const *)"cuModuleGetTexRef"));

  /* "cuda/_cuda/ccuda.pyx":2022
 *     __cuModuleGetTexRef = dlfcn.dlsym(handle, 'cuModuleGetTexRef')
 *     global __cuModuleGetSurfRef
 *     __cuModuleGetSurfRef = dlfcn.dlsym(handle, 'cuModuleGetSurfRef')             # <<<<<<<<<<<<<<
 *     global __cuLibraryLoadData
 *     __cuLibraryLoadData = dlfcn.dlsym(handle, 'cuLibraryLoadData')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuModuleGetSurfRef = dlsym(__pyx_v_handle, ((char const *)"cuModuleGetSurfRef"));

  /* "cuda/_cuda/ccuda.pyx":2024
 *     __cuModuleGetSurfRef = dlfcn.dlsym(handle, 'cuModuleGetSurfRef')
 *     global __cuLibraryLoadData
 *     __cuLibraryLoadData = dlfcn.dlsym(handle, 'cuLibraryLoadData')             # <<<<<<<<<<<<<<
 *     global __cuLibraryLoadFromFile
 *     __cuLibraryLoadFromFile = dlfcn.dlsym(handle, 'cuLibraryLoadFromFile')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuLibraryLoadData = dlsym(__pyx_v_handle, ((char const *)"cuLibraryLoadData"));

  /* "cuda/_cuda/ccuda.pyx":2026
 *     __cuLibraryLoadData = dlfcn.dlsym(handle, 'cuLibraryLoadData')
 *     global __cuLibraryLoadFromFile
 *     __cuLibraryLoadFromFile = dlfcn.dlsym(handle, 'cuLibraryLoadFromFile')             # <<<<<<<<<<<<<<
 *     global __cuLibraryUnload
 *     __cuLibraryUnload = dlfcn.dlsym(handle, 'cuLibraryUnload')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuLibraryLoadFromFile = dlsym(__pyx_v_handle, ((char const *)"cuLibraryLoadFromFile"));

  /* "cuda/_cuda/ccuda.pyx":2028
 *     __cuLibraryLoadFromFile = dlfcn.dlsym(handle, 'cuLibraryLoadFromFile')
 *     global __cuLibraryUnload
 *     __cuLibraryUnload = dlfcn.dlsym(handle, 'cuLibraryUnload')             # <<<<<<<<<<<<<<
 *     global __cuLibraryGetKernel
 *     __cuLibraryGetKernel = dlfcn.dlsym(handle, 'cuLibraryGetKernel')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuLibraryUnload = dlsym(__pyx_v_handle, ((char const *)"cuLibraryUnload"));

  /* "cuda/_cuda/ccuda.pyx":2030
 *     __cuLibraryUnload = dlfcn.dlsym(handle, 'cuLibraryUnload')
 *     global __cuLibraryGetKernel
 *     __cuLibraryGetKernel = dlfcn.dlsym(handle, 'cuLibraryGetKernel')             # <<<<<<<<<<<<<<
 *     global __cuLibraryGetKernelCount
 *     __cuLibraryGetKernelCount = dlfcn.dlsym(handle, 'cuLibraryGetKernelCount')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuLibraryGetKernel = dlsym(__pyx_v_handle, ((char const *)"cuLibraryGetKernel"));

  /* "cuda/_cuda/ccuda.pyx":2032
 *     __cuLibraryGetKernel = dlfcn.dlsym(handle, 'cuLibraryGetKernel')
 *     global __cuLibraryGetKernelCount
 *     __cuLibraryGetKernelCount = dlfcn.dlsym(handle, 'cuLibraryGetKernelCount')             # <<<<<<<<<<<<<<
 *     global __cuLibraryEnumerateKernels
 *     __cuLibraryEnumerateKernels = dlfcn.dlsym(handle, 'cuLibraryEnumerateKernels')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuLibraryGetKernelCount = dlsym(__pyx_v_handle, ((char const *)"cuLibraryGetKernelCount"));

  /* "cuda/_cuda/ccuda.pyx":2034
 *     __cuLibraryGetKernelCount = dlfcn.dlsym(handle, 'cuLibraryGetKernelCount')
 *     global __cuLibraryEnumerateKernels
 *     __cuLibraryEnumerateKernels = dlfcn.dlsym(handle, 'cuLibraryEnumerateKernels')             # <<<<<<<<<<<<<<
 *     global __cuLibraryGetModule
 *     __cuLibraryGetModule = dlfcn.dlsym(handle, 'cuLibraryGetModule')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuLibraryEnumerateKernels = dlsym(__pyx_v_handle, ((char const *)"cuLibraryEnumerateKernels"));

  /* "cuda/_cuda/ccuda.pyx":2036
 *     __cuLibraryEnumerateKernels = dlfcn.dlsym(handle, 'cuLibraryEnumerateKernels')
 *     global __cuLibraryGetModule
 *     __cuLibraryGetModule = dlfcn.dlsym(handle, 'cuLibraryGetModule')             # <<<<<<<<<<<<<<
 *     global __cuKernelGetFunction
 *     __cuKernelGetFunction = dlfcn.dlsym(handle, 'cuKernelGetFunction')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuLibraryGetModule = dlsym(__pyx_v_handle, ((char const *)"cuLibraryGetModule"));

  /* "cuda/_cuda/ccuda.pyx":2038
 *     __cuLibraryGetModule = dlfcn.dlsym(handle, 'cuLibraryGetModule')
 *     global __cuKernelGetFunction
 *     __cuKernelGetFunction = dlfcn.dlsym(handle, 'cuKernelGetFunction')             # <<<<<<<<<<<<<<
 *     global __cuLibraryGetGlobal
 *     __cuLibraryGetGlobal = dlfcn.dlsym(handle, 'cuLibraryGetGlobal')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuKernelGetFunction = dlsym(__pyx_v_handle, ((char const *)"cuKernelGetFunction"));

  /* "cuda/_cuda/ccuda.pyx":2040
 *     __cuKernelGetFunction = dlfcn.dlsym(handle, 'cuKernelGetFunction')
 *     global __cuLibraryGetGlobal
 *     __cuLibraryGetGlobal = dlfcn.dlsym(handle, 'cuLibraryGetGlobal')             # <<<<<<<<<<<<<<
 *     global __cuLibraryGetManaged
 *     __cuLibraryGetManaged = dlfcn.dlsym(handle, 'cuLibraryGetManaged')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuLibraryGetGlobal = dlsym(__pyx_v_handle, ((char const *)"cuLibraryGetGlobal"));

  /* "cuda/_cuda/ccuda.pyx":2042
 *     __cuLibraryGetGlobal = dlfcn.dlsym(handle, 'cuLibraryGetGlobal')
 *     global __cuLibraryGetManaged
 *     __cuLibraryGetManaged = dlfcn.dlsym(handle, 'cuLibraryGetManaged')             # <<<<<<<<<<<<<<
 *     global __cuLibraryGetUnifiedFunction
 *     __cuLibraryGetUnifiedFunction = dlfcn.dlsym(handle, 'cuLibraryGetUnifiedFunction')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuLibraryGetManaged = dlsym(__pyx_v_handle, ((char const *)"cuLibraryGetManaged"));

  /* "cuda/_cuda/ccuda.pyx":2044
 *     __cuLibraryGetManaged = dlfcn.dlsym(handle, 'cuLibraryGetManaged')
 *     global __cuLibraryGetUnifiedFunction
 *     __cuLibraryGetUnifiedFunction = dlfcn.dlsym(handle, 'cuLibraryGetUnifiedFunction')             # <<<<<<<<<<<<<<
 *     global __cuKernelGetAttribute
 *     __cuKernelGetAttribute = dlfcn.dlsym(handle, 'cuKernelGetAttribute')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuLibraryGetUnifiedFunction = dlsym(__pyx_v_handle, ((char const *)"cuLibraryGetUnifiedFunction"));

  /* "cuda/_cuda/ccuda.pyx":2046
 *     __cuLibraryGetUnifiedFunction = dlfcn.dlsym(handle, 'cuLibraryGetUnifiedFunction')
 *     global __cuKernelGetAttribute
 *     __cuKernelGetAttribute = dlfcn.dlsym(handle, 'cuKernelGetAttribute')             # <<<<<<<<<<<<<<
 *     global __cuKernelSetAttribute
 *     __cuKernelSetAttribute = dlfcn.dlsym(handle, 'cuKernelSetAttribute')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuKernelGetAttribute = dlsym(__pyx_v_handle, ((char const *)"cuKernelGetAttribute"));

  /* "cuda/_cuda/ccuda.pyx":2048
 *     __cuKernelGetAttribute = dlfcn.dlsym(handle, 'cuKernelGetAttribute')
 *     global __cuKernelSetAttribute
 *     __cuKernelSetAttribute = dlfcn.dlsym(handle, 'cuKernelSetAttribute')             # <<<<<<<<<<<<<<
 *     global __cuKernelSetCacheConfig
 *     __cuKernelSetCacheConfig = dlfcn.dlsym(handle, 'cuKernelSetCacheConfig')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuKernelSetAttribute = dlsym(__pyx_v_handle, ((char const *)"cuKernelSetAttribute"));

  /* "cuda/_cuda/ccuda.pyx":2050
 *     __cuKernelSetAttribute = dlfcn.dlsym(handle, 'cuKernelSetAttribute')
 *     global __cuKernelSetCacheConfig
 *     __cuKernelSetCacheConfig = dlfcn.dlsym(handle, 'cuKernelSetCacheConfig')             # <<<<<<<<<<<<<<
 *     global __cuKernelGetName
 *     __cuKernelGetName = dlfcn.dlsym(handle, 'cuKernelGetName')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuKernelSetCacheConfig = dlsym(__pyx_v_handle, ((char const *)"cuKernelSetCacheConfig"));

  /* "cuda/_cuda/ccuda.pyx":2052
 *     __cuKernelSetCacheConfig = dlfcn.dlsym(handle, 'cuKernelSetCacheConfig')
 *     global __cuKernelGetName
 *     __cuKernelGetName = dlfcn.dlsym(handle, 'cuKernelGetName')             # <<<<<<<<<<<<<<
 *     global __cuKernelGetParamInfo
 *     __cuKernelGetParamInfo = dlfcn.dlsym(handle, 'cuKernelGetParamInfo')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuKernelGetName = dlsym(__pyx_v_handle, ((char const *)"cuKernelGetName"));

  /* "cuda/_cuda/ccuda.pyx":2054
 *     __cuKernelGetName = dlfcn.dlsym(handle, 'cuKernelGetName')
 *     global __cuKernelGetParamInfo
 *     __cuKernelGetParamInfo = dlfcn.dlsym(handle, 'cuKernelGetParamInfo')             # <<<<<<<<<<<<<<
 *     global __cuMemGetInfo_v2
 *     __cuMemGetInfo_v2 = dlfcn.dlsym(handle, 'cuMemGetInfo_v2')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuKernelGetParamInfo = dlsym(__pyx_v_handle, ((char const *)"cuKernelGetParamInfo"));

  /* "cuda/_cuda/ccuda.pyx":2056
 *     __cuKernelGetParamInfo = dlfcn.dlsym(handle, 'cuKernelGetParamInfo')
 *     global __cuMemGetInfo_v2
 *     __cuMemGetInfo_v2 = dlfcn.dlsym(handle, 'cuMemGetInfo_v2')             # <<<<<<<<<<<<<<
 *     global __cuMemAlloc_v2
 *     __cuMemAlloc_v2 = dlfcn.dlsym(handle, 'cuMemAlloc_v2')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuMemGetInfo_v2 = dlsym(__pyx_v_handle, ((char const *)"cuMemGetInfo_v2"));

  /* "cuda/_cuda/ccuda.pyx":2058
 *     __cuMemGetInfo_v2 = dlfcn.dlsym(handle, 'cuMemGetInfo_v2')
 *     global __cuMemAlloc_v2
 *     __cuMemAlloc_v2 = dlfcn.dlsym(handle, 'cuMemAlloc_v2')             # <<<<<<<<<<<<<<
 *     global __cuMemAllocPitch_v2
 *     __cuMemAllocPitch_v2 = dlfcn.dlsym(handle, 'cuMemAllocPitch_v2')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuMemAlloc_v2 = dlsym(__pyx_v_handle, ((char const *)"cuMemAlloc_v2"));

  /* "cuda/_cuda/ccuda.pyx":2060
 *     __cuMemAlloc_v2 = dlfcn.dlsym(handle, 'cuMemAlloc_v2')
 *     global __cuMemAllocPitch_v2
 *     __cuMemAllocPitch_v2 = dlfcn.dlsym(handle, 'cuMemAllocPitch_v2')             # <<<<<<<<<<<<<<
 *     global __cuMemFree_v2
 *     __cuMemFree_v2 = dlfcn.dlsym(handle, 'cuMemFree_v2')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuMemAllocPitch_v2 = dlsym(__pyx_v_handle, ((char const *)"cuMemAllocPitch_v2"));

  /* "cuda/_cuda/ccuda.pyx":2062
 *     __cuMemAllocPitch_v2 = dlfcn.dlsym(handle, 'cuMemAllocPitch_v2')
 *     global __cuMemFree_v2
 *     __cuMemFree_v2 = dlfcn.dlsym(handle, 'cuMemFree_v2')             # <<<<<<<<<<<<<<
 *     global __cuMemGetAddressRange_v2
 *     __cuMemGetAddressRange_v2 = dlfcn.dlsym(handle, 'cuMemGetAddressRange_v2')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuMemFree_v2 = dlsym(__pyx_v_handle, ((char const *)"cuMemFree_v2"));

  /* "cuda/_cuda/ccuda.pyx":2064
 *     __cuMemFree_v2 = dlfcn.dlsym(handle, 'cuMemFree_v2')
 *     global __cuMemGetAddressRange_v2
 *     __cuMemGetAddressRange_v2 = dlfcn.dlsym(handle, 'cuMemGetAddressRange_v2')             # <<<<<<<<<<<<<<
 *     global __cuMemAllocHost_v2
 *     __cuMemAllocHost_v2 = dlfcn.dlsym(handle, 'cuMemAllocHost_v2')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuMemGetAddressRange_v2 = dlsym(__pyx_v_handle, ((char const *)"cuMemGetAddressRange_v2"));

  /* "cuda/_cuda/ccuda.pyx":2066
 *     __cuMemGetAddressRange_v2 = dlfcn.dlsym(handle, 'cuMemGetAddressRange_v2')
 *     global __cuMemAllocHost_v2
 *     __cuMemAllocHost_v2 = dlfcn.dlsym(handle, 'cuMemAllocHost_v2')             # <<<<<<<<<<<<<<
 *     global __cuMemFreeHost
 *     __cuMemFreeHost = dlfcn.dlsym(handle, 'cuMemFreeHost')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuMemAllocHost_v2 = dlsym(__pyx_v_handle, ((char const *)"cuMemAllocHost_v2"));

  /* "cuda/_cuda/ccuda.pyx":2068
 *     __cuMemAllocHost_v2 = dlfcn.dlsym(handle, 'cuMemAllocHost_v2')
 *     global __cuMemFreeHost
 *     __cuMemFreeHost = dlfcn.dlsym(handle, 'cuMemFreeHost')             # <<<<<<<<<<<<<<
 *     global __cuMemHostAlloc
 *     __cuMemHostAlloc = dlfcn.dlsym(handle, 'cuMemHostAlloc')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuMemFreeHost = dlsym(__pyx_v_handle, ((char const *)"cuMemFreeHost"));

  /* "cuda/_cuda/ccuda.pyx":2070
 *     __cuMemFreeHost = dlfcn.dlsym(handle, 'cuMemFreeHost')
 *     global __cuMemHostAlloc
 *     __cuMemHostAlloc = dlfcn.dlsym(handle, 'cuMemHostAlloc')             # <<<<<<<<<<<<<<
 *     global __cuMemHostGetDevicePointer_v2
 *     __cuMemHostGetDevicePointer_v2 = dlfcn.dlsym(handle, 'cuMemHostGetDevicePointer_v2')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuMemHostAlloc = dlsym(__pyx_v_handle, ((char const *)"cuMemHostAlloc"));

  /* "cuda/_cuda/ccuda.pyx":2072
 *     __cuMemHostAlloc = dlfcn.dlsym(handle, 'cuMemHostAlloc')
 *     global __cuMemHostGetDevicePointer_v2
 *     __cuMemHostGetDevicePointer_v2 = dlfcn.dlsym(handle, 'cuMemHostGetDevicePointer_v2')             # <<<<<<<<<<<<<<
 *     global __cuMemHostGetFlags
 *     __cuMemHostGetFlags = dlfcn.dlsym(handle, 'cuMemHostGetFlags')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuMemHostGetDevicePointer_v2 = dlsym(__pyx_v_handle, ((char const *)"cuMemHostGetDevicePointer_v2"));

  /* "cuda/_cuda/ccuda.pyx":2074
 *     __cuMemHostGetDevicePointer_v2 = dlfcn.dlsym(handle, 'cuMemHostGetDevicePointer_v2')
 *     global __cuMemHostGetFlags
 *     __cuMemHostGetFlags = dlfcn.dlsym(handle, 'cuMemHostGetFlags')             # <<<<<<<<<<<<<<
 *     global __cuMemAllocManaged
 *     __cuMemAllocManaged = dlfcn.dlsym(handle, 'cuMemAllocManaged')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuMemHostGetFlags = dlsym(__pyx_v_handle, ((char const *)"cuMemHostGetFlags"));

  /* "cuda/_cuda/ccuda.pyx":2076
 *     __cuMemHostGetFlags = dlfcn.dlsym(handle, 'cuMemHostGetFlags')
 *     global __cuMemAllocManaged
 *     __cuMemAllocManaged = dlfcn.dlsym(handle, 'cuMemAllocManaged')             # <<<<<<<<<<<<<<
 *     global __cuDeviceRegisterAsyncNotification
 *     __cuDeviceRegisterAsyncNotification = dlfcn.dlsym(handle, 'cuDeviceRegisterAsyncNotification')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuMemAllocManaged = dlsym(__pyx_v_handle, ((char const *)"cuMemAllocManaged"));

  /* "cuda/_cuda/ccuda.pyx":2078
 *     __cuMemAllocManaged = dlfcn.dlsym(handle, 'cuMemAllocManaged')
 *     global __cuDeviceRegisterAsyncNotification
 *     __cuDeviceRegisterAsyncNotification = dlfcn.dlsym(handle, 'cuDeviceRegisterAsyncNotification')             # <<<<<<<<<<<<<<
 *     global __cuDeviceUnregisterAsyncNotification
 *     __cuDeviceUnregisterAsyncNotification = dlfcn.dlsym(handle, 'cuDeviceUnregisterAsyncNotification')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuDeviceRegisterAsyncNotification = dlsym(__pyx_v_handle, ((char const *)"cuDeviceRegisterAsyncNotification"));

  /* "cuda/_cuda/ccuda.pyx":2080
 *     __cuDeviceRegisterAsyncNotification = dlfcn.dlsym(handle, 'cuDeviceRegisterAsyncNotification')
 *     global __cuDeviceUnregisterAsyncNotification
 *     __cuDeviceUnregisterAsyncNotification = dlfcn.dlsym(handle, 'cuDeviceUnregisterAsyncNotification')             # <<<<<<<<<<<<<<
 *     global __cuDeviceGetByPCIBusId
 *     __cuDeviceGetByPCIBusId = dlfcn.dlsym(handle, 'cuDeviceGetByPCIBusId')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuDeviceUnregisterAsyncNotification = dlsym(__pyx_v_handle, ((char const *)"cuDeviceUnregisterAsyncNotification"));

  /* "cuda/_cuda/ccuda.pyx":2082
 *     __cuDeviceUnregisterAsyncNotification = dlfcn.dlsym(handle, 'cuDeviceUnregisterAsyncNotification')
 *     global __cuDeviceGetByPCIBusId
 *     __cuDeviceGetByPCIBusId = dlfcn.dlsym(handle, 'cuDeviceGetByPCIBusId')             # <<<<<<<<<<<<<<
 *     global __cuDeviceGetPCIBusId
 *     __cuDeviceGetPCIBusId = dlfcn.dlsym(handle, 'cuDeviceGetPCIBusId')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuDeviceGetByPCIBusId = dlsym(__pyx_v_handle, ((char const *)"cuDeviceGetByPCIBusId"));

  /* "cuda/_cuda/ccuda.pyx":2084
 *     __cuDeviceGetByPCIBusId = dlfcn.dlsym(handle, 'cuDeviceGetByPCIBusId')
 *     global __cuDeviceGetPCIBusId
 *     __cuDeviceGetPCIBusId = dlfcn.dlsym(handle, 'cuDeviceGetPCIBusId')             # <<<<<<<<<<<<<<
 *     global __cuIpcGetEventHandle
 *     __cuIpcGetEventHandle = dlfcn.dlsym(handle, 'cuIpcGetEventHandle')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuDeviceGetPCIBusId = dlsym(__pyx_v_handle, ((char const *)"cuDeviceGetPCIBusId"));

  /* "cuda/_cuda/ccuda.pyx":2086
 *     __cuDeviceGetPCIBusId = dlfcn.dlsym(handle, 'cuDeviceGetPCIBusId')
 *     global __cuIpcGetEventHandle
 *     __cuIpcGetEventHandle = dlfcn.dlsym(handle, 'cuIpcGetEventHandle')             # <<<<<<<<<<<<<<
 *     global __cuIpcOpenEventHandle
 *     __cuIpcOpenEventHandle = dlfcn.dlsym(handle, 'cuIpcOpenEventHandle')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuIpcGetEventHandle = dlsym(__pyx_v_handle, ((char const *)"cuIpcGetEventHandle"));

  /* "cuda/_cuda/ccuda.pyx":2088
 *     __cuIpcGetEventHandle = dlfcn.dlsym(handle, 'cuIpcGetEventHandle')
 *     global __cuIpcOpenEventHandle
 *     __cuIpcOpenEventHandle = dlfcn.dlsym(handle, 'cuIpcOpenEventHandle')             # <<<<<<<<<<<<<<
 *     global __cuIpcGetMemHandle
 *     __cuIpcGetMemHandle = dlfcn.dlsym(handle, 'cuIpcGetMemHandle')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuIpcOpenEventHandle = dlsym(__pyx_v_handle, ((char const *)"cuIpcOpenEventHandle"));

  /* "cuda/_cuda/ccuda.pyx":2090
 *     __cuIpcOpenEventHandle = dlfcn.dlsym(handle, 'cuIpcOpenEventHandle')
 *     global __cuIpcGetMemHandle
 *     __cuIpcGetMemHandle = dlfcn.dlsym(handle, 'cuIpcGetMemHandle')             # <<<<<<<<<<<<<<
 *     global __cuIpcOpenMemHandle_v2
 *     __cuIpcOpenMemHandle_v2 = dlfcn.dlsym(handle, 'cuIpcOpenMemHandle_v2')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuIpcGetMemHandle = dlsym(__pyx_v_handle, ((char const *)"cuIpcGetMemHandle"));

  /* "cuda/_cuda/ccuda.pyx":2092
 *     __cuIpcGetMemHandle = dlfcn.dlsym(handle, 'cuIpcGetMemHandle')
 *     global __cuIpcOpenMemHandle_v2
 *     __cuIpcOpenMemHandle_v2 = dlfcn.dlsym(handle, 'cuIpcOpenMemHandle_v2')             # <<<<<<<<<<<<<<
 *     global __cuIpcCloseMemHandle
 *     __cuIpcCloseMemHandle = dlfcn.dlsym(handle, 'cuIpcCloseMemHandle')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuIpcOpenMemHandle_v2 = dlsym(__pyx_v_handle, ((char const *)"cuIpcOpenMemHandle_v2"));

  /* "cuda/_cuda/ccuda.pyx":2094
 *     __cuIpcOpenMemHandle_v2 = dlfcn.dlsym(handle, 'cuIpcOpenMemHandle_v2')
 *     global __cuIpcCloseMemHandle
 *     __cuIpcCloseMemHandle = dlfcn.dlsym(handle, 'cuIpcCloseMemHandle')             # <<<<<<<<<<<<<<
 *     global __cuMemHostRegister_v2
 *     __cuMemHostRegister_v2 = dlfcn.dlsym(handle, 'cuMemHostRegister_v2')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuIpcCloseMemHandle = dlsym(__pyx_v_handle, ((char const *)"cuIpcCloseMemHandle"));

  /* "cuda/_cuda/ccuda.pyx":2096
 *     __cuIpcCloseMemHandle = dlfcn.dlsym(handle, 'cuIpcCloseMemHandle')
 *     global __cuMemHostRegister_v2
 *     __cuMemHostRegister_v2 = dlfcn.dlsym(handle, 'cuMemHostRegister_v2')             # <<<<<<<<<<<<<<
 *     global __cuMemHostUnregister
 *     __cuMemHostUnregister = dlfcn.dlsym(handle, 'cuMemHostUnregister')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuMemHostRegister_v2 = dlsym(__pyx_v_handle, ((char const *)"cuMemHostRegister_v2"));

  /* "cuda/_cuda/ccuda.pyx":2098
 *     __cuMemHostRegister_v2 = dlfcn.dlsym(handle, 'cuMemHostRegister_v2')
 *     global __cuMemHostUnregister
 *     __cuMemHostUnregister = dlfcn.dlsym(handle, 'cuMemHostUnregister')             # <<<<<<<<<<<<<<
 *     global __cuArrayCreate_v2
 *     __cuArrayCreate_v2 = dlfcn.dlsym(handle, 'cuArrayCreate_v2')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuMemHostUnregister = dlsym(__pyx_v_handle, ((char const *)"cuMemHostUnregister"));

  /* "cuda/_cuda/ccuda.pyx":2100
 *     __cuMemHostUnregister = dlfcn.dlsym(handle, 'cuMemHostUnregister')
 *     global __cuArrayCreate_v2
 *     __cuArrayCreate_v2 = dlfcn.dlsym(handle, 'cuArrayCreate_v2')             # <<<<<<<<<<<<<<
 *     global __cuArrayGetDescriptor_v2
 *     __cuArrayGetDescriptor_v2 = dlfcn.dlsym(handle, 'cuArrayGetDescriptor_v2')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuArrayCreate_v2 = dlsym(__pyx_v_handle, ((char const *)"cuArrayCreate_v2"));

  /* "cuda/_cuda/ccuda.pyx":2102
 *     __cuArrayCreate_v2 = dlfcn.dlsym(handle, 'cuArrayCreate_v2')
 *     global __cuArrayGetDescriptor_v2
 *     __cuArrayGetDescriptor_v2 = dlfcn.dlsym(handle, 'cuArrayGetDescriptor_v2')             # <<<<<<<<<<<<<<
 *     global __cuArrayGetSparseProperties
 *     __cuArrayGetSparseProperties = dlfcn.dlsym(handle, 'cuArrayGetSparseProperties')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuArrayGetDescriptor_v2 = dlsym(__pyx_v_handle, ((char const *)"cuArrayGetDescriptor_v2"));

  /* "cuda/_cuda/ccuda.pyx":2104
 *     __cuArrayGetDescriptor_v2 = dlfcn.dlsym(handle, 'cuArrayGetDescriptor_v2')
 *     global __cuArrayGetSparseProperties
 *     __cuArrayGetSparseProperties = dlfcn.dlsym(handle, 'cuArrayGetSparseProperties')             # <<<<<<<<<<<<<<
 *     global __cuMipmappedArrayGetSparseProperties
 *     __cuMipmappedArrayGetSparseProperties = dlfcn.dlsym(handle, 'cuMipmappedArrayGetSparseProperties')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuArrayGetSparseProperties = dlsym(__pyx_v_handle, ((char const *)"cuArrayGetSparseProperties"));

  /* "cuda/_cuda/ccuda.pyx":2106
 *     __cuArrayGetSparseProperties = dlfcn.dlsym(handle, 'cuArrayGetSparseProperties')
 *     global __cuMipmappedArrayGetSparseProperties
 *     __cuMipmappedArrayGetSparseProperties = dlfcn.dlsym(handle, 'cuMipmappedArrayGetSparseProperties')             # <<<<<<<<<<<<<<
 *     global __cuArrayGetMemoryRequirements
 *     __cuArrayGetMemoryRequirements = dlfcn.dlsym(handle, 'cuArrayGetMemoryRequirements')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuMipmappedArrayGetSparseProperties = dlsym(__pyx_v_handle, ((char const *)"cuMipmappedArrayGetSparseProperties"));

  /* "cuda/_cuda/ccuda.pyx":2108
 *     __cuMipmappedArrayGetSparseProperties = dlfcn.dlsym(handle, 'cuMipmappedArrayGetSparseProperties')
 *     global __cuArrayGetMemoryRequirements
 *     __cuArrayGetMemoryRequirements = dlfcn.dlsym(handle, 'cuArrayGetMemoryRequirements')             # <<<<<<<<<<<<<<
 *     global __cuMipmappedArrayGetMemoryRequirements
 *     __cuMipmappedArrayGetMemoryRequirements = dlfcn.dlsym(handle, 'cuMipmappedArrayGetMemoryRequirements')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuArrayGetMemoryRequirements = dlsym(__pyx_v_handle, ((char const *)"cuArrayGetMemoryRequirements"));

  /* "cuda/_cuda/ccuda.pyx":2110
 *     __cuArrayGetMemoryRequirements = dlfcn.dlsym(handle, 'cuArrayGetMemoryRequirements')
 *     global __cuMipmappedArrayGetMemoryRequirements
 *     __cuMipmappedArrayGetMemoryRequirements = dlfcn.dlsym(handle, 'cuMipmappedArrayGetMemoryRequirements')             # <<<<<<<<<<<<<<
 *     global __cuArrayGetPlane
 *     __cuArrayGetPlane = dlfcn.dlsym(handle, 'cuArrayGetPlane')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuMipmappedArrayGetMemoryRequirements = dlsym(__pyx_v_handle, ((char const *)"cuMipmappedArrayGetMemoryRequirements"));

  /* "cuda/_cuda/ccuda.pyx":2112
 *     __cuMipmappedArrayGetMemoryRequirements = dlfcn.dlsym(handle, 'cuMipmappedArrayGetMemoryRequirements')
 *     global __cuArrayGetPlane
 *     __cuArrayGetPlane = dlfcn.dlsym(handle, 'cuArrayGetPlane')             # <<<<<<<<<<<<<<
 *     global __cuArrayDestroy
 *     __cuArrayDestroy = dlfcn.dlsym(handle, 'cuArrayDestroy')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuArrayGetPlane = dlsym(__pyx_v_handle, ((char const *)"cuArrayGetPlane"));

  /* "cuda/_cuda/ccuda.pyx":2114
 *     __cuArrayGetPlane = dlfcn.dlsym(handle, 'cuArrayGetPlane')
 *     global __cuArrayDestroy
 *     __cuArrayDestroy = dlfcn.dlsym(handle, 'cuArrayDestroy')             # <<<<<<<<<<<<<<
 *     global __cuArray3DCreate_v2
 *     __cuArray3DCreate_v2 = dlfcn.dlsym(handle, 'cuArray3DCreate_v2')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuArrayDestroy = dlsym(__pyx_v_handle, ((char const *)"cuArrayDestroy"));

  /* "cuda/_cuda/ccuda.pyx":2116
 *     __cuArrayDestroy = dlfcn.dlsym(handle, 'cuArrayDestroy')
 *     global __cuArray3DCreate_v2
 *     __cuArray3DCreate_v2 = dlfcn.dlsym(handle, 'cuArray3DCreate_v2')             # <<<<<<<<<<<<<<
 *     global __cuArray3DGetDescriptor_v2
 *     __cuArray3DGetDescriptor_v2 = dlfcn.dlsym(handle, 'cuArray3DGetDescriptor_v2')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuArray3DCreate_v2 = dlsym(__pyx_v_handle, ((char const *)"cuArray3DCreate_v2"));

  /* "cuda/_cuda/ccuda.pyx":2118
 *     __cuArray3DCreate_v2 = dlfcn.dlsym(handle, 'cuArray3DCreate_v2')
 *     global __cuArray3DGetDescriptor_v2
 *     __cuArray3DGetDescriptor_v2 = dlfcn.dlsym(handle, 'cuArray3DGetDescriptor_v2')             # <<<<<<<<<<<<<<
 *     global __cuMipmappedArrayCreate
 *     __cuMipmappedArrayCreate = dlfcn.dlsym(handle, 'cuMipmappedArrayCreate')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuArray3DGetDescriptor_v2 = dlsym(__pyx_v_handle, ((char const *)"cuArray3DGetDescriptor_v2"));

  /* "cuda/_cuda/ccuda.pyx":2120
 *     __cuArray3DGetDescriptor_v2 = dlfcn.dlsym(handle, 'cuArray3DGetDescriptor_v2')
 *     global __cuMipmappedArrayCreate
 *     __cuMipmappedArrayCreate = dlfcn.dlsym(handle, 'cuMipmappedArrayCreate')             # <<<<<<<<<<<<<<
 *     global __cuMipmappedArrayGetLevel
 *     __cuMipmappedArrayGetLevel = dlfcn.dlsym(handle, 'cuMipmappedArrayGetLevel')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuMipmappedArrayCreate = dlsym(__pyx_v_handle, ((char const *)"cuMipmappedArrayCreate"));

  /* "cuda/_cuda/ccuda.pyx":2122
 *     __cuMipmappedArrayCreate = dlfcn.dlsym(handle, 'cuMipmappedArrayCreate')
 *     global __cuMipmappedArrayGetLevel
 *     __cuMipmappedArrayGetLevel = dlfcn.dlsym(handle, 'cuMipmappedArrayGetLevel')             # <<<<<<<<<<<<<<
 *     global __cuMipmappedArrayDestroy
 *     __cuMipmappedArrayDestroy = dlfcn.dlsym(handle, 'cuMipmappedArrayDestroy')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuMipmappedArrayGetLevel = dlsym(__pyx_v_handle, ((char const *)"cuMipmappedArrayGetLevel"));

  /* "cuda/_cuda/ccuda.pyx":2124
 *     __cuMipmappedArrayGetLevel = dlfcn.dlsym(handle, 'cuMipmappedArrayGetLevel')
 *     global __cuMipmappedArrayDestroy
 *     __cuMipmappedArrayDestroy = dlfcn.dlsym(handle, 'cuMipmappedArrayDestroy')             # <<<<<<<<<<<<<<
 *     global __cuMemGetHandleForAddressRange
 *     __cuMemGetHandleForAddressRange = dlfcn.dlsym(handle, 'cuMemGetHandleForAddressRange')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuMipmappedArrayDestroy = dlsym(__pyx_v_handle, ((char const *)"cuMipmappedArrayDestroy"));

  /* "cuda/_cuda/ccuda.pyx":2126
 *     __cuMipmappedArrayDestroy = dlfcn.dlsym(handle, 'cuMipmappedArrayDestroy')
 *     global __cuMemGetHandleForAddressRange
 *     __cuMemGetHandleForAddressRange = dlfcn.dlsym(handle, 'cuMemGetHandleForAddressRange')             # <<<<<<<<<<<<<<
 *     global __cuMemAddressReserve
 *     __cuMemAddressReserve = dlfcn.dlsym(handle, 'cuMemAddressReserve')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuMemGetHandleForAddressRange = dlsym(__pyx_v_handle, ((char const *)"cuMemGetHandleForAddressRange"));

  /* "cuda/_cuda/ccuda.pyx":2128
 *     __cuMemGetHandleForAddressRange = dlfcn.dlsym(handle, 'cuMemGetHandleForAddressRange')
 *     global __cuMemAddressReserve
 *     __cuMemAddressReserve = dlfcn.dlsym(handle, 'cuMemAddressReserve')             # <<<<<<<<<<<<<<
 *     global __cuMemAddressFree
 *     __cuMemAddressFree = dlfcn.dlsym(handle, 'cuMemAddressFree')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuMemAddressReserve = dlsym(__pyx_v_handle, ((char const *)"cuMemAddressReserve"));

  /* "cuda/_cuda/ccuda.pyx":2130
 *     __cuMemAddressReserve = dlfcn.dlsym(handle, 'cuMemAddressReserve')
 *     global __cuMemAddressFree
 *     __cuMemAddressFree = dlfcn.dlsym(handle, 'cuMemAddressFree')             # <<<<<<<<<<<<<<
 *     global __cuMemCreate
 *     __cuMemCreate = dlfcn.dlsym(handle, 'cuMemCreate')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuMemAddressFree = dlsym(__pyx_v_handle, ((char const *)"cuMemAddressFree"));

  /* "cuda/_cuda/ccuda.pyx":2132
 *     __cuMemAddressFree = dlfcn.dlsym(handle, 'cuMemAddressFree')
 *     global __cuMemCreate
 *     __cuMemCreate = dlfcn.dlsym(handle, 'cuMemCreate')             # <<<<<<<<<<<<<<
 *     global __cuMemRelease
 *     __cuMemRelease = dlfcn.dlsym(handle, 'cuMemRelease')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuMemCreate = dlsym(__pyx_v_handle, ((char const *)"cuMemCreate"));

  /* "cuda/_cuda/ccuda.pyx":2134
 *     __cuMemCreate = dlfcn.dlsym(handle, 'cuMemCreate')
 *     global __cuMemRelease
 *     __cuMemRelease = dlfcn.dlsym(handle, 'cuMemRelease')             # <<<<<<<<<<<<<<
 *     global __cuMemMap
 *     __cuMemMap = dlfcn.dlsym(handle, 'cuMemMap')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuMemRelease = dlsym(__pyx_v_handle, ((char const *)"cuMemRelease"));

  /* "cuda/_cuda/ccuda.pyx":2136
 *     __cuMemRelease = dlfcn.dlsym(handle, 'cuMemRelease')
 *     global __cuMemMap
 *     __cuMemMap = dlfcn.dlsym(handle, 'cuMemMap')             # <<<<<<<<<<<<<<
 *     global __cuMemUnmap
 *     __cuMemUnmap = dlfcn.dlsym(handle, 'cuMemUnmap')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuMemMap = dlsym(__pyx_v_handle, ((char const *)"cuMemMap"));

  /* "cuda/_cuda/ccuda.pyx":2138
 *     __cuMemMap = dlfcn.dlsym(handle, 'cuMemMap')
 *     global __cuMemUnmap
 *     __cuMemUnmap = dlfcn.dlsym(handle, 'cuMemUnmap')             # <<<<<<<<<<<<<<
 *     global __cuMemSetAccess
 *     __cuMemSetAccess = dlfcn.dlsym(handle, 'cuMemSetAccess')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuMemUnmap = dlsym(__pyx_v_handle, ((char const *)"cuMemUnmap"));

  /* "cuda/_cuda/ccuda.pyx":2140
 *     __cuMemUnmap = dlfcn.dlsym(handle, 'cuMemUnmap')
 *     global __cuMemSetAccess
 *     __cuMemSetAccess = dlfcn.dlsym(handle, 'cuMemSetAccess')             # <<<<<<<<<<<<<<
 *     global __cuMemGetAccess
 *     __cuMemGetAccess = dlfcn.dlsym(handle, 'cuMemGetAccess')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuMemSetAccess = dlsym(__pyx_v_handle, ((char const *)"cuMemSetAccess"));

  /* "cuda/_cuda/ccuda.pyx":2142
 *     __cuMemSetAccess = dlfcn.dlsym(handle, 'cuMemSetAccess')
 *     global __cuMemGetAccess
 *     __cuMemGetAccess = dlfcn.dlsym(handle, 'cuMemGetAccess')             # <<<<<<<<<<<<<<
 *     global __cuMemExportToShareableHandle
 *     __cuMemExportToShareableHandle = dlfcn.dlsym(handle, 'cuMemExportToShareableHandle')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuMemGetAccess = dlsym(__pyx_v_handle, ((char const *)"cuMemGetAccess"));

  /* "cuda/_cuda/ccuda.pyx":2144
 *     __cuMemGetAccess = dlfcn.dlsym(handle, 'cuMemGetAccess')
 *     global __cuMemExportToShareableHandle
 *     __cuMemExportToShareableHandle = dlfcn.dlsym(handle, 'cuMemExportToShareableHandle')             # <<<<<<<<<<<<<<
 *     global __cuMemImportFromShareableHandle
 *     __cuMemImportFromShareableHandle = dlfcn.dlsym(handle, 'cuMemImportFromShareableHandle')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuMemExportToShareableHandle = dlsym(__pyx_v_handle, ((char const *)"cuMemExportToShareableHandle"));

  /* "cuda/_cuda/ccuda.pyx":2146
 *     __cuMemExportToShareableHandle = dlfcn.dlsym(handle, 'cuMemExportToShareableHandle')
 *     global __cuMemImportFromShareableHandle
 *     __cuMemImportFromShareableHandle = dlfcn.dlsym(handle, 'cuMemImportFromShareableHandle')             # <<<<<<<<<<<<<<
 *     global __cuMemGetAllocationGranularity
 *     __cuMemGetAllocationGranularity = dlfcn.dlsym(handle, 'cuMemGetAllocationGranularity')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuMemImportFromShareableHandle = dlsym(__pyx_v_handle, ((char const *)"cuMemImportFromShareableHandle"));

  /* "cuda/_cuda/ccuda.pyx":2148
 *     __cuMemImportFromShareableHandle = dlfcn.dlsym(handle, 'cuMemImportFromShareableHandle')
 *     global __cuMemGetAllocationGranularity
 *     __cuMemGetAllocationGranularity = dlfcn.dlsym(handle, 'cuMemGetAllocationGranularity')             # <<<<<<<<<<<<<<
 *     global __cuMemGetAllocationPropertiesFromHandle
 *     __cuMemGetAllocationPropertiesFromHandle = dlfcn.dlsym(handle, 'cuMemGetAllocationPropertiesFromHandle')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuMemGetAllocationGranularity = dlsym(__pyx_v_handle, ((char const *)"cuMemGetAllocationGranularity"));

  /* "cuda/_cuda/ccuda.pyx":2150
 *     __cuMemGetAllocationGranularity = dlfcn.dlsym(handle, 'cuMemGetAllocationGranularity')
 *     global __cuMemGetAllocationPropertiesFromHandle
 *     __cuMemGetAllocationPropertiesFromHandle = dlfcn.dlsym(handle, 'cuMemGetAllocationPropertiesFromHandle')             # <<<<<<<<<<<<<<
 *     global __cuMemRetainAllocationHandle
 *     __cuMemRetainAllocationHandle = dlfcn.dlsym(handle, 'cuMemRetainAllocationHandle')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuMemGetAllocationPropertiesFromHandle = dlsym(__pyx_v_handle, ((char const *)"cuMemGetAllocationPropertiesFromHandle"));

  /* "cuda/_cuda/ccuda.pyx":2152
 *     __cuMemGetAllocationPropertiesFromHandle = dlfcn.dlsym(handle, 'cuMemGetAllocationPropertiesFromHandle')
 *     global __cuMemRetainAllocationHandle
 *     __cuMemRetainAllocationHandle = dlfcn.dlsym(handle, 'cuMemRetainAllocationHandle')             # <<<<<<<<<<<<<<
 *     global __cuMemPoolTrimTo
 *     __cuMemPoolTrimTo = dlfcn.dlsym(handle, 'cuMemPoolTrimTo')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuMemRetainAllocationHandle = dlsym(__pyx_v_handle, ((char const *)"cuMemRetainAllocationHandle"));

  /* "cuda/_cuda/ccuda.pyx":2154
 *     __cuMemRetainAllocationHandle = dlfcn.dlsym(handle, 'cuMemRetainAllocationHandle')
 *     global __cuMemPoolTrimTo
 *     __cuMemPoolTrimTo = dlfcn.dlsym(handle, 'cuMemPoolTrimTo')             # <<<<<<<<<<<<<<
 *     global __cuMemPoolSetAttribute
 *     __cuMemPoolSetAttribute = dlfcn.dlsym(handle, 'cuMemPoolSetAttribute')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuMemPoolTrimTo = dlsym(__pyx_v_handle, ((char const *)"cuMemPoolTrimTo"));

  /* "cuda/_cuda/ccuda.pyx":2156
 *     __cuMemPoolTrimTo = dlfcn.dlsym(handle, 'cuMemPoolTrimTo')
 *     global __cuMemPoolSetAttribute
 *     __cuMemPoolSetAttribute = dlfcn.dlsym(handle, 'cuMemPoolSetAttribute')             # <<<<<<<<<<<<<<
 *     global __cuMemPoolGetAttribute
 *     __cuMemPoolGetAttribute = dlfcn.dlsym(handle, 'cuMemPoolGetAttribute')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuMemPoolSetAttribute = dlsym(__pyx_v_handle, ((char const *)"cuMemPoolSetAttribute"));

  /* "cuda/_cuda/ccuda.pyx":2158
 *     __cuMemPoolSetAttribute = dlfcn.dlsym(handle, 'cuMemPoolSetAttribute')
 *     global __cuMemPoolGetAttribute
 *     __cuMemPoolGetAttribute = dlfcn.dlsym(handle, 'cuMemPoolGetAttribute')             # <<<<<<<<<<<<<<
 *     global __cuMemPoolSetAccess
 *     __cuMemPoolSetAccess = dlfcn.dlsym(handle, 'cuMemPoolSetAccess')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuMemPoolGetAttribute = dlsym(__pyx_v_handle, ((char const *)"cuMemPoolGetAttribute"));

  /* "cuda/_cuda/ccuda.pyx":2160
 *     __cuMemPoolGetAttribute = dlfcn.dlsym(handle, 'cuMemPoolGetAttribute')
 *     global __cuMemPoolSetAccess
 *     __cuMemPoolSetAccess = dlfcn.dlsym(handle, 'cuMemPoolSetAccess')             # <<<<<<<<<<<<<<
 *     global __cuMemPoolGetAccess
 *     __cuMemPoolGetAccess = dlfcn.dlsym(handle, 'cuMemPoolGetAccess')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuMemPoolSetAccess = dlsym(__pyx_v_handle, ((char const *)"cuMemPoolSetAccess"));

  /* "cuda/_cuda/ccuda.pyx":2162
 *     __cuMemPoolSetAccess = dlfcn.dlsym(handle, 'cuMemPoolSetAccess')
 *     global __cuMemPoolGetAccess
 *     __cuMemPoolGetAccess = dlfcn.dlsym(handle, 'cuMemPoolGetAccess')             # <<<<<<<<<<<<<<
 *     global __cuMemPoolCreate
 *     __cuMemPoolCreate = dlfcn.dlsym(handle, 'cuMemPoolCreate')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuMemPoolGetAccess = dlsym(__pyx_v_handle, ((char const *)"cuMemPoolGetAccess"));

  /* "cuda/_cuda/ccuda.pyx":2164
 *     __cuMemPoolGetAccess = dlfcn.dlsym(handle, 'cuMemPoolGetAccess')
 *     global __cuMemPoolCreate
 *     __cuMemPoolCreate = dlfcn.dlsym(handle, 'cuMemPoolCreate')             # <<<<<<<<<<<<<<
 *     global __cuMemPoolDestroy
 *     __cuMemPoolDestroy = dlfcn.dlsym(handle, 'cuMemPoolDestroy')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuMemPoolCreate = dlsym(__pyx_v_handle, ((char const *)"cuMemPoolCreate"));

  /* "cuda/_cuda/ccuda.pyx":2166
 *     __cuMemPoolCreate = dlfcn.dlsym(handle, 'cuMemPoolCreate')
 *     global __cuMemPoolDestroy
 *     __cuMemPoolDestroy = dlfcn.dlsym(handle, 'cuMemPoolDestroy')             # <<<<<<<<<<<<<<
 *     global __cuMemPoolExportToShareableHandle
 *     __cuMemPoolExportToShareableHandle = dlfcn.dlsym(handle, 'cuMemPoolExportToShareableHandle')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuMemPoolDestroy = dlsym(__pyx_v_handle, ((char const *)"cuMemPoolDestroy"));

  /* "cuda/_cuda/ccuda.pyx":2168
 *     __cuMemPoolDestroy = dlfcn.dlsym(handle, 'cuMemPoolDestroy')
 *     global __cuMemPoolExportToShareableHandle
 *     __cuMemPoolExportToShareableHandle = dlfcn.dlsym(handle, 'cuMemPoolExportToShareableHandle')             # <<<<<<<<<<<<<<
 *     global __cuMemPoolImportFromShareableHandle
 *     __cuMemPoolImportFromShareableHandle = dlfcn.dlsym(handle, 'cuMemPoolImportFromShareableHandle')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuMemPoolExportToShareableHandle = dlsym(__pyx_v_handle, ((char const *)"cuMemPoolExportToShareableHandle"));

  /* "cuda/_cuda/ccuda.pyx":2170
 *     __cuMemPoolExportToShareableHandle = dlfcn.dlsym(handle, 'cuMemPoolExportToShareableHandle')
 *     global __cuMemPoolImportFromShareableHandle
 *     __cuMemPoolImportFromShareableHandle = dlfcn.dlsym(handle, 'cuMemPoolImportFromShareableHandle')             # <<<<<<<<<<<<<<
 *     global __cuMemPoolExportPointer
 *     __cuMemPoolExportPointer = dlfcn.dlsym(handle, 'cuMemPoolExportPointer')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuMemPoolImportFromShareableHandle = dlsym(__pyx_v_handle, ((char const *)"cuMemPoolImportFromShareableHandle"));

  /* "cuda/_cuda/ccuda.pyx":2172
 *     __cuMemPoolImportFromShareableHandle = dlfcn.dlsym(handle, 'cuMemPoolImportFromShareableHandle')
 *     global __cuMemPoolExportPointer
 *     __cuMemPoolExportPointer = dlfcn.dlsym(handle, 'cuMemPoolExportPointer')             # <<<<<<<<<<<<<<
 *     global __cuMemPoolImportPointer
 *     __cuMemPoolImportPointer = dlfcn.dlsym(handle, 'cuMemPoolImportPointer')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuMemPoolExportPointer = dlsym(__pyx_v_handle, ((char const *)"cuMemPoolExportPointer"));

  /* "cuda/_cuda/ccuda.pyx":2174
 *     __cuMemPoolExportPointer = dlfcn.dlsym(handle, 'cuMemPoolExportPointer')
 *     global __cuMemPoolImportPointer
 *     __cuMemPoolImportPointer = dlfcn.dlsym(handle, 'cuMemPoolImportPointer')             # <<<<<<<<<<<<<<
 *     global __cuMulticastCreate
 *     __cuMulticastCreate = dlfcn.dlsym(handle, 'cuMulticastCreate')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuMemPoolImportPointer = dlsym(__pyx_v_handle, ((char const *)"cuMemPoolImportPointer"));

  /* "cuda/_cuda/ccuda.pyx":2176
 *     __cuMemPoolImportPointer = dlfcn.dlsym(handle, 'cuMemPoolImportPointer')
 *     global __cuMulticastCreate
 *     __cuMulticastCreate = dlfcn.dlsym(handle, 'cuMulticastCreate')             # <<<<<<<<<<<<<<
 *     global __cuMulticastAddDevice
 *     __cuMulticastAddDevice = dlfcn.dlsym(handle, 'cuMulticastAddDevice')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuMulticastCreate = dlsym(__pyx_v_handle, ((char const *)"cuMulticastCreate"));

  /* "cuda/_cuda/ccuda.pyx":2178
 *     __cuMulticastCreate = dlfcn.dlsym(handle, 'cuMulticastCreate')
 *     global __cuMulticastAddDevice
 *     __cuMulticastAddDevice = dlfcn.dlsym(handle, 'cuMulticastAddDevice')             # <<<<<<<<<<<<<<
 *     global __cuMulticastBindMem
 *     __cuMulticastBindMem = dlfcn.dlsym(handle, 'cuMulticastBindMem')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuMulticastAddDevice = dlsym(__pyx_v_handle, ((char const *)"cuMulticastAddDevice"));

  /* "cuda/_cuda/ccuda.pyx":2180
 *     __cuMulticastAddDevice = dlfcn.dlsym(handle, 'cuMulticastAddDevice')
 *     global __cuMulticastBindMem
 *     __cuMulticastBindMem = dlfcn.dlsym(handle, 'cuMulticastBindMem')             # <<<<<<<<<<<<<<
 *     global __cuMulticastBindAddr
 *     __cuMulticastBindAddr = dlfcn.dlsym(handle, 'cuMulticastBindAddr')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuMulticastBindMem = dlsym(__pyx_v_handle, ((char const *)"cuMulticastBindMem"));

  /* "cuda/_cuda/ccuda.pyx":2182
 *     __cuMulticastBindMem = dlfcn.dlsym(handle, 'cuMulticastBindMem')
 *     global __cuMulticastBindAddr
 *     __cuMulticastBindAddr = dlfcn.dlsym(handle, 'cuMulticastBindAddr')             # <<<<<<<<<<<<<<
 *     global __cuMulticastUnbind
 *     __cuMulticastUnbind = dlfcn.dlsym(handle, 'cuMulticastUnbind')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuMulticastBindAddr = dlsym(__pyx_v_handle, ((char const *)"cuMulticastBindAddr"));

  /* "cuda/_cuda/ccuda.pyx":2184
 *     __cuMulticastBindAddr = dlfcn.dlsym(handle, 'cuMulticastBindAddr')
 *     global __cuMulticastUnbind
 *     __cuMulticastUnbind = dlfcn.dlsym(handle, 'cuMulticastUnbind')             # <<<<<<<<<<<<<<
 *     global __cuMulticastGetGranularity
 *     __cuMulticastGetGranularity = dlfcn.dlsym(handle, 'cuMulticastGetGranularity')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuMulticastUnbind = dlsym(__pyx_v_handle, ((char const *)"cuMulticastUnbind"));

  /* "cuda/_cuda/ccuda.pyx":2186
 *     __cuMulticastUnbind = dlfcn.dlsym(handle, 'cuMulticastUnbind')
 *     global __cuMulticastGetGranularity
 *     __cuMulticastGetGranularity = dlfcn.dlsym(handle, 'cuMulticastGetGranularity')             # <<<<<<<<<<<<<<
 *     global __cuPointerGetAttribute
 *     __cuPointerGetAttribute = dlfcn.dlsym(handle, 'cuPointerGetAttribute')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuMulticastGetGranularity = dlsym(__pyx_v_handle, ((char const *)"cuMulticastGetGranularity"));

  /* "cuda/_cuda/ccuda.pyx":2188
 *     __cuMulticastGetGranularity = dlfcn.dlsym(handle, 'cuMulticastGetGranularity')
 *     global __cuPointerGetAttribute
 *     __cuPointerGetAttribute = dlfcn.dlsym(handle, 'cuPointerGetAttribute')             # <<<<<<<<<<<<<<
 *     global __cuMemAdvise
 *     __cuMemAdvise = dlfcn.dlsym(handle, 'cuMemAdvise')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuPointerGetAttribute = dlsym(__pyx_v_handle, ((char const *)"cuPointerGetAttribute"));

  /* "cuda/_cuda/ccuda.pyx":2190
 *     __cuPointerGetAttribute = dlfcn.dlsym(handle, 'cuPointerGetAttribute')
 *     global __cuMemAdvise
 *     __cuMemAdvise = dlfcn.dlsym(handle, 'cuMemAdvise')             # <<<<<<<<<<<<<<
 *     global __cuMemAdvise_v2
 *     __cuMemAdvise_v2 = dlfcn.dlsym(handle, 'cuMemAdvise_v2')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuMemAdvise = dlsym(__pyx_v_handle, ((char const *)"cuMemAdvise"));

  /* "cuda/_cuda/ccuda.pyx":2192
 *     __cuMemAdvise = dlfcn.dlsym(handle, 'cuMemAdvise')
 *     global __cuMemAdvise_v2
 *     __cuMemAdvise_v2 = dlfcn.dlsym(handle, 'cuMemAdvise_v2')             # <<<<<<<<<<<<<<
 *     global __cuMemRangeGetAttribute
 *     __cuMemRangeGetAttribute = dlfcn.dlsym(handle, 'cuMemRangeGetAttribute')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuMemAdvise_v2 = dlsym(__pyx_v_handle, ((char const *)"cuMemAdvise_v2"));

  /* "cuda/_cuda/ccuda.pyx":2194
 *     __cuMemAdvise_v2 = dlfcn.dlsym(handle, 'cuMemAdvise_v2')
 *     global __cuMemRangeGetAttribute
 *     __cuMemRangeGetAttribute = dlfcn.dlsym(handle, 'cuMemRangeGetAttribute')             # <<<<<<<<<<<<<<
 *     global __cuMemRangeGetAttributes
 *     __cuMemRangeGetAttributes = dlfcn.dlsym(handle, 'cuMemRangeGetAttributes')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuMemRangeGetAttribute = dlsym(__pyx_v_handle, ((char const *)"cuMemRangeGetAttribute"));

  /* "cuda/_cuda/ccuda.pyx":2196
 *     __cuMemRangeGetAttribute = dlfcn.dlsym(handle, 'cuMemRangeGetAttribute')
 *     global __cuMemRangeGetAttributes
 *     __cuMemRangeGetAttributes = dlfcn.dlsym(handle, 'cuMemRangeGetAttributes')             # <<<<<<<<<<<<<<
 *     global __cuPointerSetAttribute
 *     __cuPointerSetAttribute = dlfcn.dlsym(handle, 'cuPointerSetAttribute')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuMemRangeGetAttributes = dlsym(__pyx_v_handle, ((char const *)"cuMemRangeGetAttributes"));

  /* "cuda/_cuda/ccuda.pyx":2198
 *     __cuMemRangeGetAttributes = dlfcn.dlsym(handle, 'cuMemRangeGetAttributes')
 *     global __cuPointerSetAttribute
 *     __cuPointerSetAttribute = dlfcn.dlsym(handle, 'cuPointerSetAttribute')             # <<<<<<<<<<<<<<
 *     global __cuPointerGetAttributes
 *     __cuPointerGetAttributes = dlfcn.dlsym(handle, 'cuPointerGetAttributes')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuPointerSetAttribute = dlsym(__pyx_v_handle, ((char const *)"cuPointerSetAttribute"));

  /* "cuda/_cuda/ccuda.pyx":2200
 *     __cuPointerSetAttribute = dlfcn.dlsym(handle, 'cuPointerSetAttribute')
 *     global __cuPointerGetAttributes
 *     __cuPointerGetAttributes = dlfcn.dlsym(handle, 'cuPointerGetAttributes')             # <<<<<<<<<<<<<<
 *     global __cuStreamCreate
 *     __cuStreamCreate = dlfcn.dlsym(handle, 'cuStreamCreate')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuPointerGetAttributes = dlsym(__pyx_v_handle, ((char const *)"cuPointerGetAttributes"));

  /* "cuda/_cuda/ccuda.pyx":2202
 *     __cuPointerGetAttributes = dlfcn.dlsym(handle, 'cuPointerGetAttributes')
 *     global __cuStreamCreate
 *     __cuStreamCreate = dlfcn.dlsym(handle, 'cuStreamCreate')             # <<<<<<<<<<<<<<
 *     global __cuStreamCreateWithPriority
 *     __cuStreamCreateWithPriority = dlfcn.dlsym(handle, 'cuStreamCreateWithPriority')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuStreamCreate = dlsym(__pyx_v_handle, ((char const *)"cuStreamCreate"));

  /* "cuda/_cuda/ccuda.pyx":2204
 *     __cuStreamCreate = dlfcn.dlsym(handle, 'cuStreamCreate')
 *     global __cuStreamCreateWithPriority
 *     __cuStreamCreateWithPriority = dlfcn.dlsym(handle, 'cuStreamCreateWithPriority')             # <<<<<<<<<<<<<<
 *     global __cuThreadExchangeStreamCaptureMode
 *     __cuThreadExchangeStreamCaptureMode = dlfcn.dlsym(handle, 'cuThreadExchangeStreamCaptureMode')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuStreamCreateWithPriority = dlsym(__pyx_v_handle, ((char const *)"cuStreamCreateWithPriority"));

  /* "cuda/_cuda/ccuda.pyx":2206
 *     __cuStreamCreateWithPriority = dlfcn.dlsym(handle, 'cuStreamCreateWithPriority')
 *     global __cuThreadExchangeStreamCaptureMode
 *     __cuThreadExchangeStreamCaptureMode = dlfcn.dlsym(handle, 'cuThreadExchangeStreamCaptureMode')             # <<<<<<<<<<<<<<
 *     global __cuStreamDestroy_v2
 *     __cuStreamDestroy_v2 = dlfcn.dlsym(handle, 'cuStreamDestroy_v2')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuThreadExchangeStreamCaptureMode = dlsym(__pyx_v_handle, ((char const *)"cuThreadExchangeStreamCaptureMode"));

  /* "cuda/_cuda/ccuda.pyx":2208
 *     __cuThreadExchangeStreamCaptureMode = dlfcn.dlsym(handle, 'cuThreadExchangeStreamCaptureMode')
 *     global __cuStreamDestroy_v2
 *     __cuStreamDestroy_v2 = dlfcn.dlsym(handle, 'cuStreamDestroy_v2')             # <<<<<<<<<<<<<<
 *     global __cuEventCreate
 *     __cuEventCreate = dlfcn.dlsym(handle, 'cuEventCreate')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuStreamDestroy_v2 = dlsym(__pyx_v_handle, ((char const *)"cuStreamDestroy_v2"));

  /* "cuda/_cuda/ccuda.pyx":2210
 *     __cuStreamDestroy_v2 = dlfcn.dlsym(handle, 'cuStreamDestroy_v2')
 *     global __cuEventCreate
 *     __cuEventCreate = dlfcn.dlsym(handle, 'cuEventCreate')             # <<<<<<<<<<<<<<
 *     global __cuEventQuery
 *     __cuEventQuery = dlfcn.dlsym(handle, 'cuEventQuery')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuEventCreate = dlsym(__pyx_v_handle, ((char const *)"cuEventCreate"));

  /* "cuda/_cuda/ccuda.pyx":2212
 *     __cuEventCreate = dlfcn.dlsym(handle, 'cuEventCreate')
 *     global __cuEventQuery
 *     __cuEventQuery = dlfcn.dlsym(handle, 'cuEventQuery')             # <<<<<<<<<<<<<<
 *     global __cuEventSynchronize
 *     __cuEventSynchronize = dlfcn.dlsym(handle, 'cuEventSynchronize')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuEventQuery = dlsym(__pyx_v_handle, ((char const *)"cuEventQuery"));

  /* "cuda/_cuda/ccuda.pyx":2214
 *     __cuEventQuery = dlfcn.dlsym(handle, 'cuEventQuery')
 *     global __cuEventSynchronize
 *     __cuEventSynchronize = dlfcn.dlsym(handle, 'cuEventSynchronize')             # <<<<<<<<<<<<<<
 *     global __cuEventDestroy_v2
 *     __cuEventDestroy_v2 = dlfcn.dlsym(handle, 'cuEventDestroy_v2')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuEventSynchronize = dlsym(__pyx_v_handle, ((char const *)"cuEventSynchronize"));

  /* "cuda/_cuda/ccuda.pyx":2216
 *     __cuEventSynchronize = dlfcn.dlsym(handle, 'cuEventSynchronize')
 *     global __cuEventDestroy_v2
 *     __cuEventDestroy_v2 = dlfcn.dlsym(handle, 'cuEventDestroy_v2')             # <<<<<<<<<<<<<<
 *     global __cuEventElapsedTime
 *     __cuEventElapsedTime = dlfcn.dlsym(handle, 'cuEventElapsedTime')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuEventDestroy_v2 = dlsym(__pyx_v_handle, ((char const *)"cuEventDestroy_v2"));

  /* "cuda/_cuda/ccuda.pyx":2218
 *     __cuEventDestroy_v2 = dlfcn.dlsym(handle, 'cuEventDestroy_v2')
 *     global __cuEventElapsedTime
 *     __cuEventElapsedTime = dlfcn.dlsym(handle, 'cuEventElapsedTime')             # <<<<<<<<<<<<<<
 *     global __cuImportExternalMemory
 *     __cuImportExternalMemory = dlfcn.dlsym(handle, 'cuImportExternalMemory')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuEventElapsedTime = dlsym(__pyx_v_handle, ((char const *)"cuEventElapsedTime"));

  /* "cuda/_cuda/ccuda.pyx":2220
 *     __cuEventElapsedTime = dlfcn.dlsym(handle, 'cuEventElapsedTime')
 *     global __cuImportExternalMemory
 *     __cuImportExternalMemory = dlfcn.dlsym(handle, 'cuImportExternalMemory')             # <<<<<<<<<<<<<<
 *     global __cuExternalMemoryGetMappedBuffer
 *     __cuExternalMemoryGetMappedBuffer = dlfcn.dlsym(handle, 'cuExternalMemoryGetMappedBuffer')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuImportExternalMemory = dlsym(__pyx_v_handle, ((char const *)"cuImportExternalMemory"));

  /* "cuda/_cuda/ccuda.pyx":2222
 *     __cuImportExternalMemory = dlfcn.dlsym(handle, 'cuImportExternalMemory')
 *     global __cuExternalMemoryGetMappedBuffer
 *     __cuExternalMemoryGetMappedBuffer = dlfcn.dlsym(handle, 'cuExternalMemoryGetMappedBuffer')             # <<<<<<<<<<<<<<
 *     global __cuExternalMemoryGetMappedMipmappedArray
 *     __cuExternalMemoryGetMappedMipmappedArray = dlfcn.dlsym(handle, 'cuExternalMemoryGetMappedMipmappedArray')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuExternalMemoryGetMappedBuffer = dlsym(__pyx_v_handle, ((char const *)"cuExternalMemoryGetMappedBuffer"));

  /* "cuda/_cuda/ccuda.pyx":2224
 *     __cuExternalMemoryGetMappedBuffer = dlfcn.dlsym(handle, 'cuExternalMemoryGetMappedBuffer')
 *     global __cuExternalMemoryGetMappedMipmappedArray
 *     __cuExternalMemoryGetMappedMipmappedArray = dlfcn.dlsym(handle, 'cuExternalMemoryGetMappedMipmappedArray')             # <<<<<<<<<<<<<<
 *     global __cuDestroyExternalMemory
 *     __cuDestroyExternalMemory = dlfcn.dlsym(handle, 'cuDestroyExternalMemory')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuExternalMemoryGetMappedMipmappedArray = dlsym(__pyx_v_handle, ((char const *)"cuExternalMemoryGetMappedMipmappedArray"));

  /* "cuda/_cuda/ccuda.pyx":2226
 *     __cuExternalMemoryGetMappedMipmappedArray = dlfcn.dlsym(handle, 'cuExternalMemoryGetMappedMipmappedArray')
 *     global __cuDestroyExternalMemory
 *     __cuDestroyExternalMemory = dlfcn.dlsym(handle, 'cuDestroyExternalMemory')             # <<<<<<<<<<<<<<
 *     global __cuImportExternalSemaphore
 *     __cuImportExternalSemaphore = dlfcn.dlsym(handle, 'cuImportExternalSemaphore')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuDestroyExternalMemory = dlsym(__pyx_v_handle, ((char const *)"cuDestroyExternalMemory"));

  /* "cuda/_cuda/ccuda.pyx":2228
 *     __cuDestroyExternalMemory = dlfcn.dlsym(handle, 'cuDestroyExternalMemory')
 *     global __cuImportExternalSemaphore
 *     __cuImportExternalSemaphore = dlfcn.dlsym(handle, 'cuImportExternalSemaphore')             # <<<<<<<<<<<<<<
 *     global __cuDestroyExternalSemaphore
 *     __cuDestroyExternalSemaphore = dlfcn.dlsym(handle, 'cuDestroyExternalSemaphore')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuImportExternalSemaphore = dlsym(__pyx_v_handle, ((char const *)"cuImportExternalSemaphore"));

  /* "cuda/_cuda/ccuda.pyx":2230
 *     __cuImportExternalSemaphore = dlfcn.dlsym(handle, 'cuImportExternalSemaphore')
 *     global __cuDestroyExternalSemaphore
 *     __cuDestroyExternalSemaphore = dlfcn.dlsym(handle, 'cuDestroyExternalSemaphore')             # <<<<<<<<<<<<<<
 *     global __cuFuncGetAttribute
 *     __cuFuncGetAttribute = dlfcn.dlsym(handle, 'cuFuncGetAttribute')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuDestroyExternalSemaphore = dlsym(__pyx_v_handle, ((char const *)"cuDestroyExternalSemaphore"));

  /* "cuda/_cuda/ccuda.pyx":2232
 *     __cuDestroyExternalSemaphore = dlfcn.dlsym(handle, 'cuDestroyExternalSemaphore')
 *     global __cuFuncGetAttribute
 *     __cuFuncGetAttribute = dlfcn.dlsym(handle, 'cuFuncGetAttribute')             # <<<<<<<<<<<<<<
 *     global __cuFuncSetAttribute
 *     __cuFuncSetAttribute = dlfcn.dlsym(handle, 'cuFuncSetAttribute')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuFuncGetAttribute = dlsym(__pyx_v_handle, ((char const *)"cuFuncGetAttribute"));

  /* "cuda/_cuda/ccuda.pyx":2234
 *     __cuFuncGetAttribute = dlfcn.dlsym(handle, 'cuFuncGetAttribute')
 *     global __cuFuncSetAttribute
 *     __cuFuncSetAttribute = dlfcn.dlsym(handle, 'cuFuncSetAttribute')             # <<<<<<<<<<<<<<
 *     global __cuFuncSetCacheConfig
 *     __cuFuncSetCacheConfig = dlfcn.dlsym(handle, 'cuFuncSetCacheConfig')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuFuncSetAttribute = dlsym(__pyx_v_handle, ((char const *)"cuFuncSetAttribute"));

  /* "cuda/_cuda/ccuda.pyx":2236
 *     __cuFuncSetAttribute = dlfcn.dlsym(handle, 'cuFuncSetAttribute')
 *     global __cuFuncSetCacheConfig
 *     __cuFuncSetCacheConfig = dlfcn.dlsym(handle, 'cuFuncSetCacheConfig')             # <<<<<<<<<<<<<<
 *     global __cuFuncGetModule
 *     __cuFuncGetModule = dlfcn.dlsym(handle, 'cuFuncGetModule')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuFuncSetCacheConfig = dlsym(__pyx_v_handle, ((char const *)"cuFuncSetCacheConfig"));

  /* "cuda/_cuda/ccuda.pyx":2238
 *     __cuFuncSetCacheConfig = dlfcn.dlsym(handle, 'cuFuncSetCacheConfig')
 *     global __cuFuncGetModule
 *     __cuFuncGetModule = dlfcn.dlsym(handle, 'cuFuncGetModule')             # <<<<<<<<<<<<<<
 *     global __cuFuncGetName
 *     __cuFuncGetName = dlfcn.dlsym(handle, 'cuFuncGetName')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuFuncGetModule = dlsym(__pyx_v_handle, ((char const *)"cuFuncGetModule"));

  /* "cuda/_cuda/ccuda.pyx":2240
 *     __cuFuncGetModule = dlfcn.dlsym(handle, 'cuFuncGetModule')
 *     global __cuFuncGetName
 *     __cuFuncGetName = dlfcn.dlsym(handle, 'cuFuncGetName')             # <<<<<<<<<<<<<<
 *     global __cuFuncGetParamInfo
 *     __cuFuncGetParamInfo = dlfcn.dlsym(handle, 'cuFuncGetParamInfo')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuFuncGetName = dlsym(__pyx_v_handle, ((char const *)"cuFuncGetName"));

  /* "cuda/_cuda/ccuda.pyx":2242
 *     __cuFuncGetName = dlfcn.dlsym(handle, 'cuFuncGetName')
 *     global __cuFuncGetParamInfo
 *     __cuFuncGetParamInfo = dlfcn.dlsym(handle, 'cuFuncGetParamInfo')             # <<<<<<<<<<<<<<
 *     global __cuFuncIsLoaded
 *     __cuFuncIsLoaded = dlfcn.dlsym(handle, 'cuFuncIsLoaded')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuFuncGetParamInfo = dlsym(__pyx_v_handle, ((char const *)"cuFuncGetParamInfo"));

  /* "cuda/_cuda/ccuda.pyx":2244
 *     __cuFuncGetParamInfo = dlfcn.dlsym(handle, 'cuFuncGetParamInfo')
 *     global __cuFuncIsLoaded
 *     __cuFuncIsLoaded = dlfcn.dlsym(handle, 'cuFuncIsLoaded')             # <<<<<<<<<<<<<<
 *     global __cuFuncLoad
 *     __cuFuncLoad = dlfcn.dlsym(handle, 'cuFuncLoad')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuFuncIsLoaded = dlsym(__pyx_v_handle, ((char const *)"cuFuncIsLoaded"));

  /* "cuda/_cuda/ccuda.pyx":2246
 *     __cuFuncIsLoaded = dlfcn.dlsym(handle, 'cuFuncIsLoaded')
 *     global __cuFuncLoad
 *     __cuFuncLoad = dlfcn.dlsym(handle, 'cuFuncLoad')             # <<<<<<<<<<<<<<
 *     global __cuLaunchCooperativeKernelMultiDevice
 *     __cuLaunchCooperativeKernelMultiDevice = dlfcn.dlsym(handle, 'cuLaunchCooperativeKernelMultiDevice')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuFuncLoad = dlsym(__pyx_v_handle, ((char const *)"cuFuncLoad"));

  /* "cuda/_cuda/ccuda.pyx":2248
 *     __cuFuncLoad = dlfcn.dlsym(handle, 'cuFuncLoad')
 *     global __cuLaunchCooperativeKernelMultiDevice
 *     __cuLaunchCooperativeKernelMultiDevice = dlfcn.dlsym(handle, 'cuLaunchCooperativeKernelMultiDevice')             # <<<<<<<<<<<<<<
 *     global __cuFuncSetBlockShape
 *     __cuFuncSetBlockShape = dlfcn.dlsym(handle, 'cuFuncSetBlockShape')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuLaunchCooperativeKernelMultiDevice = dlsym(__pyx_v_handle, ((char const *)"cuLaunchCooperativeKernelMultiDevice"));

  /* "cuda/_cuda/ccuda.pyx":2250
 *     __cuLaunchCooperativeKernelMultiDevice = dlfcn.dlsym(handle, 'cuLaunchCooperativeKernelMultiDevice')
 *     global __cuFuncSetBlockShape
 *     __cuFuncSetBlockShape = dlfcn.dlsym(handle, 'cuFuncSetBlockShape')             # <<<<<<<<<<<<<<
 *     global __cuFuncSetSharedSize
 *     __cuFuncSetSharedSize = dlfcn.dlsym(handle, 'cuFuncSetSharedSize')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuFuncSetBlockShape = dlsym(__pyx_v_handle, ((char const *)"cuFuncSetBlockShape"));

  /* "cuda/_cuda/ccuda.pyx":2252
 *     __cuFuncSetBlockShape = dlfcn.dlsym(handle, 'cuFuncSetBlockShape')
 *     global __cuFuncSetSharedSize
 *     __cuFuncSetSharedSize = dlfcn.dlsym(handle, 'cuFuncSetSharedSize')             # <<<<<<<<<<<<<<
 *     global __cuParamSetSize
 *     __cuParamSetSize = dlfcn.dlsym(handle, 'cuParamSetSize')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuFuncSetSharedSize = dlsym(__pyx_v_handle, ((char const *)"cuFuncSetSharedSize"));

  /* "cuda/_cuda/ccuda.pyx":2254
 *     __cuFuncSetSharedSize = dlfcn.dlsym(handle, 'cuFuncSetSharedSize')
 *     global __cuParamSetSize
 *     __cuParamSetSize = dlfcn.dlsym(handle, 'cuParamSetSize')             # <<<<<<<<<<<<<<
 *     global __cuParamSeti
 *     __cuParamSeti = dlfcn.dlsym(handle, 'cuParamSeti')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuParamSetSize = dlsym(__pyx_v_handle, ((char const *)"cuParamSetSize"));

  /* "cuda/_cuda/ccuda.pyx":2256
 *     __cuParamSetSize = dlfcn.dlsym(handle, 'cuParamSetSize')
 *     global __cuParamSeti
 *     __cuParamSeti = dlfcn.dlsym(handle, 'cuParamSeti')             # <<<<<<<<<<<<<<
 *     global __cuParamSetf
 *     __cuParamSetf = dlfcn.dlsym(handle, 'cuParamSetf')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuParamSeti = dlsym(__pyx_v_handle, ((char const *)"cuParamSeti"));

  /* "cuda/_cuda/ccuda.pyx":2258
 *     __cuParamSeti = dlfcn.dlsym(handle, 'cuParamSeti')
 *     global __cuParamSetf
 *     __cuParamSetf = dlfcn.dlsym(handle, 'cuParamSetf')             # <<<<<<<<<<<<<<
 *     global __cuParamSetv
 *     __cuParamSetv = dlfcn.dlsym(handle, 'cuParamSetv')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuParamSetf = dlsym(__pyx_v_handle, ((char const *)"cuParamSetf"));

  /* "cuda/_cuda/ccuda.pyx":2260
 *     __cuParamSetf = dlfcn.dlsym(handle, 'cuParamSetf')
 *     global __cuParamSetv
 *     __cuParamSetv = dlfcn.dlsym(handle, 'cuParamSetv')             # <<<<<<<<<<<<<<
 *     global __cuLaunch
 *     __cuLaunch = dlfcn.dlsym(handle, 'cuLaunch')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuParamSetv = dlsym(__pyx_v_handle, ((char const *)"cuParamSetv"));

  /* "cuda/_cuda/ccuda.pyx":2262
 *     __cuParamSetv = dlfcn.dlsym(handle, 'cuParamSetv')
 *     global __cuLaunch
 *     __cuLaunch = dlfcn.dlsym(handle, 'cuLaunch')             # <<<<<<<<<<<<<<
 *     global __cuLaunchGrid
 *     __cuLaunchGrid = dlfcn.dlsym(handle, 'cuLaunchGrid')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuLaunch = dlsym(__pyx_v_handle, ((char const *)"cuLaunch"));

  /* "cuda/_cuda/ccuda.pyx":2264
 *     __cuLaunch = dlfcn.dlsym(handle, 'cuLaunch')
 *     global __cuLaunchGrid
 *     __cuLaunchGrid = dlfcn.dlsym(handle, 'cuLaunchGrid')             # <<<<<<<<<<<<<<
 *     global __cuLaunchGridAsync
 *     __cuLaunchGridAsync = dlfcn.dlsym(handle, 'cuLaunchGridAsync')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuLaunchGrid = dlsym(__pyx_v_handle, ((char const *)"cuLaunchGrid"));

  /* "cuda/_cuda/ccuda.pyx":2266
 *     __cuLaunchGrid = dlfcn.dlsym(handle, 'cuLaunchGrid')
 *     global __cuLaunchGridAsync
 *     __cuLaunchGridAsync = dlfcn.dlsym(handle, 'cuLaunchGridAsync')             # <<<<<<<<<<<<<<
 *     global __cuParamSetTexRef
 *     __cuParamSetTexRef = dlfcn.dlsym(handle, 'cuParamSetTexRef')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuLaunchGridAsync = dlsym(__pyx_v_handle, ((char const *)"cuLaunchGridAsync"));

  /* "cuda/_cuda/ccuda.pyx":2268
 *     __cuLaunchGridAsync = dlfcn.dlsym(handle, 'cuLaunchGridAsync')
 *     global __cuParamSetTexRef
 *     __cuParamSetTexRef = dlfcn.dlsym(handle, 'cuParamSetTexRef')             # <<<<<<<<<<<<<<
 *     global __cuFuncSetSharedMemConfig
 *     __cuFuncSetSharedMemConfig = dlfcn.dlsym(handle, 'cuFuncSetSharedMemConfig')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuParamSetTexRef = dlsym(__pyx_v_handle, ((char const *)"cuParamSetTexRef"));

  /* "cuda/_cuda/ccuda.pyx":2270
 *     __cuParamSetTexRef = dlfcn.dlsym(handle, 'cuParamSetTexRef')
 *     global __cuFuncSetSharedMemConfig
 *     __cuFuncSetSharedMemConfig = dlfcn.dlsym(handle, 'cuFuncSetSharedMemConfig')             # <<<<<<<<<<<<<<
 *     global __cuGraphCreate
 *     __cuGraphCreate = dlfcn.dlsym(handle, 'cuGraphCreate')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuFuncSetSharedMemConfig = dlsym(__pyx_v_handle, ((char const *)"cuFuncSetSharedMemConfig"));

  /* "cuda/_cuda/ccuda.pyx":2272
 *     __cuFuncSetSharedMemConfig = dlfcn.dlsym(handle, 'cuFuncSetSharedMemConfig')
 *     global __cuGraphCreate
 *     __cuGraphCreate = dlfcn.dlsym(handle, 'cuGraphCreate')             # <<<<<<<<<<<<<<
 *     global __cuGraphAddKernelNode_v2
 *     __cuGraphAddKernelNode_v2 = dlfcn.dlsym(handle, 'cuGraphAddKernelNode_v2')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuGraphCreate = dlsym(__pyx_v_handle, ((char const *)"cuGraphCreate"));

  /* "cuda/_cuda/ccuda.pyx":2274
 *     __cuGraphCreate = dlfcn.dlsym(handle, 'cuGraphCreate')
 *     global __cuGraphAddKernelNode_v2
 *     __cuGraphAddKernelNode_v2 = dlfcn.dlsym(handle, 'cuGraphAddKernelNode_v2')             # <<<<<<<<<<<<<<
 *     global __cuGraphKernelNodeGetParams_v2
 *     __cuGraphKernelNodeGetParams_v2 = dlfcn.dlsym(handle, 'cuGraphKernelNodeGetParams_v2')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuGraphAddKernelNode_v2 = dlsym(__pyx_v_handle, ((char const *)"cuGraphAddKernelNode_v2"));

  /* "cuda/_cuda/ccuda.pyx":2276
 *     __cuGraphAddKernelNode_v2 = dlfcn.dlsym(handle, 'cuGraphAddKernelNode_v2')
 *     global __cuGraphKernelNodeGetParams_v2
 *     __cuGraphKernelNodeGetParams_v2 = dlfcn.dlsym(handle, 'cuGraphKernelNodeGetParams_v2')             # <<<<<<<<<<<<<<
 *     global __cuGraphKernelNodeSetParams_v2
 *     __cuGraphKernelNodeSetParams_v2 = dlfcn.dlsym(handle, 'cuGraphKernelNodeSetParams_v2')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuGraphKernelNodeGetParams_v2 = dlsym(__pyx_v_handle, ((char const *)"cuGraphKernelNodeGetParams_v2"));

  /* "cuda/_cuda/ccuda.pyx":2278
 *     __cuGraphKernelNodeGetParams_v2 = dlfcn.dlsym(handle, 'cuGraphKernelNodeGetParams_v2')
 *     global __cuGraphKernelNodeSetParams_v2
 *     __cuGraphKernelNodeSetParams_v2 = dlfcn.dlsym(handle, 'cuGraphKernelNodeSetParams_v2')             # <<<<<<<<<<<<<<
 *     global __cuGraphAddMemcpyNode
 *     __cuGraphAddMemcpyNode = dlfcn.dlsym(handle, 'cuGraphAddMemcpyNode')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuGraphKernelNodeSetParams_v2 = dlsym(__pyx_v_handle, ((char const *)"cuGraphKernelNodeSetParams_v2"));

  /* "cuda/_cuda/ccuda.pyx":2280
 *     __cuGraphKernelNodeSetParams_v2 = dlfcn.dlsym(handle, 'cuGraphKernelNodeSetParams_v2')
 *     global __cuGraphAddMemcpyNode
 *     __cuGraphAddMemcpyNode = dlfcn.dlsym(handle, 'cuGraphAddMemcpyNode')             # <<<<<<<<<<<<<<
 *     global __cuGraphMemcpyNodeGetParams
 *     __cuGraphMemcpyNodeGetParams = dlfcn.dlsym(handle, 'cuGraphMemcpyNodeGetParams')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuGraphAddMemcpyNode = dlsym(__pyx_v_handle, ((char const *)"cuGraphAddMemcpyNode"));

  /* "cuda/_cuda/ccuda.pyx":2282
 *     __cuGraphAddMemcpyNode = dlfcn.dlsym(handle, 'cuGraphAddMemcpyNode')
 *     global __cuGraphMemcpyNodeGetParams
 *     __cuGraphMemcpyNodeGetParams = dlfcn.dlsym(handle, 'cuGraphMemcpyNodeGetParams')             # <<<<<<<<<<<<<<
 *     global __cuGraphMemcpyNodeSetParams
 *     __cuGraphMemcpyNodeSetParams = dlfcn.dlsym(handle, 'cuGraphMemcpyNodeSetParams')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuGraphMemcpyNodeGetParams = dlsym(__pyx_v_handle, ((char const *)"cuGraphMemcpyNodeGetParams"));

  /* "cuda/_cuda/ccuda.pyx":2284
 *     __cuGraphMemcpyNodeGetParams = dlfcn.dlsym(handle, 'cuGraphMemcpyNodeGetParams')
 *     global __cuGraphMemcpyNodeSetParams
 *     __cuGraphMemcpyNodeSetParams = dlfcn.dlsym(handle, 'cuGraphMemcpyNodeSetParams')             # <<<<<<<<<<<<<<
 *     global __cuGraphAddMemsetNode
 *     __cuGraphAddMemsetNode = dlfcn.dlsym(handle, 'cuGraphAddMemsetNode')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuGraphMemcpyNodeSetParams = dlsym(__pyx_v_handle, ((char const *)"cuGraphMemcpyNodeSetParams"));

  /* "cuda/_cuda/ccuda.pyx":2286
 *     __cuGraphMemcpyNodeSetParams = dlfcn.dlsym(handle, 'cuGraphMemcpyNodeSetParams')
 *     global __cuGraphAddMemsetNode
 *     __cuGraphAddMemsetNode = dlfcn.dlsym(handle, 'cuGraphAddMemsetNode')             # <<<<<<<<<<<<<<
 *     global __cuGraphMemsetNodeGetParams
 *     __cuGraphMemsetNodeGetParams = dlfcn.dlsym(handle, 'cuGraphMemsetNodeGetParams')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuGraphAddMemsetNode = dlsym(__pyx_v_handle, ((char const *)"cuGraphAddMemsetNode"));

  /* "cuda/_cuda/ccuda.pyx":2288
 *     __cuGraphAddMemsetNode = dlfcn.dlsym(handle, 'cuGraphAddMemsetNode')
 *     global __cuGraphMemsetNodeGetParams
 *     __cuGraphMemsetNodeGetParams = dlfcn.dlsym(handle, 'cuGraphMemsetNodeGetParams')             # <<<<<<<<<<<<<<
 *     global __cuGraphMemsetNodeSetParams
 *     __cuGraphMemsetNodeSetParams = dlfcn.dlsym(handle, 'cuGraphMemsetNodeSetParams')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuGraphMemsetNodeGetParams = dlsym(__pyx_v_handle, ((char const *)"cuGraphMemsetNodeGetParams"));

  /* "cuda/_cuda/ccuda.pyx":2290
 *     __cuGraphMemsetNodeGetParams = dlfcn.dlsym(handle, 'cuGraphMemsetNodeGetParams')
 *     global __cuGraphMemsetNodeSetParams
 *     __cuGraphMemsetNodeSetParams = dlfcn.dlsym(handle, 'cuGraphMemsetNodeSetParams')             # <<<<<<<<<<<<<<
 *     global __cuGraphAddHostNode
 *     __cuGraphAddHostNode = dlfcn.dlsym(handle, 'cuGraphAddHostNode')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuGraphMemsetNodeSetParams = dlsym(__pyx_v_handle, ((char const *)"cuGraphMemsetNodeSetParams"));

  /* "cuda/_cuda/ccuda.pyx":2292
 *     __cuGraphMemsetNodeSetParams = dlfcn.dlsym(handle, 'cuGraphMemsetNodeSetParams')
 *     global __cuGraphAddHostNode
 *     __cuGraphAddHostNode = dlfcn.dlsym(handle, 'cuGraphAddHostNode')             # <<<<<<<<<<<<<<
 *     global __cuGraphHostNodeGetParams
 *     __cuGraphHostNodeGetParams = dlfcn.dlsym(handle, 'cuGraphHostNodeGetParams')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuGraphAddHostNode = dlsym(__pyx_v_handle, ((char const *)"cuGraphAddHostNode"));

  /* "cuda/_cuda/ccuda.pyx":2294
 *     __cuGraphAddHostNode = dlfcn.dlsym(handle, 'cuGraphAddHostNode')
 *     global __cuGraphHostNodeGetParams
 *     __cuGraphHostNodeGetParams = dlfcn.dlsym(handle, 'cuGraphHostNodeGetParams')             # <<<<<<<<<<<<<<
 *     global __cuGraphHostNodeSetParams
 *     __cuGraphHostNodeSetParams = dlfcn.dlsym(handle, 'cuGraphHostNodeSetParams')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuGraphHostNodeGetParams = dlsym(__pyx_v_handle, ((char const *)"cuGraphHostNodeGetParams"));

  /* "cuda/_cuda/ccuda.pyx":2296
 *     __cuGraphHostNodeGetParams = dlfcn.dlsym(handle, 'cuGraphHostNodeGetParams')
 *     global __cuGraphHostNodeSetParams
 *     __cuGraphHostNodeSetParams = dlfcn.dlsym(handle, 'cuGraphHostNodeSetParams')             # <<<<<<<<<<<<<<
 *     global __cuGraphAddChildGraphNode
 *     __cuGraphAddChildGraphNode = dlfcn.dlsym(handle, 'cuGraphAddChildGraphNode')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuGraphHostNodeSetParams = dlsym(__pyx_v_handle, ((char const *)"cuGraphHostNodeSetParams"));

  /* "cuda/_cuda/ccuda.pyx":2298
 *     __cuGraphHostNodeSetParams = dlfcn.dlsym(handle, 'cuGraphHostNodeSetParams')
 *     global __cuGraphAddChildGraphNode
 *     __cuGraphAddChildGraphNode = dlfcn.dlsym(handle, 'cuGraphAddChildGraphNode')             # <<<<<<<<<<<<<<
 *     global __cuGraphChildGraphNodeGetGraph
 *     __cuGraphChildGraphNodeGetGraph = dlfcn.dlsym(handle, 'cuGraphChildGraphNodeGetGraph')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuGraphAddChildGraphNode = dlsym(__pyx_v_handle, ((char const *)"cuGraphAddChildGraphNode"));

  /* "cuda/_cuda/ccuda.pyx":2300
 *     __cuGraphAddChildGraphNode = dlfcn.dlsym(handle, 'cuGraphAddChildGraphNode')
 *     global __cuGraphChildGraphNodeGetGraph
 *     __cuGraphChildGraphNodeGetGraph = dlfcn.dlsym(handle, 'cuGraphChildGraphNodeGetGraph')             # <<<<<<<<<<<<<<
 *     global __cuGraphAddEmptyNode
 *     __cuGraphAddEmptyNode = dlfcn.dlsym(handle, 'cuGraphAddEmptyNode')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuGraphChildGraphNodeGetGraph = dlsym(__pyx_v_handle, ((char const *)"cuGraphChildGraphNodeGetGraph"));

  /* "cuda/_cuda/ccuda.pyx":2302
 *     __cuGraphChildGraphNodeGetGraph = dlfcn.dlsym(handle, 'cuGraphChildGraphNodeGetGraph')
 *     global __cuGraphAddEmptyNode
 *     __cuGraphAddEmptyNode = dlfcn.dlsym(handle, 'cuGraphAddEmptyNode')             # <<<<<<<<<<<<<<
 *     global __cuGraphAddEventRecordNode
 *     __cuGraphAddEventRecordNode = dlfcn.dlsym(handle, 'cuGraphAddEventRecordNode')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuGraphAddEmptyNode = dlsym(__pyx_v_handle, ((char const *)"cuGraphAddEmptyNode"));

  /* "cuda/_cuda/ccuda.pyx":2304
 *     __cuGraphAddEmptyNode = dlfcn.dlsym(handle, 'cuGraphAddEmptyNode')
 *     global __cuGraphAddEventRecordNode
 *     __cuGraphAddEventRecordNode = dlfcn.dlsym(handle, 'cuGraphAddEventRecordNode')             # <<<<<<<<<<<<<<
 *     global __cuGraphEventRecordNodeGetEvent
 *     __cuGraphEventRecordNodeGetEvent = dlfcn.dlsym(handle, 'cuGraphEventRecordNodeGetEvent')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuGraphAddEventRecordNode = dlsym(__pyx_v_handle, ((char const *)"cuGraphAddEventRecordNode"));

  /* "cuda/_cuda/ccuda.pyx":2306
 *     __cuGraphAddEventRecordNode = dlfcn.dlsym(handle, 'cuGraphAddEventRecordNode')
 *     global __cuGraphEventRecordNodeGetEvent
 *     __cuGraphEventRecordNodeGetEvent = dlfcn.dlsym(handle, 'cuGraphEventRecordNodeGetEvent')             # <<<<<<<<<<<<<<
 *     global __cuGraphEventRecordNodeSetEvent
 *     __cuGraphEventRecordNodeSetEvent = dlfcn.dlsym(handle, 'cuGraphEventRecordNodeSetEvent')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuGraphEventRecordNodeGetEvent = dlsym(__pyx_v_handle, ((char const *)"cuGraphEventRecordNodeGetEvent"));

  /* "cuda/_cuda/ccuda.pyx":2308
 *     __cuGraphEventRecordNodeGetEvent = dlfcn.dlsym(handle, 'cuGraphEventRecordNodeGetEvent')
 *     global __cuGraphEventRecordNodeSetEvent
 *     __cuGraphEventRecordNodeSetEvent = dlfcn.dlsym(handle, 'cuGraphEventRecordNodeSetEvent')             # <<<<<<<<<<<<<<
 *     global __cuGraphAddEventWaitNode
 *     __cuGraphAddEventWaitNode = dlfcn.dlsym(handle, 'cuGraphAddEventWaitNode')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuGraphEventRecordNodeSetEvent = dlsym(__pyx_v_handle, ((char const *)"cuGraphEventRecordNodeSetEvent"));

  /* "cuda/_cuda/ccuda.pyx":2310
 *     __cuGraphEventRecordNodeSetEvent = dlfcn.dlsym(handle, 'cuGraphEventRecordNodeSetEvent')
 *     global __cuGraphAddEventWaitNode
 *     __cuGraphAddEventWaitNode = dlfcn.dlsym(handle, 'cuGraphAddEventWaitNode')             # <<<<<<<<<<<<<<
 *     global __cuGraphEventWaitNodeGetEvent
 *     __cuGraphEventWaitNodeGetEvent = dlfcn.dlsym(handle, 'cuGraphEventWaitNodeGetEvent')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuGraphAddEventWaitNode = dlsym(__pyx_v_handle, ((char const *)"cuGraphAddEventWaitNode"));

  /* "cuda/_cuda/ccuda.pyx":2312
 *     __cuGraphAddEventWaitNode = dlfcn.dlsym(handle, 'cuGraphAddEventWaitNode')
 *     global __cuGraphEventWaitNodeGetEvent
 *     __cuGraphEventWaitNodeGetEvent = dlfcn.dlsym(handle, 'cuGraphEventWaitNodeGetEvent')             # <<<<<<<<<<<<<<
 *     global __cuGraphEventWaitNodeSetEvent
 *     __cuGraphEventWaitNodeSetEvent = dlfcn.dlsym(handle, 'cuGraphEventWaitNodeSetEvent')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuGraphEventWaitNodeGetEvent = dlsym(__pyx_v_handle, ((char const *)"cuGraphEventWaitNodeGetEvent"));

  /* "cuda/_cuda/ccuda.pyx":2314
 *     __cuGraphEventWaitNodeGetEvent = dlfcn.dlsym(handle, 'cuGraphEventWaitNodeGetEvent')
 *     global __cuGraphEventWaitNodeSetEvent
 *     __cuGraphEventWaitNodeSetEvent = dlfcn.dlsym(handle, 'cuGraphEventWaitNodeSetEvent')             # <<<<<<<<<<<<<<
 *     global __cuGraphAddExternalSemaphoresSignalNode
 *     __cuGraphAddExternalSemaphoresSignalNode = dlfcn.dlsym(handle, 'cuGraphAddExternalSemaphoresSignalNode')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuGraphEventWaitNodeSetEvent = dlsym(__pyx_v_handle, ((char const *)"cuGraphEventWaitNodeSetEvent"));

  /* "cuda/_cuda/ccuda.pyx":2316
 *     __cuGraphEventWaitNodeSetEvent = dlfcn.dlsym(handle, 'cuGraphEventWaitNodeSetEvent')
 *     global __cuGraphAddExternalSemaphoresSignalNode
 *     __cuGraphAddExternalSemaphoresSignalNode = dlfcn.dlsym(handle, 'cuGraphAddExternalSemaphoresSignalNode')             # <<<<<<<<<<<<<<
 *     global __cuGraphExternalSemaphoresSignalNodeGetParams
 *     __cuGraphExternalSemaphoresSignalNodeGetParams = dlfcn.dlsym(handle, 'cuGraphExternalSemaphoresSignalNodeGetParams')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuGraphAddExternalSemaphoresSignalNode = dlsym(__pyx_v_handle, ((char const *)"cuGraphAddExternalSemaphoresSignalNode"));

  /* "cuda/_cuda/ccuda.pyx":2318
 *     __cuGraphAddExternalSemaphoresSignalNode = dlfcn.dlsym(handle, 'cuGraphAddExternalSemaphoresSignalNode')
 *     global __cuGraphExternalSemaphoresSignalNodeGetParams
 *     __cuGraphExternalSemaphoresSignalNodeGetParams = dlfcn.dlsym(handle, 'cuGraphExternalSemaphoresSignalNodeGetParams')             # <<<<<<<<<<<<<<
 *     global __cuGraphExternalSemaphoresSignalNodeSetParams
 *     __cuGraphExternalSemaphoresSignalNodeSetParams = dlfcn.dlsym(handle, 'cuGraphExternalSemaphoresSignalNodeSetParams')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuGraphExternalSemaphoresSignalNodeGetParams = dlsym(__pyx_v_handle, ((char const *)"cuGraphExternalSemaphoresSignalNodeGetParams"));

  /* "cuda/_cuda/ccuda.pyx":2320
 *     __cuGraphExternalSemaphoresSignalNodeGetParams = dlfcn.dlsym(handle, 'cuGraphExternalSemaphoresSignalNodeGetParams')
 *     global __cuGraphExternalSemaphoresSignalNodeSetParams
 *     __cuGraphExternalSemaphoresSignalNodeSetParams = dlfcn.dlsym(handle, 'cuGraphExternalSemaphoresSignalNodeSetParams')             # <<<<<<<<<<<<<<
 *     global __cuGraphAddExternalSemaphoresWaitNode
 *     __cuGraphAddExternalSemaphoresWaitNode = dlfcn.dlsym(handle, 'cuGraphAddExternalSemaphoresWaitNode')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuGraphExternalSemaphoresSignalNodeSetParams = dlsym(__pyx_v_handle, ((char const *)"cuGraphExternalSemaphoresSignalNodeSetParams"));

  /* "cuda/_cuda/ccuda.pyx":2322
 *     __cuGraphExternalSemaphoresSignalNodeSetParams = dlfcn.dlsym(handle, 'cuGraphExternalSemaphoresSignalNodeSetParams')
 *     global __cuGraphAddExternalSemaphoresWaitNode
 *     __cuGraphAddExternalSemaphoresWaitNode = dlfcn.dlsym(handle, 'cuGraphAddExternalSemaphoresWaitNode')             # <<<<<<<<<<<<<<
 *     global __cuGraphExternalSemaphoresWaitNodeGetParams
 *     __cuGraphExternalSemaphoresWaitNodeGetParams = dlfcn.dlsym(handle, 'cuGraphExternalSemaphoresWaitNodeGetParams')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuGraphAddExternalSemaphoresWaitNode = dlsym(__pyx_v_handle, ((char const *)"cuGraphAddExternalSemaphoresWaitNode"));

  /* "cuda/_cuda/ccuda.pyx":2324
 *     __cuGraphAddExternalSemaphoresWaitNode = dlfcn.dlsym(handle, 'cuGraphAddExternalSemaphoresWaitNode')
 *     global __cuGraphExternalSemaphoresWaitNodeGetParams
 *     __cuGraphExternalSemaphoresWaitNodeGetParams = dlfcn.dlsym(handle, 'cuGraphExternalSemaphoresWaitNodeGetParams')             # <<<<<<<<<<<<<<
 *     global __cuGraphExternalSemaphoresWaitNodeSetParams
 *     __cuGraphExternalSemaphoresWaitNodeSetParams = dlfcn.dlsym(handle, 'cuGraphExternalSemaphoresWaitNodeSetParams')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuGraphExternalSemaphoresWaitNodeGetParams = dlsym(__pyx_v_handle, ((char const *)"cuGraphExternalSemaphoresWaitNodeGetParams"));

  /* "cuda/_cuda/ccuda.pyx":2326
 *     __cuGraphExternalSemaphoresWaitNodeGetParams = dlfcn.dlsym(handle, 'cuGraphExternalSemaphoresWaitNodeGetParams')
 *     global __cuGraphExternalSemaphoresWaitNodeSetParams
 *     __cuGraphExternalSemaphoresWaitNodeSetParams = dlfcn.dlsym(handle, 'cuGraphExternalSemaphoresWaitNodeSetParams')             # <<<<<<<<<<<<<<
 *     global __cuGraphAddBatchMemOpNode
 *     __cuGraphAddBatchMemOpNode = dlfcn.dlsym(handle, 'cuGraphAddBatchMemOpNode')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuGraphExternalSemaphoresWaitNodeSetParams = dlsym(__pyx_v_handle, ((char const *)"cuGraphExternalSemaphoresWaitNodeSetParams"));

  /* "cuda/_cuda/ccuda.pyx":2328
 *     __cuGraphExternalSemaphoresWaitNodeSetParams = dlfcn.dlsym(handle, 'cuGraphExternalSemaphoresWaitNodeSetParams')
 *     global __cuGraphAddBatchMemOpNode
 *     __cuGraphAddBatchMemOpNode = dlfcn.dlsym(handle, 'cuGraphAddBatchMemOpNode')             # <<<<<<<<<<<<<<
 *     global __cuGraphBatchMemOpNodeGetParams
 *     __cuGraphBatchMemOpNodeGetParams = dlfcn.dlsym(handle, 'cuGraphBatchMemOpNodeGetParams')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuGraphAddBatchMemOpNode = dlsym(__pyx_v_handle, ((char const *)"cuGraphAddBatchMemOpNode"));

  /* "cuda/_cuda/ccuda.pyx":2330
 *     __cuGraphAddBatchMemOpNode = dlfcn.dlsym(handle, 'cuGraphAddBatchMemOpNode')
 *     global __cuGraphBatchMemOpNodeGetParams
 *     __cuGraphBatchMemOpNodeGetParams = dlfcn.dlsym(handle, 'cuGraphBatchMemOpNodeGetParams')             # <<<<<<<<<<<<<<
 *     global __cuGraphBatchMemOpNodeSetParams
 *     __cuGraphBatchMemOpNodeSetParams = dlfcn.dlsym(handle, 'cuGraphBatchMemOpNodeSetParams')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuGraphBatchMemOpNodeGetParams = dlsym(__pyx_v_handle, ((char const *)"cuGraphBatchMemOpNodeGetParams"));

  /* "cuda/_cuda/ccuda.pyx":2332
 *     __cuGraphBatchMemOpNodeGetParams = dlfcn.dlsym(handle, 'cuGraphBatchMemOpNodeGetParams')
 *     global __cuGraphBatchMemOpNodeSetParams
 *     __cuGraphBatchMemOpNodeSetParams = dlfcn.dlsym(handle, 'cuGraphBatchMemOpNodeSetParams')             # <<<<<<<<<<<<<<
 *     global __cuGraphExecBatchMemOpNodeSetParams
 *     __cuGraphExecBatchMemOpNodeSetParams = dlfcn.dlsym(handle, 'cuGraphExecBatchMemOpNodeSetParams')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuGraphBatchMemOpNodeSetParams = dlsym(__pyx_v_handle, ((char const *)"cuGraphBatchMemOpNodeSetParams"));

  /* "cuda/_cuda/ccuda.pyx":2334
 *     __cuGraphBatchMemOpNodeSetParams = dlfcn.dlsym(handle, 'cuGraphBatchMemOpNodeSetParams')
 *     global __cuGraphExecBatchMemOpNodeSetParams
 *     __cuGraphExecBatchMemOpNodeSetParams = dlfcn.dlsym(handle, 'cuGraphExecBatchMemOpNodeSetParams')             # <<<<<<<<<<<<<<
 *     global __cuGraphAddMemAllocNode
 *     __cuGraphAddMemAllocNode = dlfcn.dlsym(handle, 'cuGraphAddMemAllocNode')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuGraphExecBatchMemOpNodeSetParams = dlsym(__pyx_v_handle, ((char const *)"cuGraphExecBatchMemOpNodeSetParams"));

  /* "cuda/_cuda/ccuda.pyx":2336
 *     __cuGraphExecBatchMemOpNodeSetParams = dlfcn.dlsym(handle, 'cuGraphExecBatchMemOpNodeSetParams')
 *     global __cuGraphAddMemAllocNode
 *     __cuGraphAddMemAllocNode = dlfcn.dlsym(handle, 'cuGraphAddMemAllocNode')             # <<<<<<<<<<<<<<
 *     global __cuGraphMemAllocNodeGetParams
 *     __cuGraphMemAllocNodeGetParams = dlfcn.dlsym(handle, 'cuGraphMemAllocNodeGetParams')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuGraphAddMemAllocNode = dlsym(__pyx_v_handle, ((char const *)"cuGraphAddMemAllocNode"));

  /* "cuda/_cuda/ccuda.pyx":2338
 *     __cuGraphAddMemAllocNode = dlfcn.dlsym(handle, 'cuGraphAddMemAllocNode')
 *     global __cuGraphMemAllocNodeGetParams
 *     __cuGraphMemAllocNodeGetParams = dlfcn.dlsym(handle, 'cuGraphMemAllocNodeGetParams')             # <<<<<<<<<<<<<<
 *     global __cuGraphAddMemFreeNode
 *     __cuGraphAddMemFreeNode = dlfcn.dlsym(handle, 'cuGraphAddMemFreeNode')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuGraphMemAllocNodeGetParams = dlsym(__pyx_v_handle, ((char const *)"cuGraphMemAllocNodeGetParams"));

  /* "cuda/_cuda/ccuda.pyx":2340
 *     __cuGraphMemAllocNodeGetParams = dlfcn.dlsym(handle, 'cuGraphMemAllocNodeGetParams')
 *     global __cuGraphAddMemFreeNode
 *     __cuGraphAddMemFreeNode = dlfcn.dlsym(handle, 'cuGraphAddMemFreeNode')             # <<<<<<<<<<<<<<
 *     global __cuGraphMemFreeNodeGetParams
 *     __cuGraphMemFreeNodeGetParams = dlfcn.dlsym(handle, 'cuGraphMemFreeNodeGetParams')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuGraphAddMemFreeNode = dlsym(__pyx_v_handle, ((char const *)"cuGraphAddMemFreeNode"));

  /* "cuda/_cuda/ccuda.pyx":2342
 *     __cuGraphAddMemFreeNode = dlfcn.dlsym(handle, 'cuGraphAddMemFreeNode')
 *     global __cuGraphMemFreeNodeGetParams
 *     __cuGraphMemFreeNodeGetParams = dlfcn.dlsym(handle, 'cuGraphMemFreeNodeGetParams')             # <<<<<<<<<<<<<<
 *     global __cuDeviceGraphMemTrim
 *     __cuDeviceGraphMemTrim = dlfcn.dlsym(handle, 'cuDeviceGraphMemTrim')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuGraphMemFreeNodeGetParams = dlsym(__pyx_v_handle, ((char const *)"cuGraphMemFreeNodeGetParams"));

  /* "cuda/_cuda/ccuda.pyx":2344
 *     __cuGraphMemFreeNodeGetParams = dlfcn.dlsym(handle, 'cuGraphMemFreeNodeGetParams')
 *     global __cuDeviceGraphMemTrim
 *     __cuDeviceGraphMemTrim = dlfcn.dlsym(handle, 'cuDeviceGraphMemTrim')             # <<<<<<<<<<<<<<
 *     global __cuDeviceGetGraphMemAttribute
 *     __cuDeviceGetGraphMemAttribute = dlfcn.dlsym(handle, 'cuDeviceGetGraphMemAttribute')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuDeviceGraphMemTrim = dlsym(__pyx_v_handle, ((char const *)"cuDeviceGraphMemTrim"));

  /* "cuda/_cuda/ccuda.pyx":2346
 *     __cuDeviceGraphMemTrim = dlfcn.dlsym(handle, 'cuDeviceGraphMemTrim')
 *     global __cuDeviceGetGraphMemAttribute
 *     __cuDeviceGetGraphMemAttribute = dlfcn.dlsym(handle, 'cuDeviceGetGraphMemAttribute')             # <<<<<<<<<<<<<<
 *     global __cuDeviceSetGraphMemAttribute
 *     __cuDeviceSetGraphMemAttribute = dlfcn.dlsym(handle, 'cuDeviceSetGraphMemAttribute')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuDeviceGetGraphMemAttribute = dlsym(__pyx_v_handle, ((char const *)"cuDeviceGetGraphMemAttribute"));

  /* "cuda/_cuda/ccuda.pyx":2348
 *     __cuDeviceGetGraphMemAttribute = dlfcn.dlsym(handle, 'cuDeviceGetGraphMemAttribute')
 *     global __cuDeviceSetGraphMemAttribute
 *     __cuDeviceSetGraphMemAttribute = dlfcn.dlsym(handle, 'cuDeviceSetGraphMemAttribute')             # <<<<<<<<<<<<<<
 *     global __cuGraphClone
 *     __cuGraphClone = dlfcn.dlsym(handle, 'cuGraphClone')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuDeviceSetGraphMemAttribute = dlsym(__pyx_v_handle, ((char const *)"cuDeviceSetGraphMemAttribute"));

  /* "cuda/_cuda/ccuda.pyx":2350
 *     __cuDeviceSetGraphMemAttribute = dlfcn.dlsym(handle, 'cuDeviceSetGraphMemAttribute')
 *     global __cuGraphClone
 *     __cuGraphClone = dlfcn.dlsym(handle, 'cuGraphClone')             # <<<<<<<<<<<<<<
 *     global __cuGraphNodeFindInClone
 *     __cuGraphNodeFindInClone = dlfcn.dlsym(handle, 'cuGraphNodeFindInClone')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuGraphClone = dlsym(__pyx_v_handle, ((char const *)"cuGraphClone"));

  /* "cuda/_cuda/ccuda.pyx":2352
 *     __cuGraphClone = dlfcn.dlsym(handle, 'cuGraphClone')
 *     global __cuGraphNodeFindInClone
 *     __cuGraphNodeFindInClone = dlfcn.dlsym(handle, 'cuGraphNodeFindInClone')             # <<<<<<<<<<<<<<
 *     global __cuGraphNodeGetType
 *     __cuGraphNodeGetType = dlfcn.dlsym(handle, 'cuGraphNodeGetType')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuGraphNodeFindInClone = dlsym(__pyx_v_handle, ((char const *)"cuGraphNodeFindInClone"));

  /* "cuda/_cuda/ccuda.pyx":2354
 *     __cuGraphNodeFindInClone = dlfcn.dlsym(handle, 'cuGraphNodeFindInClone')
 *     global __cuGraphNodeGetType
 *     __cuGraphNodeGetType = dlfcn.dlsym(handle, 'cuGraphNodeGetType')             # <<<<<<<<<<<<<<
 *     global __cuGraphGetNodes
 *     __cuGraphGetNodes = dlfcn.dlsym(handle, 'cuGraphGetNodes')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuGraphNodeGetType = dlsym(__pyx_v_handle, ((char const *)"cuGraphNodeGetType"));

  /* "cuda/_cuda/ccuda.pyx":2356
 *     __cuGraphNodeGetType = dlfcn.dlsym(handle, 'cuGraphNodeGetType')
 *     global __cuGraphGetNodes
 *     __cuGraphGetNodes = dlfcn.dlsym(handle, 'cuGraphGetNodes')             # <<<<<<<<<<<<<<
 *     global __cuGraphGetRootNodes
 *     __cuGraphGetRootNodes = dlfcn.dlsym(handle, 'cuGraphGetRootNodes')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuGraphGetNodes = dlsym(__pyx_v_handle, ((char const *)"cuGraphGetNodes"));

  /* "cuda/_cuda/ccuda.pyx":2358
 *     __cuGraphGetNodes = dlfcn.dlsym(handle, 'cuGraphGetNodes')
 *     global __cuGraphGetRootNodes
 *     __cuGraphGetRootNodes = dlfcn.dlsym(handle, 'cuGraphGetRootNodes')             # <<<<<<<<<<<<<<
 *     global __cuGraphGetEdges
 *     __cuGraphGetEdges = dlfcn.dlsym(handle, 'cuGraphGetEdges')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuGraphGetRootNodes = dlsym(__pyx_v_handle, ((char const *)"cuGraphGetRootNodes"));

  /* "cuda/_cuda/ccuda.pyx":2360
 *     __cuGraphGetRootNodes = dlfcn.dlsym(handle, 'cuGraphGetRootNodes')
 *     global __cuGraphGetEdges
 *     __cuGraphGetEdges = dlfcn.dlsym(handle, 'cuGraphGetEdges')             # <<<<<<<<<<<<<<
 *     global __cuGraphGetEdges_v2
 *     __cuGraphGetEdges_v2 = dlfcn.dlsym(handle, 'cuGraphGetEdges_v2')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuGraphGetEdges = dlsym(__pyx_v_handle, ((char const *)"cuGraphGetEdges"));

  /* "cuda/_cuda/ccuda.pyx":2362
 *     __cuGraphGetEdges = dlfcn.dlsym(handle, 'cuGraphGetEdges')
 *     global __cuGraphGetEdges_v2
 *     __cuGraphGetEdges_v2 = dlfcn.dlsym(handle, 'cuGraphGetEdges_v2')             # <<<<<<<<<<<<<<
 *     global __cuGraphNodeGetDependencies
 *     __cuGraphNodeGetDependencies = dlfcn.dlsym(handle, 'cuGraphNodeGetDependencies')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuGraphGetEdges_v2 = dlsym(__pyx_v_handle, ((char const *)"cuGraphGetEdges_v2"));

  /* "cuda/_cuda/ccuda.pyx":2364
 *     __cuGraphGetEdges_v2 = dlfcn.dlsym(handle, 'cuGraphGetEdges_v2')
 *     global __cuGraphNodeGetDependencies
 *     __cuGraphNodeGetDependencies = dlfcn.dlsym(handle, 'cuGraphNodeGetDependencies')             # <<<<<<<<<<<<<<
 *     global __cuGraphNodeGetDependencies_v2
 *     __cuGraphNodeGetDependencies_v2 = dlfcn.dlsym(handle, 'cuGraphNodeGetDependencies_v2')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuGraphNodeGetDependencies = dlsym(__pyx_v_handle, ((char const *)"cuGraphNodeGetDependencies"));

  /* "cuda/_cuda/ccuda.pyx":2366
 *     __cuGraphNodeGetDependencies = dlfcn.dlsym(handle, 'cuGraphNodeGetDependencies')
 *     global __cuGraphNodeGetDependencies_v2
 *     __cuGraphNodeGetDependencies_v2 = dlfcn.dlsym(handle, 'cuGraphNodeGetDependencies_v2')             # <<<<<<<<<<<<<<
 *     global __cuGraphNodeGetDependentNodes
 *     __cuGraphNodeGetDependentNodes = dlfcn.dlsym(handle, 'cuGraphNodeGetDependentNodes')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuGraphNodeGetDependencies_v2 = dlsym(__pyx_v_handle, ((char const *)"cuGraphNodeGetDependencies_v2"));

  /* "cuda/_cuda/ccuda.pyx":2368
 *     __cuGraphNodeGetDependencies_v2 = dlfcn.dlsym(handle, 'cuGraphNodeGetDependencies_v2')
 *     global __cuGraphNodeGetDependentNodes
 *     __cuGraphNodeGetDependentNodes = dlfcn.dlsym(handle, 'cuGraphNodeGetDependentNodes')             # <<<<<<<<<<<<<<
 *     global __cuGraphNodeGetDependentNodes_v2
 *     __cuGraphNodeGetDependentNodes_v2 = dlfcn.dlsym(handle, 'cuGraphNodeGetDependentNodes_v2')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuGraphNodeGetDependentNodes = dlsym(__pyx_v_handle, ((char const *)"cuGraphNodeGetDependentNodes"));

  /* "cuda/_cuda/ccuda.pyx":2370
 *     __cuGraphNodeGetDependentNodes = dlfcn.dlsym(handle, 'cuGraphNodeGetDependentNodes')
 *     global __cuGraphNodeGetDependentNodes_v2
 *     __cuGraphNodeGetDependentNodes_v2 = dlfcn.dlsym(handle, 'cuGraphNodeGetDependentNodes_v2')             # <<<<<<<<<<<<<<
 *     global __cuGraphAddDependencies
 *     __cuGraphAddDependencies = dlfcn.dlsym(handle, 'cuGraphAddDependencies')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuGraphNodeGetDependentNodes_v2 = dlsym(__pyx_v_handle, ((char const *)"cuGraphNodeGetDependentNodes_v2"));

  /* "cuda/_cuda/ccuda.pyx":2372
 *     __cuGraphNodeGetDependentNodes_v2 = dlfcn.dlsym(handle, 'cuGraphNodeGetDependentNodes_v2')
 *     global __cuGraphAddDependencies
 *     __cuGraphAddDependencies = dlfcn.dlsym(handle, 'cuGraphAddDependencies')             # <<<<<<<<<<<<<<
 *     global __cuGraphAddDependencies_v2
 *     __cuGraphAddDependencies_v2 = dlfcn.dlsym(handle, 'cuGraphAddDependencies_v2')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuGraphAddDependencies = dlsym(__pyx_v_handle, ((char const *)"cuGraphAddDependencies"));

  /* "cuda/_cuda/ccuda.pyx":2374
 *     __cuGraphAddDependencies = dlfcn.dlsym(handle, 'cuGraphAddDependencies')
 *     global __cuGraphAddDependencies_v2
 *     __cuGraphAddDependencies_v2 = dlfcn.dlsym(handle, 'cuGraphAddDependencies_v2')             # <<<<<<<<<<<<<<
 *     global __cuGraphRemoveDependencies
 *     __cuGraphRemoveDependencies = dlfcn.dlsym(handle, 'cuGraphRemoveDependencies')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuGraphAddDependencies_v2 = dlsym(__pyx_v_handle, ((char const *)"cuGraphAddDependencies_v2"));

  /* "cuda/_cuda/ccuda.pyx":2376
 *     __cuGraphAddDependencies_v2 = dlfcn.dlsym(handle, 'cuGraphAddDependencies_v2')
 *     global __cuGraphRemoveDependencies
 *     __cuGraphRemoveDependencies = dlfcn.dlsym(handle, 'cuGraphRemoveDependencies')             # <<<<<<<<<<<<<<
 *     global __cuGraphRemoveDependencies_v2
 *     __cuGraphRemoveDependencies_v2 = dlfcn.dlsym(handle, 'cuGraphRemoveDependencies_v2')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuGraphRemoveDependencies = dlsym(__pyx_v_handle, ((char const *)"cuGraphRemoveDependencies"));

  /* "cuda/_cuda/ccuda.pyx":2378
 *     __cuGraphRemoveDependencies = dlfcn.dlsym(handle, 'cuGraphRemoveDependencies')
 *     global __cuGraphRemoveDependencies_v2
 *     __cuGraphRemoveDependencies_v2 = dlfcn.dlsym(handle, 'cuGraphRemoveDependencies_v2')             # <<<<<<<<<<<<<<
 *     global __cuGraphDestroyNode
 *     __cuGraphDestroyNode = dlfcn.dlsym(handle, 'cuGraphDestroyNode')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuGraphRemoveDependencies_v2 = dlsym(__pyx_v_handle, ((char const *)"cuGraphRemoveDependencies_v2"));

  /* "cuda/_cuda/ccuda.pyx":2380
 *     __cuGraphRemoveDependencies_v2 = dlfcn.dlsym(handle, 'cuGraphRemoveDependencies_v2')
 *     global __cuGraphDestroyNode
 *     __cuGraphDestroyNode = dlfcn.dlsym(handle, 'cuGraphDestroyNode')             # <<<<<<<<<<<<<<
 *     global __cuGraphInstantiateWithFlags
 *     __cuGraphInstantiateWithFlags = dlfcn.dlsym(handle, 'cuGraphInstantiateWithFlags')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuGraphDestroyNode = dlsym(__pyx_v_handle, ((char const *)"cuGraphDestroyNode"));

  /* "cuda/_cuda/ccuda.pyx":2382
 *     __cuGraphDestroyNode = dlfcn.dlsym(handle, 'cuGraphDestroyNode')
 *     global __cuGraphInstantiateWithFlags
 *     __cuGraphInstantiateWithFlags = dlfcn.dlsym(handle, 'cuGraphInstantiateWithFlags')             # <<<<<<<<<<<<<<
 *     global __cuGraphExecGetFlags
 *     __cuGraphExecGetFlags = dlfcn.dlsym(handle, 'cuGraphExecGetFlags')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuGraphInstantiateWithFlags = dlsym(__pyx_v_handle, ((char const *)"cuGraphInstantiateWithFlags"));

  /* "cuda/_cuda/ccuda.pyx":2384
 *     __cuGraphInstantiateWithFlags = dlfcn.dlsym(handle, 'cuGraphInstantiateWithFlags')
 *     global __cuGraphExecGetFlags
 *     __cuGraphExecGetFlags = dlfcn.dlsym(handle, 'cuGraphExecGetFlags')             # <<<<<<<<<<<<<<
 *     global __cuGraphExecKernelNodeSetParams_v2
 *     __cuGraphExecKernelNodeSetParams_v2 = dlfcn.dlsym(handle, 'cuGraphExecKernelNodeSetParams_v2')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuGraphExecGetFlags = dlsym(__pyx_v_handle, ((char const *)"cuGraphExecGetFlags"));

  /* "cuda/_cuda/ccuda.pyx":2386
 *     __cuGraphExecGetFlags = dlfcn.dlsym(handle, 'cuGraphExecGetFlags')
 *     global __cuGraphExecKernelNodeSetParams_v2
 *     __cuGraphExecKernelNodeSetParams_v2 = dlfcn.dlsym(handle, 'cuGraphExecKernelNodeSetParams_v2')             # <<<<<<<<<<<<<<
 *     global __cuGraphExecMemcpyNodeSetParams
 *     __cuGraphExecMemcpyNodeSetParams = dlfcn.dlsym(handle, 'cuGraphExecMemcpyNodeSetParams')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuGraphExecKernelNodeSetParams_v2 = dlsym(__pyx_v_handle, ((char const *)"cuGraphExecKernelNodeSetParams_v2"));

  /* "cuda/_cuda/ccuda.pyx":2388
 *     __cuGraphExecKernelNodeSetParams_v2 = dlfcn.dlsym(handle, 'cuGraphExecKernelNodeSetParams_v2')
 *     global __cuGraphExecMemcpyNodeSetParams
 *     __cuGraphExecMemcpyNodeSetParams = dlfcn.dlsym(handle, 'cuGraphExecMemcpyNodeSetParams')             # <<<<<<<<<<<<<<
 *     global __cuGraphExecMemsetNodeSetParams
 *     __cuGraphExecMemsetNodeSetParams = dlfcn.dlsym(handle, 'cuGraphExecMemsetNodeSetParams')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuGraphExecMemcpyNodeSetParams = dlsym(__pyx_v_handle, ((char const *)"cuGraphExecMemcpyNodeSetParams"));

  /* "cuda/_cuda/ccuda.pyx":2390
 *     __cuGraphExecMemcpyNodeSetParams = dlfcn.dlsym(handle, 'cuGraphExecMemcpyNodeSetParams')
 *     global __cuGraphExecMemsetNodeSetParams
 *     __cuGraphExecMemsetNodeSetParams = dlfcn.dlsym(handle, 'cuGraphExecMemsetNodeSetParams')             # <<<<<<<<<<<<<<
 *     global __cuGraphExecHostNodeSetParams
 *     __cuGraphExecHostNodeSetParams = dlfcn.dlsym(handle, 'cuGraphExecHostNodeSetParams')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuGraphExecMemsetNodeSetParams = dlsym(__pyx_v_handle, ((char const *)"cuGraphExecMemsetNodeSetParams"));

  /* "cuda/_cuda/ccuda.pyx":2392
 *     __cuGraphExecMemsetNodeSetParams = dlfcn.dlsym(handle, 'cuGraphExecMemsetNodeSetParams')
 *     global __cuGraphExecHostNodeSetParams
 *     __cuGraphExecHostNodeSetParams = dlfcn.dlsym(handle, 'cuGraphExecHostNodeSetParams')             # <<<<<<<<<<<<<<
 *     global __cuGraphExecChildGraphNodeSetParams
 *     __cuGraphExecChildGraphNodeSetParams = dlfcn.dlsym(handle, 'cuGraphExecChildGraphNodeSetParams')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuGraphExecHostNodeSetParams = dlsym(__pyx_v_handle, ((char const *)"cuGraphExecHostNodeSetParams"));

  /* "cuda/_cuda/ccuda.pyx":2394
 *     __cuGraphExecHostNodeSetParams = dlfcn.dlsym(handle, 'cuGraphExecHostNodeSetParams')
 *     global __cuGraphExecChildGraphNodeSetParams
 *     __cuGraphExecChildGraphNodeSetParams = dlfcn.dlsym(handle, 'cuGraphExecChildGraphNodeSetParams')             # <<<<<<<<<<<<<<
 *     global __cuGraphExecEventRecordNodeSetEvent
 *     __cuGraphExecEventRecordNodeSetEvent = dlfcn.dlsym(handle, 'cuGraphExecEventRecordNodeSetEvent')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuGraphExecChildGraphNodeSetParams = dlsym(__pyx_v_handle, ((char const *)"cuGraphExecChildGraphNodeSetParams"));

  /* "cuda/_cuda/ccuda.pyx":2396
 *     __cuGraphExecChildGraphNodeSetParams = dlfcn.dlsym(handle, 'cuGraphExecChildGraphNodeSetParams')
 *     global __cuGraphExecEventRecordNodeSetEvent
 *     __cuGraphExecEventRecordNodeSetEvent = dlfcn.dlsym(handle, 'cuGraphExecEventRecordNodeSetEvent')             # <<<<<<<<<<<<<<
 *     global __cuGraphExecEventWaitNodeSetEvent
 *     __cuGraphExecEventWaitNodeSetEvent = dlfcn.dlsym(handle, 'cuGraphExecEventWaitNodeSetEvent')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuGraphExecEventRecordNodeSetEvent = dlsym(__pyx_v_handle, ((char const *)"cuGraphExecEventRecordNodeSetEvent"));

  /* "cuda/_cuda/ccuda.pyx":2398
 *     __cuGraphExecEventRecordNodeSetEvent = dlfcn.dlsym(handle, 'cuGraphExecEventRecordNodeSetEvent')
 *     global __cuGraphExecEventWaitNodeSetEvent
 *     __cuGraphExecEventWaitNodeSetEvent = dlfcn.dlsym(handle, 'cuGraphExecEventWaitNodeSetEvent')             # <<<<<<<<<<<<<<
 *     global __cuGraphExecExternalSemaphoresSignalNodeSetParams
 *     __cuGraphExecExternalSemaphoresSignalNodeSetParams = dlfcn.dlsym(handle, 'cuGraphExecExternalSemaphoresSignalNodeSetParams')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuGraphExecEventWaitNodeSetEvent = dlsym(__pyx_v_handle, ((char const *)"cuGraphExecEventWaitNodeSetEvent"));

  /* "cuda/_cuda/ccuda.pyx":2400
 *     __cuGraphExecEventWaitNodeSetEvent = dlfcn.dlsym(handle, 'cuGraphExecEventWaitNodeSetEvent')
 *     global __cuGraphExecExternalSemaphoresSignalNodeSetParams
 *     __cuGraphExecExternalSemaphoresSignalNodeSetParams = dlfcn.dlsym(handle, 'cuGraphExecExternalSemaphoresSignalNodeSetParams')             # <<<<<<<<<<<<<<
 *     global __cuGraphExecExternalSemaphoresWaitNodeSetParams
 *     __cuGraphExecExternalSemaphoresWaitNodeSetParams = dlfcn.dlsym(handle, 'cuGraphExecExternalSemaphoresWaitNodeSetParams')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuGraphExecExternalSemaphoresSignalNodeSetParams = dlsym(__pyx_v_handle, ((char const *)"cuGraphExecExternalSemaphoresSignalNodeSetParams"));

  /* "cuda/_cuda/ccuda.pyx":2402
 *     __cuGraphExecExternalSemaphoresSignalNodeSetParams = dlfcn.dlsym(handle, 'cuGraphExecExternalSemaphoresSignalNodeSetParams')
 *     global __cuGraphExecExternalSemaphoresWaitNodeSetParams
 *     __cuGraphExecExternalSemaphoresWaitNodeSetParams = dlfcn.dlsym(handle, 'cuGraphExecExternalSemaphoresWaitNodeSetParams')             # <<<<<<<<<<<<<<
 *     global __cuGraphNodeSetEnabled
 *     __cuGraphNodeSetEnabled = dlfcn.dlsym(handle, 'cuGraphNodeSetEnabled')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuGraphExecExternalSemaphoresWaitNodeSetParams = dlsym(__pyx_v_handle, ((char const *)"cuGraphExecExternalSemaphoresWaitNodeSetParams"));

  /* "cuda/_cuda/ccuda.pyx":2404
 *     __cuGraphExecExternalSemaphoresWaitNodeSetParams = dlfcn.dlsym(handle, 'cuGraphExecExternalSemaphoresWaitNodeSetParams')
 *     global __cuGraphNodeSetEnabled
 *     __cuGraphNodeSetEnabled = dlfcn.dlsym(handle, 'cuGraphNodeSetEnabled')             # <<<<<<<<<<<<<<
 *     global __cuGraphNodeGetEnabled
 *     __cuGraphNodeGetEnabled = dlfcn.dlsym(handle, 'cuGraphNodeGetEnabled')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuGraphNodeSetEnabled = dlsym(__pyx_v_handle, ((char const *)"cuGraphNodeSetEnabled"));

  /* "cuda/_cuda/ccuda.pyx":2406
 *     __cuGraphNodeSetEnabled = dlfcn.dlsym(handle, 'cuGraphNodeSetEnabled')
 *     global __cuGraphNodeGetEnabled
 *     __cuGraphNodeGetEnabled = dlfcn.dlsym(handle, 'cuGraphNodeGetEnabled')             # <<<<<<<<<<<<<<
 *     global __cuGraphExecDestroy
 *     __cuGraphExecDestroy = dlfcn.dlsym(handle, 'cuGraphExecDestroy')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuGraphNodeGetEnabled = dlsym(__pyx_v_handle, ((char const *)"cuGraphNodeGetEnabled"));

  /* "cuda/_cuda/ccuda.pyx":2408
 *     __cuGraphNodeGetEnabled = dlfcn.dlsym(handle, 'cuGraphNodeGetEnabled')
 *     global __cuGraphExecDestroy
 *     __cuGraphExecDestroy = dlfcn.dlsym(handle, 'cuGraphExecDestroy')             # <<<<<<<<<<<<<<
 *     global __cuGraphDestroy
 *     __cuGraphDestroy = dlfcn.dlsym(handle, 'cuGraphDestroy')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuGraphExecDestroy = dlsym(__pyx_v_handle, ((char const *)"cuGraphExecDestroy"));

  /* "cuda/_cuda/ccuda.pyx":2410
 *     __cuGraphExecDestroy = dlfcn.dlsym(handle, 'cuGraphExecDestroy')
 *     global __cuGraphDestroy
 *     __cuGraphDestroy = dlfcn.dlsym(handle, 'cuGraphDestroy')             # <<<<<<<<<<<<<<
 *     global __cuGraphExecUpdate_v2
 *     __cuGraphExecUpdate_v2 = dlfcn.dlsym(handle, 'cuGraphExecUpdate_v2')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuGraphDestroy = dlsym(__pyx_v_handle, ((char const *)"cuGraphDestroy"));

  /* "cuda/_cuda/ccuda.pyx":2412
 *     __cuGraphDestroy = dlfcn.dlsym(handle, 'cuGraphDestroy')
 *     global __cuGraphExecUpdate_v2
 *     __cuGraphExecUpdate_v2 = dlfcn.dlsym(handle, 'cuGraphExecUpdate_v2')             # <<<<<<<<<<<<<<
 *     global __cuGraphKernelNodeCopyAttributes
 *     __cuGraphKernelNodeCopyAttributes = dlfcn.dlsym(handle, 'cuGraphKernelNodeCopyAttributes')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuGraphExecUpdate_v2 = dlsym(__pyx_v_handle, ((char const *)"cuGraphExecUpdate_v2"));

  /* "cuda/_cuda/ccuda.pyx":2414
 *     __cuGraphExecUpdate_v2 = dlfcn.dlsym(handle, 'cuGraphExecUpdate_v2')
 *     global __cuGraphKernelNodeCopyAttributes
 *     __cuGraphKernelNodeCopyAttributes = dlfcn.dlsym(handle, 'cuGraphKernelNodeCopyAttributes')             # <<<<<<<<<<<<<<
 *     global __cuGraphKernelNodeGetAttribute
 *     __cuGraphKernelNodeGetAttribute = dlfcn.dlsym(handle, 'cuGraphKernelNodeGetAttribute')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuGraphKernelNodeCopyAttributes = dlsym(__pyx_v_handle, ((char const *)"cuGraphKernelNodeCopyAttributes"));

  /* "cuda/_cuda/ccuda.pyx":2416
 *     __cuGraphKernelNodeCopyAttributes = dlfcn.dlsym(handle, 'cuGraphKernelNodeCopyAttributes')
 *     global __cuGraphKernelNodeGetAttribute
 *     __cuGraphKernelNodeGetAttribute = dlfcn.dlsym(handle, 'cuGraphKernelNodeGetAttribute')             # <<<<<<<<<<<<<<
 *     global __cuGraphKernelNodeSetAttribute
 *     __cuGraphKernelNodeSetAttribute = dlfcn.dlsym(handle, 'cuGraphKernelNodeSetAttribute')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuGraphKernelNodeGetAttribute = dlsym(__pyx_v_handle, ((char const *)"cuGraphKernelNodeGetAttribute"));

  /* "cuda/_cuda/ccuda.pyx":2418
 *     __cuGraphKernelNodeGetAttribute = dlfcn.dlsym(handle, 'cuGraphKernelNodeGetAttribute')
 *     global __cuGraphKernelNodeSetAttribute
 *     __cuGraphKernelNodeSetAttribute = dlfcn.dlsym(handle, 'cuGraphKernelNodeSetAttribute')             # <<<<<<<<<<<<<<
 *     global __cuGraphDebugDotPrint
 *     __cuGraphDebugDotPrint = dlfcn.dlsym(handle, 'cuGraphDebugDotPrint')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuGraphKernelNodeSetAttribute = dlsym(__pyx_v_handle, ((char const *)"cuGraphKernelNodeSetAttribute"));

  /* "cuda/_cuda/ccuda.pyx":2420
 *     __cuGraphKernelNodeSetAttribute = dlfcn.dlsym(handle, 'cuGraphKernelNodeSetAttribute')
 *     global __cuGraphDebugDotPrint
 *     __cuGraphDebugDotPrint = dlfcn.dlsym(handle, 'cuGraphDebugDotPrint')             # <<<<<<<<<<<<<<
 *     global __cuUserObjectCreate
 *     __cuUserObjectCreate = dlfcn.dlsym(handle, 'cuUserObjectCreate')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuGraphDebugDotPrint = dlsym(__pyx_v_handle, ((char const *)"cuGraphDebugDotPrint"));

  /* "cuda/_cuda/ccuda.pyx":2422
 *     __cuGraphDebugDotPrint = dlfcn.dlsym(handle, 'cuGraphDebugDotPrint')
 *     global __cuUserObjectCreate
 *     __cuUserObjectCreate = dlfcn.dlsym(handle, 'cuUserObjectCreate')             # <<<<<<<<<<<<<<
 *     global __cuUserObjectRetain
 *     __cuUserObjectRetain = dlfcn.dlsym(handle, 'cuUserObjectRetain')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuUserObjectCreate = dlsym(__pyx_v_handle, ((char const *)"cuUserObjectCreate"));

  /* "cuda/_cuda/ccuda.pyx":2424
 *     __cuUserObjectCreate = dlfcn.dlsym(handle, 'cuUserObjectCreate')
 *     global __cuUserObjectRetain
 *     __cuUserObjectRetain = dlfcn.dlsym(handle, 'cuUserObjectRetain')             # <<<<<<<<<<<<<<
 *     global __cuUserObjectRelease
 *     __cuUserObjectRelease = dlfcn.dlsym(handle, 'cuUserObjectRelease')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuUserObjectRetain = dlsym(__pyx_v_handle, ((char const *)"cuUserObjectRetain"));

  /* "cuda/_cuda/ccuda.pyx":2426
 *     __cuUserObjectRetain = dlfcn.dlsym(handle, 'cuUserObjectRetain')
 *     global __cuUserObjectRelease
 *     __cuUserObjectRelease = dlfcn.dlsym(handle, 'cuUserObjectRelease')             # <<<<<<<<<<<<<<
 *     global __cuGraphRetainUserObject
 *     __cuGraphRetainUserObject = dlfcn.dlsym(handle, 'cuGraphRetainUserObject')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuUserObjectRelease = dlsym(__pyx_v_handle, ((char const *)"cuUserObjectRelease"));

  /* "cuda/_cuda/ccuda.pyx":2428
 *     __cuUserObjectRelease = dlfcn.dlsym(handle, 'cuUserObjectRelease')
 *     global __cuGraphRetainUserObject
 *     __cuGraphRetainUserObject = dlfcn.dlsym(handle, 'cuGraphRetainUserObject')             # <<<<<<<<<<<<<<
 *     global __cuGraphReleaseUserObject
 *     __cuGraphReleaseUserObject = dlfcn.dlsym(handle, 'cuGraphReleaseUserObject')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuGraphRetainUserObject = dlsym(__pyx_v_handle, ((char const *)"cuGraphRetainUserObject"));

  /* "cuda/_cuda/ccuda.pyx":2430
 *     __cuGraphRetainUserObject = dlfcn.dlsym(handle, 'cuGraphRetainUserObject')
 *     global __cuGraphReleaseUserObject
 *     __cuGraphReleaseUserObject = dlfcn.dlsym(handle, 'cuGraphReleaseUserObject')             # <<<<<<<<<<<<<<
 *     global __cuGraphAddNode
 *     __cuGraphAddNode = dlfcn.dlsym(handle, 'cuGraphAddNode')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuGraphReleaseUserObject = dlsym(__pyx_v_handle, ((char const *)"cuGraphReleaseUserObject"));

  /* "cuda/_cuda/ccuda.pyx":2432
 *     __cuGraphReleaseUserObject = dlfcn.dlsym(handle, 'cuGraphReleaseUserObject')
 *     global __cuGraphAddNode
 *     __cuGraphAddNode = dlfcn.dlsym(handle, 'cuGraphAddNode')             # <<<<<<<<<<<<<<
 *     global __cuGraphAddNode_v2
 *     __cuGraphAddNode_v2 = dlfcn.dlsym(handle, 'cuGraphAddNode_v2')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuGraphAddNode = dlsym(__pyx_v_handle, ((char const *)"cuGraphAddNode"));

  /* "cuda/_cuda/ccuda.pyx":2434
 *     __cuGraphAddNode = dlfcn.dlsym(handle, 'cuGraphAddNode')
 *     global __cuGraphAddNode_v2
 *     __cuGraphAddNode_v2 = dlfcn.dlsym(handle, 'cuGraphAddNode_v2')             # <<<<<<<<<<<<<<
 *     global __cuGraphNodeSetParams
 *     __cuGraphNodeSetParams = dlfcn.dlsym(handle, 'cuGraphNodeSetParams')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuGraphAddNode_v2 = dlsym(__pyx_v_handle, ((char const *)"cuGraphAddNode_v2"));

  /* "cuda/_cuda/ccuda.pyx":2436
 *     __cuGraphAddNode_v2 = dlfcn.dlsym(handle, 'cuGraphAddNode_v2')
 *     global __cuGraphNodeSetParams
 *     __cuGraphNodeSetParams = dlfcn.dlsym(handle, 'cuGraphNodeSetParams')             # <<<<<<<<<<<<<<
 *     global __cuGraphExecNodeSetParams
 *     __cuGraphExecNodeSetParams = dlfcn.dlsym(handle, 'cuGraphExecNodeSetParams')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuGraphNodeSetParams = dlsym(__pyx_v_handle, ((char const *)"cuGraphNodeSetParams"));

  /* "cuda/_cuda/ccuda.pyx":2438
 *     __cuGraphNodeSetParams = dlfcn.dlsym(handle, 'cuGraphNodeSetParams')
 *     global __cuGraphExecNodeSetParams
 *     __cuGraphExecNodeSetParams = dlfcn.dlsym(handle, 'cuGraphExecNodeSetParams')             # <<<<<<<<<<<<<<
 *     global __cuGraphConditionalHandleCreate
 *     __cuGraphConditionalHandleCreate = dlfcn.dlsym(handle, 'cuGraphConditionalHandleCreate')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuGraphExecNodeSetParams = dlsym(__pyx_v_handle, ((char const *)"cuGraphExecNodeSetParams"));

  /* "cuda/_cuda/ccuda.pyx":2440
 *     __cuGraphExecNodeSetParams = dlfcn.dlsym(handle, 'cuGraphExecNodeSetParams')
 *     global __cuGraphConditionalHandleCreate
 *     __cuGraphConditionalHandleCreate = dlfcn.dlsym(handle, 'cuGraphConditionalHandleCreate')             # <<<<<<<<<<<<<<
 *     global __cuOccupancyMaxActiveBlocksPerMultiprocessor
 *     __cuOccupancyMaxActiveBlocksPerMultiprocessor = dlfcn.dlsym(handle, 'cuOccupancyMaxActiveBlocksPerMultiprocessor')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuGraphConditionalHandleCreate = dlsym(__pyx_v_handle, ((char const *)"cuGraphConditionalHandleCreate"));

  /* "cuda/_cuda/ccuda.pyx":2442
 *     __cuGraphConditionalHandleCreate = dlfcn.dlsym(handle, 'cuGraphConditionalHandleCreate')
 *     global __cuOccupancyMaxActiveBlocksPerMultiprocessor
 *     __cuOccupancyMaxActiveBlocksPerMultiprocessor = dlfcn.dlsym(handle, 'cuOccupancyMaxActiveBlocksPerMultiprocessor')             # <<<<<<<<<<<<<<
 *     global __cuOccupancyMaxActiveBlocksPerMultiprocessorWithFlags
 *     __cuOccupancyMaxActiveBlocksPerMultiprocessorWithFlags = dlfcn.dlsym(handle, 'cuOccupancyMaxActiveBlocksPerMultiprocessorWithFlags')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuOccupancyMaxActiveBlocksPerMultiprocessor = dlsym(__pyx_v_handle, ((char const *)"cuOccupancyMaxActiveBlocksPerMultiprocessor"));

  /* "cuda/_cuda/ccuda.pyx":2444
 *     __cuOccupancyMaxActiveBlocksPerMultiprocessor = dlfcn.dlsym(handle, 'cuOccupancyMaxActiveBlocksPerMultiprocessor')
 *     global __cuOccupancyMaxActiveBlocksPerMultiprocessorWithFlags
 *     __cuOccupancyMaxActiveBlocksPerMultiprocessorWithFlags = dlfcn.dlsym(handle, 'cuOccupancyMaxActiveBlocksPerMultiprocessorWithFlags')             # <<<<<<<<<<<<<<
 *     global __cuOccupancyMaxPotentialBlockSize
 *     __cuOccupancyMaxPotentialBlockSize = dlfcn.dlsym(handle, 'cuOccupancyMaxPotentialBlockSize')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuOccupancyMaxActiveBlocksPerMultiprocessorWithFlags = dlsym(__pyx_v_handle, ((char const *)"cuOccupancyMaxActiveBlocksPerMultiprocessorWithFlags"));

  /* "cuda/_cuda/ccuda.pyx":2446
 *     __cuOccupancyMaxActiveBlocksPerMultiprocessorWithFlags = dlfcn.dlsym(handle, 'cuOccupancyMaxActiveBlocksPerMultiprocessorWithFlags')
 *     global __cuOccupancyMaxPotentialBlockSize
 *     __cuOccupancyMaxPotentialBlockSize = dlfcn.dlsym(handle, 'cuOccupancyMaxPotentialBlockSize')             # <<<<<<<<<<<<<<
 *     global __cuOccupancyMaxPotentialBlockSizeWithFlags
 *     __cuOccupancyMaxPotentialBlockSizeWithFlags = dlfcn.dlsym(handle, 'cuOccupancyMaxPotentialBlockSizeWithFlags')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuOccupancyMaxPotentialBlockSize = dlsym(__pyx_v_handle, ((char const *)"cuOccupancyMaxPotentialBlockSize"));

  /* "cuda/_cuda/ccuda.pyx":2448
 *     __cuOccupancyMaxPotentialBlockSize = dlfcn.dlsym(handle, 'cuOccupancyMaxPotentialBlockSize')
 *     global __cuOccupancyMaxPotentialBlockSizeWithFlags
 *     __cuOccupancyMaxPotentialBlockSizeWithFlags = dlfcn.dlsym(handle, 'cuOccupancyMaxPotentialBlockSizeWithFlags')             # <<<<<<<<<<<<<<
 *     global __cuOccupancyAvailableDynamicSMemPerBlock
 *     __cuOccupancyAvailableDynamicSMemPerBlock = dlfcn.dlsym(handle, 'cuOccupancyAvailableDynamicSMemPerBlock')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuOccupancyMaxPotentialBlockSizeWithFlags = dlsym(__pyx_v_handle, ((char const *)"cuOccupancyMaxPotentialBlockSizeWithFlags"));

  /* "cuda/_cuda/ccuda.pyx":2450
 *     __cuOccupancyMaxPotentialBlockSizeWithFlags = dlfcn.dlsym(handle, 'cuOccupancyMaxPotentialBlockSizeWithFlags')
 *     global __cuOccupancyAvailableDynamicSMemPerBlock
 *     __cuOccupancyAvailableDynamicSMemPerBlock = dlfcn.dlsym(handle, 'cuOccupancyAvailableDynamicSMemPerBlock')             # <<<<<<<<<<<<<<
 *     global __cuOccupancyMaxPotentialClusterSize
 *     __cuOccupancyMaxPotentialClusterSize = dlfcn.dlsym(handle, 'cuOccupancyMaxPotentialClusterSize')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuOccupancyAvailableDynamicSMemPerBlock = dlsym(__pyx_v_handle, ((char const *)"cuOccupancyAvailableDynamicSMemPerBlock"));

  /* "cuda/_cuda/ccuda.pyx":2452
 *     __cuOccupancyAvailableDynamicSMemPerBlock = dlfcn.dlsym(handle, 'cuOccupancyAvailableDynamicSMemPerBlock')
 *     global __cuOccupancyMaxPotentialClusterSize
 *     __cuOccupancyMaxPotentialClusterSize = dlfcn.dlsym(handle, 'cuOccupancyMaxPotentialClusterSize')             # <<<<<<<<<<<<<<
 *     global __cuOccupancyMaxActiveClusters
 *     __cuOccupancyMaxActiveClusters = dlfcn.dlsym(handle, 'cuOccupancyMaxActiveClusters')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuOccupancyMaxPotentialClusterSize = dlsym(__pyx_v_handle, ((char const *)"cuOccupancyMaxPotentialClusterSize"));

  /* "cuda/_cuda/ccuda.pyx":2454
 *     __cuOccupancyMaxPotentialClusterSize = dlfcn.dlsym(handle, 'cuOccupancyMaxPotentialClusterSize')
 *     global __cuOccupancyMaxActiveClusters
 *     __cuOccupancyMaxActiveClusters = dlfcn.dlsym(handle, 'cuOccupancyMaxActiveClusters')             # <<<<<<<<<<<<<<
 *     global __cuTexRefSetArray
 *     __cuTexRefSetArray = dlfcn.dlsym(handle, 'cuTexRefSetArray')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuOccupancyMaxActiveClusters = dlsym(__pyx_v_handle, ((char const *)"cuOccupancyMaxActiveClusters"));

  /* "cuda/_cuda/ccuda.pyx":2456
 *     __cuOccupancyMaxActiveClusters = dlfcn.dlsym(handle, 'cuOccupancyMaxActiveClusters')
 *     global __cuTexRefSetArray
 *     __cuTexRefSetArray = dlfcn.dlsym(handle, 'cuTexRefSetArray')             # <<<<<<<<<<<<<<
 *     global __cuTexRefSetMipmappedArray
 *     __cuTexRefSetMipmappedArray = dlfcn.dlsym(handle, 'cuTexRefSetMipmappedArray')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuTexRefSetArray = dlsym(__pyx_v_handle, ((char const *)"cuTexRefSetArray"));

  /* "cuda/_cuda/ccuda.pyx":2458
 *     __cuTexRefSetArray = dlfcn.dlsym(handle, 'cuTexRefSetArray')
 *     global __cuTexRefSetMipmappedArray
 *     __cuTexRefSetMipmappedArray = dlfcn.dlsym(handle, 'cuTexRefSetMipmappedArray')             # <<<<<<<<<<<<<<
 *     global __cuTexRefSetAddress_v2
 *     __cuTexRefSetAddress_v2 = dlfcn.dlsym(handle, 'cuTexRefSetAddress_v2')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuTexRefSetMipmappedArray = dlsym(__pyx_v_handle, ((char const *)"cuTexRefSetMipmappedArray"));

  /* "cuda/_cuda/ccuda.pyx":2460
 *     __cuTexRefSetMipmappedArray = dlfcn.dlsym(handle, 'cuTexRefSetMipmappedArray')
 *     global __cuTexRefSetAddress_v2
 *     __cuTexRefSetAddress_v2 = dlfcn.dlsym(handle, 'cuTexRefSetAddress_v2')             # <<<<<<<<<<<<<<
 *     global __cuTexRefSetAddress2D_v3
 *     __cuTexRefSetAddress2D_v3 = dlfcn.dlsym(handle, 'cuTexRefSetAddress2D_v3')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuTexRefSetAddress_v2 = dlsym(__pyx_v_handle, ((char const *)"cuTexRefSetAddress_v2"));

  /* "cuda/_cuda/ccuda.pyx":2462
 *     __cuTexRefSetAddress_v2 = dlfcn.dlsym(handle, 'cuTexRefSetAddress_v2')
 *     global __cuTexRefSetAddress2D_v3
 *     __cuTexRefSetAddress2D_v3 = dlfcn.dlsym(handle, 'cuTexRefSetAddress2D_v3')             # <<<<<<<<<<<<<<
 *     global __cuTexRefSetFormat
 *     __cuTexRefSetFormat = dlfcn.dlsym(handle, 'cuTexRefSetFormat')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuTexRefSetAddress2D_v3 = dlsym(__pyx_v_handle, ((char const *)"cuTexRefSetAddress2D_v3"));

  /* "cuda/_cuda/ccuda.pyx":2464
 *     __cuTexRefSetAddress2D_v3 = dlfcn.dlsym(handle, 'cuTexRefSetAddress2D_v3')
 *     global __cuTexRefSetFormat
 *     __cuTexRefSetFormat = dlfcn.dlsym(handle, 'cuTexRefSetFormat')             # <<<<<<<<<<<<<<
 *     global __cuTexRefSetAddressMode
 *     __cuTexRefSetAddressMode = dlfcn.dlsym(handle, 'cuTexRefSetAddressMode')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuTexRefSetFormat = dlsym(__pyx_v_handle, ((char const *)"cuTexRefSetFormat"));

  /* "cuda/_cuda/ccuda.pyx":2466
 *     __cuTexRefSetFormat = dlfcn.dlsym(handle, 'cuTexRefSetFormat')
 *     global __cuTexRefSetAddressMode
 *     __cuTexRefSetAddressMode = dlfcn.dlsym(handle, 'cuTexRefSetAddressMode')             # <<<<<<<<<<<<<<
 *     global __cuTexRefSetFilterMode
 *     __cuTexRefSetFilterMode = dlfcn.dlsym(handle, 'cuTexRefSetFilterMode')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuTexRefSetAddressMode = dlsym(__pyx_v_handle, ((char const *)"cuTexRefSetAddressMode"));

  /* "cuda/_cuda/ccuda.pyx":2468
 *     __cuTexRefSetAddressMode = dlfcn.dlsym(handle, 'cuTexRefSetAddressMode')
 *     global __cuTexRefSetFilterMode
 *     __cuTexRefSetFilterMode = dlfcn.dlsym(handle, 'cuTexRefSetFilterMode')             # <<<<<<<<<<<<<<
 *     global __cuTexRefSetMipmapFilterMode
 *     __cuTexRefSetMipmapFilterMode = dlfcn.dlsym(handle, 'cuTexRefSetMipmapFilterMode')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuTexRefSetFilterMode = dlsym(__pyx_v_handle, ((char const *)"cuTexRefSetFilterMode"));

  /* "cuda/_cuda/ccuda.pyx":2470
 *     __cuTexRefSetFilterMode = dlfcn.dlsym(handle, 'cuTexRefSetFilterMode')
 *     global __cuTexRefSetMipmapFilterMode
 *     __cuTexRefSetMipmapFilterMode = dlfcn.dlsym(handle, 'cuTexRefSetMipmapFilterMode')             # <<<<<<<<<<<<<<
 *     global __cuTexRefSetMipmapLevelBias
 *     __cuTexRefSetMipmapLevelBias = dlfcn.dlsym(handle, 'cuTexRefSetMipmapLevelBias')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuTexRefSetMipmapFilterMode = dlsym(__pyx_v_handle, ((char const *)"cuTexRefSetMipmapFilterMode"));

  /* "cuda/_cuda/ccuda.pyx":2472
 *     __cuTexRefSetMipmapFilterMode = dlfcn.dlsym(handle, 'cuTexRefSetMipmapFilterMode')
 *     global __cuTexRefSetMipmapLevelBias
 *     __cuTexRefSetMipmapLevelBias = dlfcn.dlsym(handle, 'cuTexRefSetMipmapLevelBias')             # <<<<<<<<<<<<<<
 *     global __cuTexRefSetMipmapLevelClamp
 *     __cuTexRefSetMipmapLevelClamp = dlfcn.dlsym(handle, 'cuTexRefSetMipmapLevelClamp')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuTexRefSetMipmapLevelBias = dlsym(__pyx_v_handle, ((char const *)"cuTexRefSetMipmapLevelBias"));

  /* "cuda/_cuda/ccuda.pyx":2474
 *     __cuTexRefSetMipmapLevelBias = dlfcn.dlsym(handle, 'cuTexRefSetMipmapLevelBias')
 *     global __cuTexRefSetMipmapLevelClamp
 *     __cuTexRefSetMipmapLevelClamp = dlfcn.dlsym(handle, 'cuTexRefSetMipmapLevelClamp')             # <<<<<<<<<<<<<<
 *     global __cuTexRefSetMaxAnisotropy
 *     __cuTexRefSetMaxAnisotropy = dlfcn.dlsym(handle, 'cuTexRefSetMaxAnisotropy')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuTexRefSetMipmapLevelClamp = dlsym(__pyx_v_handle, ((char const *)"cuTexRefSetMipmapLevelClamp"));

  /* "cuda/_cuda/ccuda.pyx":2476
 *     __cuTexRefSetMipmapLevelClamp = dlfcn.dlsym(handle, 'cuTexRefSetMipmapLevelClamp')
 *     global __cuTexRefSetMaxAnisotropy
 *     __cuTexRefSetMaxAnisotropy = dlfcn.dlsym(handle, 'cuTexRefSetMaxAnisotropy')             # <<<<<<<<<<<<<<
 *     global __cuTexRefSetBorderColor
 *     __cuTexRefSetBorderColor = dlfcn.dlsym(handle, 'cuTexRefSetBorderColor')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuTexRefSetMaxAnisotropy = dlsym(__pyx_v_handle, ((char const *)"cuTexRefSetMaxAnisotropy"));

  /* "cuda/_cuda/ccuda.pyx":2478
 *     __cuTexRefSetMaxAnisotropy = dlfcn.dlsym(handle, 'cuTexRefSetMaxAnisotropy')
 *     global __cuTexRefSetBorderColor
 *     __cuTexRefSetBorderColor = dlfcn.dlsym(handle, 'cuTexRefSetBorderColor')             # <<<<<<<<<<<<<<
 *     global __cuTexRefSetFlags
 *     __cuTexRefSetFlags = dlfcn.dlsym(handle, 'cuTexRefSetFlags')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuTexRefSetBorderColor = dlsym(__pyx_v_handle, ((char const *)"cuTexRefSetBorderColor"));

  /* "cuda/_cuda/ccuda.pyx":2480
 *     __cuTexRefSetBorderColor = dlfcn.dlsym(handle, 'cuTexRefSetBorderColor')
 *     global __cuTexRefSetFlags
 *     __cuTexRefSetFlags = dlfcn.dlsym(handle, 'cuTexRefSetFlags')             # <<<<<<<<<<<<<<
 *     global __cuTexRefGetAddress_v2
 *     __cuTexRefGetAddress_v2 = dlfcn.dlsym(handle, 'cuTexRefGetAddress_v2')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuTexRefSetFlags = dlsym(__pyx_v_handle, ((char const *)"cuTexRefSetFlags"));

  /* "cuda/_cuda/ccuda.pyx":2482
 *     __cuTexRefSetFlags = dlfcn.dlsym(handle, 'cuTexRefSetFlags')
 *     global __cuTexRefGetAddress_v2
 *     __cuTexRefGetAddress_v2 = dlfcn.dlsym(handle, 'cuTexRefGetAddress_v2')             # <<<<<<<<<<<<<<
 *     global __cuTexRefGetArray
 *     __cuTexRefGetArray = dlfcn.dlsym(handle, 'cuTexRefGetArray')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuTexRefGetAddress_v2 = dlsym(__pyx_v_handle, ((char const *)"cuTexRefGetAddress_v2"));

  /* "cuda/_cuda/ccuda.pyx":2484
 *     __cuTexRefGetAddress_v2 = dlfcn.dlsym(handle, 'cuTexRefGetAddress_v2')
 *     global __cuTexRefGetArray
 *     __cuTexRefGetArray = dlfcn.dlsym(handle, 'cuTexRefGetArray')             # <<<<<<<<<<<<<<
 *     global __cuTexRefGetMipmappedArray
 *     __cuTexRefGetMipmappedArray = dlfcn.dlsym(handle, 'cuTexRefGetMipmappedArray')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuTexRefGetArray = dlsym(__pyx_v_handle, ((char const *)"cuTexRefGetArray"));

  /* "cuda/_cuda/ccuda.pyx":2486
 *     __cuTexRefGetArray = dlfcn.dlsym(handle, 'cuTexRefGetArray')
 *     global __cuTexRefGetMipmappedArray
 *     __cuTexRefGetMipmappedArray = dlfcn.dlsym(handle, 'cuTexRefGetMipmappedArray')             # <<<<<<<<<<<<<<
 *     global __cuTexRefGetAddressMode
 *     __cuTexRefGetAddressMode = dlfcn.dlsym(handle, 'cuTexRefGetAddressMode')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuTexRefGetMipmappedArray = dlsym(__pyx_v_handle, ((char const *)"cuTexRefGetMipmappedArray"));

  /* "cuda/_cuda/ccuda.pyx":2488
 *     __cuTexRefGetMipmappedArray = dlfcn.dlsym(handle, 'cuTexRefGetMipmappedArray')
 *     global __cuTexRefGetAddressMode
 *     __cuTexRefGetAddressMode = dlfcn.dlsym(handle, 'cuTexRefGetAddressMode')             # <<<<<<<<<<<<<<
 *     global __cuTexRefGetFilterMode
 *     __cuTexRefGetFilterMode = dlfcn.dlsym(handle, 'cuTexRefGetFilterMode')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuTexRefGetAddressMode = dlsym(__pyx_v_handle, ((char const *)"cuTexRefGetAddressMode"));

  /* "cuda/_cuda/ccuda.pyx":2490
 *     __cuTexRefGetAddressMode = dlfcn.dlsym(handle, 'cuTexRefGetAddressMode')
 *     global __cuTexRefGetFilterMode
 *     __cuTexRefGetFilterMode = dlfcn.dlsym(handle, 'cuTexRefGetFilterMode')             # <<<<<<<<<<<<<<
 *     global __cuTexRefGetFormat
 *     __cuTexRefGetFormat = dlfcn.dlsym(handle, 'cuTexRefGetFormat')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuTexRefGetFilterMode = dlsym(__pyx_v_handle, ((char const *)"cuTexRefGetFilterMode"));

  /* "cuda/_cuda/ccuda.pyx":2492
 *     __cuTexRefGetFilterMode = dlfcn.dlsym(handle, 'cuTexRefGetFilterMode')
 *     global __cuTexRefGetFormat
 *     __cuTexRefGetFormat = dlfcn.dlsym(handle, 'cuTexRefGetFormat')             # <<<<<<<<<<<<<<
 *     global __cuTexRefGetMipmapFilterMode
 *     __cuTexRefGetMipmapFilterMode = dlfcn.dlsym(handle, 'cuTexRefGetMipmapFilterMode')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuTexRefGetFormat = dlsym(__pyx_v_handle, ((char const *)"cuTexRefGetFormat"));

  /* "cuda/_cuda/ccuda.pyx":2494
 *     __cuTexRefGetFormat = dlfcn.dlsym(handle, 'cuTexRefGetFormat')
 *     global __cuTexRefGetMipmapFilterMode
 *     __cuTexRefGetMipmapFilterMode = dlfcn.dlsym(handle, 'cuTexRefGetMipmapFilterMode')             # <<<<<<<<<<<<<<
 *     global __cuTexRefGetMipmapLevelBias
 *     __cuTexRefGetMipmapLevelBias = dlfcn.dlsym(handle, 'cuTexRefGetMipmapLevelBias')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuTexRefGetMipmapFilterMode = dlsym(__pyx_v_handle, ((char const *)"cuTexRefGetMipmapFilterMode"));

  /* "cuda/_cuda/ccuda.pyx":2496
 *     __cuTexRefGetMipmapFilterMode = dlfcn.dlsym(handle, 'cuTexRefGetMipmapFilterMode')
 *     global __cuTexRefGetMipmapLevelBias
 *     __cuTexRefGetMipmapLevelBias = dlfcn.dlsym(handle, 'cuTexRefGetMipmapLevelBias')             # <<<<<<<<<<<<<<
 *     global __cuTexRefGetMipmapLevelClamp
 *     __cuTexRefGetMipmapLevelClamp = dlfcn.dlsym(handle, 'cuTexRefGetMipmapLevelClamp')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuTexRefGetMipmapLevelBias = dlsym(__pyx_v_handle, ((char const *)"cuTexRefGetMipmapLevelBias"));

  /* "cuda/_cuda/ccuda.pyx":2498
 *     __cuTexRefGetMipmapLevelBias = dlfcn.dlsym(handle, 'cuTexRefGetMipmapLevelBias')
 *     global __cuTexRefGetMipmapLevelClamp
 *     __cuTexRefGetMipmapLevelClamp = dlfcn.dlsym(handle, 'cuTexRefGetMipmapLevelClamp')             # <<<<<<<<<<<<<<
 *     global __cuTexRefGetMaxAnisotropy
 *     __cuTexRefGetMaxAnisotropy = dlfcn.dlsym(handle, 'cuTexRefGetMaxAnisotropy')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuTexRefGetMipmapLevelClamp = dlsym(__pyx_v_handle, ((char const *)"cuTexRefGetMipmapLevelClamp"));

  /* "cuda/_cuda/ccuda.pyx":2500
 *     __cuTexRefGetMipmapLevelClamp = dlfcn.dlsym(handle, 'cuTexRefGetMipmapLevelClamp')
 *     global __cuTexRefGetMaxAnisotropy
 *     __cuTexRefGetMaxAnisotropy = dlfcn.dlsym(handle, 'cuTexRefGetMaxAnisotropy')             # <<<<<<<<<<<<<<
 *     global __cuTexRefGetBorderColor
 *     __cuTexRefGetBorderColor = dlfcn.dlsym(handle, 'cuTexRefGetBorderColor')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuTexRefGetMaxAnisotropy = dlsym(__pyx_v_handle, ((char const *)"cuTexRefGetMaxAnisotropy"));

  /* "cuda/_cuda/ccuda.pyx":2502
 *     __cuTexRefGetMaxAnisotropy = dlfcn.dlsym(handle, 'cuTexRefGetMaxAnisotropy')
 *     global __cuTexRefGetBorderColor
 *     __cuTexRefGetBorderColor = dlfcn.dlsym(handle, 'cuTexRefGetBorderColor')             # <<<<<<<<<<<<<<
 *     global __cuTexRefGetFlags
 *     __cuTexRefGetFlags = dlfcn.dlsym(handle, 'cuTexRefGetFlags')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuTexRefGetBorderColor = dlsym(__pyx_v_handle, ((char const *)"cuTexRefGetBorderColor"));

  /* "cuda/_cuda/ccuda.pyx":2504
 *     __cuTexRefGetBorderColor = dlfcn.dlsym(handle, 'cuTexRefGetBorderColor')
 *     global __cuTexRefGetFlags
 *     __cuTexRefGetFlags = dlfcn.dlsym(handle, 'cuTexRefGetFlags')             # <<<<<<<<<<<<<<
 *     global __cuTexRefCreate
 *     __cuTexRefCreate = dlfcn.dlsym(handle, 'cuTexRefCreate')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuTexRefGetFlags = dlsym(__pyx_v_handle, ((char const *)"cuTexRefGetFlags"));

  /* "cuda/_cuda/ccuda.pyx":2506
 *     __cuTexRefGetFlags = dlfcn.dlsym(handle, 'cuTexRefGetFlags')
 *     global __cuTexRefCreate
 *     __cuTexRefCreate = dlfcn.dlsym(handle, 'cuTexRefCreate')             # <<<<<<<<<<<<<<
 *     global __cuTexRefDestroy
 *     __cuTexRefDestroy = dlfcn.dlsym(handle, 'cuTexRefDestroy')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuTexRefCreate = dlsym(__pyx_v_handle, ((char const *)"cuTexRefCreate"));

  /* "cuda/_cuda/ccuda.pyx":2508
 *     __cuTexRefCreate = dlfcn.dlsym(handle, 'cuTexRefCreate')
 *     global __cuTexRefDestroy
 *     __cuTexRefDestroy = dlfcn.dlsym(handle, 'cuTexRefDestroy')             # <<<<<<<<<<<<<<
 *     global __cuSurfRefSetArray
 *     __cuSurfRefSetArray = dlfcn.dlsym(handle, 'cuSurfRefSetArray')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuTexRefDestroy = dlsym(__pyx_v_handle, ((char const *)"cuTexRefDestroy"));

  /* "cuda/_cuda/ccuda.pyx":2510
 *     __cuTexRefDestroy = dlfcn.dlsym(handle, 'cuTexRefDestroy')
 *     global __cuSurfRefSetArray
 *     __cuSurfRefSetArray = dlfcn.dlsym(handle, 'cuSurfRefSetArray')             # <<<<<<<<<<<<<<
 *     global __cuSurfRefGetArray
 *     __cuSurfRefGetArray = dlfcn.dlsym(handle, 'cuSurfRefGetArray')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuSurfRefSetArray = dlsym(__pyx_v_handle, ((char const *)"cuSurfRefSetArray"));

  /* "cuda/_cuda/ccuda.pyx":2512
 *     __cuSurfRefSetArray = dlfcn.dlsym(handle, 'cuSurfRefSetArray')
 *     global __cuSurfRefGetArray
 *     __cuSurfRefGetArray = dlfcn.dlsym(handle, 'cuSurfRefGetArray')             # <<<<<<<<<<<<<<
 *     global __cuTexObjectCreate
 *     __cuTexObjectCreate = dlfcn.dlsym(handle, 'cuTexObjectCreate')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuSurfRefGetArray = dlsym(__pyx_v_handle, ((char const *)"cuSurfRefGetArray"));

  /* "cuda/_cuda/ccuda.pyx":2514
 *     __cuSurfRefGetArray = dlfcn.dlsym(handle, 'cuSurfRefGetArray')
 *     global __cuTexObjectCreate
 *     __cuTexObjectCreate = dlfcn.dlsym(handle, 'cuTexObjectCreate')             # <<<<<<<<<<<<<<
 *     global __cuTexObjectDestroy
 *     __cuTexObjectDestroy = dlfcn.dlsym(handle, 'cuTexObjectDestroy')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuTexObjectCreate = dlsym(__pyx_v_handle, ((char const *)"cuTexObjectCreate"));

  /* "cuda/_cuda/ccuda.pyx":2516
 *     __cuTexObjectCreate = dlfcn.dlsym(handle, 'cuTexObjectCreate')
 *     global __cuTexObjectDestroy
 *     __cuTexObjectDestroy = dlfcn.dlsym(handle, 'cuTexObjectDestroy')             # <<<<<<<<<<<<<<
 *     global __cuTexObjectGetResourceDesc
 *     __cuTexObjectGetResourceDesc = dlfcn.dlsym(handle, 'cuTexObjectGetResourceDesc')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuTexObjectDestroy = dlsym(__pyx_v_handle, ((char const *)"cuTexObjectDestroy"));

  /* "cuda/_cuda/ccuda.pyx":2518
 *     __cuTexObjectDestroy = dlfcn.dlsym(handle, 'cuTexObjectDestroy')
 *     global __cuTexObjectGetResourceDesc
 *     __cuTexObjectGetResourceDesc = dlfcn.dlsym(handle, 'cuTexObjectGetResourceDesc')             # <<<<<<<<<<<<<<
 *     global __cuTexObjectGetTextureDesc
 *     __cuTexObjectGetTextureDesc = dlfcn.dlsym(handle, 'cuTexObjectGetTextureDesc')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuTexObjectGetResourceDesc = dlsym(__pyx_v_handle, ((char const *)"cuTexObjectGetResourceDesc"));

  /* "cuda/_cuda/ccuda.pyx":2520
 *     __cuTexObjectGetResourceDesc = dlfcn.dlsym(handle, 'cuTexObjectGetResourceDesc')
 *     global __cuTexObjectGetTextureDesc
 *     __cuTexObjectGetTextureDesc = dlfcn.dlsym(handle, 'cuTexObjectGetTextureDesc')             # <<<<<<<<<<<<<<
 *     global __cuTexObjectGetResourceViewDesc
 *     __cuTexObjectGetResourceViewDesc = dlfcn.dlsym(handle, 'cuTexObjectGetResourceViewDesc')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuTexObjectGetTextureDesc = dlsym(__pyx_v_handle, ((char const *)"cuTexObjectGetTextureDesc"));

  /* "cuda/_cuda/ccuda.pyx":2522
 *     __cuTexObjectGetTextureDesc = dlfcn.dlsym(handle, 'cuTexObjectGetTextureDesc')
 *     global __cuTexObjectGetResourceViewDesc
 *     __cuTexObjectGetResourceViewDesc = dlfcn.dlsym(handle, 'cuTexObjectGetResourceViewDesc')             # <<<<<<<<<<<<<<
 *     global __cuSurfObjectCreate
 *     __cuSurfObjectCreate = dlfcn.dlsym(handle, 'cuSurfObjectCreate')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuTexObjectGetResourceViewDesc = dlsym(__pyx_v_handle, ((char const *)"cuTexObjectGetResourceViewDesc"));

  /* "cuda/_cuda/ccuda.pyx":2524
 *     __cuTexObjectGetResourceViewDesc = dlfcn.dlsym(handle, 'cuTexObjectGetResourceViewDesc')
 *     global __cuSurfObjectCreate
 *     __cuSurfObjectCreate = dlfcn.dlsym(handle, 'cuSurfObjectCreate')             # <<<<<<<<<<<<<<
 *     global __cuSurfObjectDestroy
 *     __cuSurfObjectDestroy = dlfcn.dlsym(handle, 'cuSurfObjectDestroy')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuSurfObjectCreate = dlsym(__pyx_v_handle, ((char const *)"cuSurfObjectCreate"));

  /* "cuda/_cuda/ccuda.pyx":2526
 *     __cuSurfObjectCreate = dlfcn.dlsym(handle, 'cuSurfObjectCreate')
 *     global __cuSurfObjectDestroy
 *     __cuSurfObjectDestroy = dlfcn.dlsym(handle, 'cuSurfObjectDestroy')             # <<<<<<<<<<<<<<
 *     global __cuSurfObjectGetResourceDesc
 *     __cuSurfObjectGetResourceDesc = dlfcn.dlsym(handle, 'cuSurfObjectGetResourceDesc')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuSurfObjectDestroy = dlsym(__pyx_v_handle, ((char const *)"cuSurfObjectDestroy"));

  /* "cuda/_cuda/ccuda.pyx":2528
 *     __cuSurfObjectDestroy = dlfcn.dlsym(handle, 'cuSurfObjectDestroy')
 *     global __cuSurfObjectGetResourceDesc
 *     __cuSurfObjectGetResourceDesc = dlfcn.dlsym(handle, 'cuSurfObjectGetResourceDesc')             # <<<<<<<<<<<<<<
 *     global __cuTensorMapEncodeTiled
 *     __cuTensorMapEncodeTiled = dlfcn.dlsym(handle, 'cuTensorMapEncodeTiled')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuSurfObjectGetResourceDesc = dlsym(__pyx_v_handle, ((char const *)"cuSurfObjectGetResourceDesc"));

  /* "cuda/_cuda/ccuda.pyx":2530
 *     __cuSurfObjectGetResourceDesc = dlfcn.dlsym(handle, 'cuSurfObjectGetResourceDesc')
 *     global __cuTensorMapEncodeTiled
 *     __cuTensorMapEncodeTiled = dlfcn.dlsym(handle, 'cuTensorMapEncodeTiled')             # <<<<<<<<<<<<<<
 *     global __cuTensorMapEncodeIm2col
 *     __cuTensorMapEncodeIm2col = dlfcn.dlsym(handle, 'cuTensorMapEncodeIm2col')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuTensorMapEncodeTiled = dlsym(__pyx_v_handle, ((char const *)"cuTensorMapEncodeTiled"));

  /* "cuda/_cuda/ccuda.pyx":2532
 *     __cuTensorMapEncodeTiled = dlfcn.dlsym(handle, 'cuTensorMapEncodeTiled')
 *     global __cuTensorMapEncodeIm2col
 *     __cuTensorMapEncodeIm2col = dlfcn.dlsym(handle, 'cuTensorMapEncodeIm2col')             # <<<<<<<<<<<<<<
 *     global __cuTensorMapReplaceAddress
 *     __cuTensorMapReplaceAddress = dlfcn.dlsym(handle, 'cuTensorMapReplaceAddress')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuTensorMapEncodeIm2col = dlsym(__pyx_v_handle, ((char const *)"cuTensorMapEncodeIm2col"));

  /* "cuda/_cuda/ccuda.pyx":2534
 *     __cuTensorMapEncodeIm2col = dlfcn.dlsym(handle, 'cuTensorMapEncodeIm2col')
 *     global __cuTensorMapReplaceAddress
 *     __cuTensorMapReplaceAddress = dlfcn.dlsym(handle, 'cuTensorMapReplaceAddress')             # <<<<<<<<<<<<<<
 *     global __cuDeviceCanAccessPeer
 *     __cuDeviceCanAccessPeer = dlfcn.dlsym(handle, 'cuDeviceCanAccessPeer')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuTensorMapReplaceAddress = dlsym(__pyx_v_handle, ((char const *)"cuTensorMapReplaceAddress"));

  /* "cuda/_cuda/ccuda.pyx":2536
 *     __cuTensorMapReplaceAddress = dlfcn.dlsym(handle, 'cuTensorMapReplaceAddress')
 *     global __cuDeviceCanAccessPeer
 *     __cuDeviceCanAccessPeer = dlfcn.dlsym(handle, 'cuDeviceCanAccessPeer')             # <<<<<<<<<<<<<<
 *     global __cuCtxEnablePeerAccess
 *     __cuCtxEnablePeerAccess = dlfcn.dlsym(handle, 'cuCtxEnablePeerAccess')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuDeviceCanAccessPeer = dlsym(__pyx_v_handle, ((char const *)"cuDeviceCanAccessPeer"));

  /* "cuda/_cuda/ccuda.pyx":2538
 *     __cuDeviceCanAccessPeer = dlfcn.dlsym(handle, 'cuDeviceCanAccessPeer')
 *     global __cuCtxEnablePeerAccess
 *     __cuCtxEnablePeerAccess = dlfcn.dlsym(handle, 'cuCtxEnablePeerAccess')             # <<<<<<<<<<<<<<
 *     global __cuCtxDisablePeerAccess
 *     __cuCtxDisablePeerAccess = dlfcn.dlsym(handle, 'cuCtxDisablePeerAccess')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuCtxEnablePeerAccess = dlsym(__pyx_v_handle, ((char const *)"cuCtxEnablePeerAccess"));

  /* "cuda/_cuda/ccuda.pyx":2540
 *     __cuCtxEnablePeerAccess = dlfcn.dlsym(handle, 'cuCtxEnablePeerAccess')
 *     global __cuCtxDisablePeerAccess
 *     __cuCtxDisablePeerAccess = dlfcn.dlsym(handle, 'cuCtxDisablePeerAccess')             # <<<<<<<<<<<<<<
 *     global __cuDeviceGetP2PAttribute
 *     __cuDeviceGetP2PAttribute = dlfcn.dlsym(handle, 'cuDeviceGetP2PAttribute')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuCtxDisablePeerAccess = dlsym(__pyx_v_handle, ((char const *)"cuCtxDisablePeerAccess"));

  /* "cuda/_cuda/ccuda.pyx":2542
 *     __cuCtxDisablePeerAccess = dlfcn.dlsym(handle, 'cuCtxDisablePeerAccess')
 *     global __cuDeviceGetP2PAttribute
 *     __cuDeviceGetP2PAttribute = dlfcn.dlsym(handle, 'cuDeviceGetP2PAttribute')             # <<<<<<<<<<<<<<
 *     global __cuGraphicsUnregisterResource
 *     __cuGraphicsUnregisterResource = dlfcn.dlsym(handle, 'cuGraphicsUnregisterResource')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuDeviceGetP2PAttribute = dlsym(__pyx_v_handle, ((char const *)"cuDeviceGetP2PAttribute"));

  /* "cuda/_cuda/ccuda.pyx":2544
 *     __cuDeviceGetP2PAttribute = dlfcn.dlsym(handle, 'cuDeviceGetP2PAttribute')
 *     global __cuGraphicsUnregisterResource
 *     __cuGraphicsUnregisterResource = dlfcn.dlsym(handle, 'cuGraphicsUnregisterResource')             # <<<<<<<<<<<<<<
 *     global __cuGraphicsSubResourceGetMappedArray
 *     __cuGraphicsSubResourceGetMappedArray = dlfcn.dlsym(handle, 'cuGraphicsSubResourceGetMappedArray')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuGraphicsUnregisterResource = dlsym(__pyx_v_handle, ((char const *)"cuGraphicsUnregisterResource"));

  /* "cuda/_cuda/ccuda.pyx":2546
 *     __cuGraphicsUnregisterResource = dlfcn.dlsym(handle, 'cuGraphicsUnregisterResource')
 *     global __cuGraphicsSubResourceGetMappedArray
 *     __cuGraphicsSubResourceGetMappedArray = dlfcn.dlsym(handle, 'cuGraphicsSubResourceGetMappedArray')             # <<<<<<<<<<<<<<
 *     global __cuGraphicsResourceGetMappedMipmappedArray
 *     __cuGraphicsResourceGetMappedMipmappedArray = dlfcn.dlsym(handle, 'cuGraphicsResourceGetMappedMipmappedArray')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuGraphicsSubResourceGetMappedArray = dlsym(__pyx_v_handle, ((char const *)"cuGraphicsSubResourceGetMappedArray"));

  /* "cuda/_cuda/ccuda.pyx":2548
 *     __cuGraphicsSubResourceGetMappedArray = dlfcn.dlsym(handle, 'cuGraphicsSubResourceGetMappedArray')
 *     global __cuGraphicsResourceGetMappedMipmappedArray
 *     __cuGraphicsResourceGetMappedMipmappedArray = dlfcn.dlsym(handle, 'cuGraphicsResourceGetMappedMipmappedArray')             # <<<<<<<<<<<<<<
 *     global __cuGraphicsResourceGetMappedPointer_v2
 *     __cuGraphicsResourceGetMappedPointer_v2 = dlfcn.dlsym(handle, 'cuGraphicsResourceGetMappedPointer_v2')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuGraphicsResourceGetMappedMipmappedArray = dlsym(__pyx_v_handle, ((char const *)"cuGraphicsResourceGetMappedMipmappedArray"));

  /* "cuda/_cuda/ccuda.pyx":2550
 *     __cuGraphicsResourceGetMappedMipmappedArray = dlfcn.dlsym(handle, 'cuGraphicsResourceGetMappedMipmappedArray')
 *     global __cuGraphicsResourceGetMappedPointer_v2
 *     __cuGraphicsResourceGetMappedPointer_v2 = dlfcn.dlsym(handle, 'cuGraphicsResourceGetMappedPointer_v2')             # <<<<<<<<<<<<<<
 *     global __cuGraphicsResourceSetMapFlags_v2
 *     __cuGraphicsResourceSetMapFlags_v2 = dlfcn.dlsym(handle, 'cuGraphicsResourceSetMapFlags_v2')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuGraphicsResourceGetMappedPointer_v2 = dlsym(__pyx_v_handle, ((char const *)"cuGraphicsResourceGetMappedPointer_v2"));

  /* "cuda/_cuda/ccuda.pyx":2552
 *     __cuGraphicsResourceGetMappedPointer_v2 = dlfcn.dlsym(handle, 'cuGraphicsResourceGetMappedPointer_v2')
 *     global __cuGraphicsResourceSetMapFlags_v2
 *     __cuGraphicsResourceSetMapFlags_v2 = dlfcn.dlsym(handle, 'cuGraphicsResourceSetMapFlags_v2')             # <<<<<<<<<<<<<<
 *     global __cuGetProcAddress_v2
 *     __cuGetProcAddress_v2 = dlfcn.dlsym(handle, 'cuGetProcAddress_v2')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuGraphicsResourceSetMapFlags_v2 = dlsym(__pyx_v_handle, ((char const *)"cuGraphicsResourceSetMapFlags_v2"));

  /* "cuda/_cuda/ccuda.pyx":2554
 *     __cuGraphicsResourceSetMapFlags_v2 = dlfcn.dlsym(handle, 'cuGraphicsResourceSetMapFlags_v2')
 *     global __cuGetProcAddress_v2
 *     __cuGetProcAddress_v2 = dlfcn.dlsym(handle, 'cuGetProcAddress_v2')             # <<<<<<<<<<<<<<
 *     global __cuCoredumpGetAttribute
 *     __cuCoredumpGetAttribute = dlfcn.dlsym(handle, 'cuCoredumpGetAttribute')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuGetProcAddress_v2 = dlsym(__pyx_v_handle, ((char const *)"cuGetProcAddress_v2"));

  /* "cuda/_cuda/ccuda.pyx":2556
 *     __cuGetProcAddress_v2 = dlfcn.dlsym(handle, 'cuGetProcAddress_v2')
 *     global __cuCoredumpGetAttribute
 *     __cuCoredumpGetAttribute = dlfcn.dlsym(handle, 'cuCoredumpGetAttribute')             # <<<<<<<<<<<<<<
 *     global __cuCoredumpGetAttributeGlobal
 *     __cuCoredumpGetAttributeGlobal = dlfcn.dlsym(handle, 'cuCoredumpGetAttributeGlobal')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuCoredumpGetAttribute = dlsym(__pyx_v_handle, ((char const *)"cuCoredumpGetAttribute"));

  /* "cuda/_cuda/ccuda.pyx":2558
 *     __cuCoredumpGetAttribute = dlfcn.dlsym(handle, 'cuCoredumpGetAttribute')
 *     global __cuCoredumpGetAttributeGlobal
 *     __cuCoredumpGetAttributeGlobal = dlfcn.dlsym(handle, 'cuCoredumpGetAttributeGlobal')             # <<<<<<<<<<<<<<
 *     global __cuCoredumpSetAttribute
 *     __cuCoredumpSetAttribute = dlfcn.dlsym(handle, 'cuCoredumpSetAttribute')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuCoredumpGetAttributeGlobal = dlsym(__pyx_v_handle, ((char const *)"cuCoredumpGetAttributeGlobal"));

  /* "cuda/_cuda/ccuda.pyx":2560
 *     __cuCoredumpGetAttributeGlobal = dlfcn.dlsym(handle, 'cuCoredumpGetAttributeGlobal')
 *     global __cuCoredumpSetAttribute
 *     __cuCoredumpSetAttribute = dlfcn.dlsym(handle, 'cuCoredumpSetAttribute')             # <<<<<<<<<<<<<<
 *     global __cuCoredumpSetAttributeGlobal
 *     __cuCoredumpSetAttributeGlobal = dlfcn.dlsym(handle, 'cuCoredumpSetAttributeGlobal')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuCoredumpSetAttribute = dlsym(__pyx_v_handle, ((char const *)"cuCoredumpSetAttribute"));

  /* "cuda/_cuda/ccuda.pyx":2562
 *     __cuCoredumpSetAttribute = dlfcn.dlsym(handle, 'cuCoredumpSetAttribute')
 *     global __cuCoredumpSetAttributeGlobal
 *     __cuCoredumpSetAttributeGlobal = dlfcn.dlsym(handle, 'cuCoredumpSetAttributeGlobal')             # <<<<<<<<<<<<<<
 *     global __cuGetExportTable
 *     __cuGetExportTable = dlfcn.dlsym(handle, 'cuGetExportTable')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuCoredumpSetAttributeGlobal = dlsym(__pyx_v_handle, ((char const *)"cuCoredumpSetAttributeGlobal"));

  /* "cuda/_cuda/ccuda.pyx":2564
 *     __cuCoredumpSetAttributeGlobal = dlfcn.dlsym(handle, 'cuCoredumpSetAttributeGlobal')
 *     global __cuGetExportTable
 *     __cuGetExportTable = dlfcn.dlsym(handle, 'cuGetExportTable')             # <<<<<<<<<<<<<<
 *     global __cuGreenCtxCreate
 *     __cuGreenCtxCreate = dlfcn.dlsym(handle, 'cuGreenCtxCreate')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuGetExportTable = dlsym(__pyx_v_handle, ((char const *)"cuGetExportTable"));

  /* "cuda/_cuda/ccuda.pyx":2566
 *     __cuGetExportTable = dlfcn.dlsym(handle, 'cuGetExportTable')
 *     global __cuGreenCtxCreate
 *     __cuGreenCtxCreate = dlfcn.dlsym(handle, 'cuGreenCtxCreate')             # <<<<<<<<<<<<<<
 *     global __cuGreenCtxDestroy
 *     __cuGreenCtxDestroy = dlfcn.dlsym(handle, 'cuGreenCtxDestroy')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuGreenCtxCreate = dlsym(__pyx_v_handle, ((char const *)"cuGreenCtxCreate"));

  /* "cuda/_cuda/ccuda.pyx":2568
 *     __cuGreenCtxCreate = dlfcn.dlsym(handle, 'cuGreenCtxCreate')
 *     global __cuGreenCtxDestroy
 *     __cuGreenCtxDestroy = dlfcn.dlsym(handle, 'cuGreenCtxDestroy')             # <<<<<<<<<<<<<<
 *     global __cuCtxFromGreenCtx
 *     __cuCtxFromGreenCtx = dlfcn.dlsym(handle, 'cuCtxFromGreenCtx')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuGreenCtxDestroy = dlsym(__pyx_v_handle, ((char const *)"cuGreenCtxDestroy"));

  /* "cuda/_cuda/ccuda.pyx":2570
 *     __cuGreenCtxDestroy = dlfcn.dlsym(handle, 'cuGreenCtxDestroy')
 *     global __cuCtxFromGreenCtx
 *     __cuCtxFromGreenCtx = dlfcn.dlsym(handle, 'cuCtxFromGreenCtx')             # <<<<<<<<<<<<<<
 *     global __cuDeviceGetDevResource
 *     __cuDeviceGetDevResource = dlfcn.dlsym(handle, 'cuDeviceGetDevResource')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuCtxFromGreenCtx = dlsym(__pyx_v_handle, ((char const *)"cuCtxFromGreenCtx"));

  /* "cuda/_cuda/ccuda.pyx":2572
 *     __cuCtxFromGreenCtx = dlfcn.dlsym(handle, 'cuCtxFromGreenCtx')
 *     global __cuDeviceGetDevResource
 *     __cuDeviceGetDevResource = dlfcn.dlsym(handle, 'cuDeviceGetDevResource')             # <<<<<<<<<<<<<<
 *     global __cuCtxGetDevResource
 *     __cuCtxGetDevResource = dlfcn.dlsym(handle, 'cuCtxGetDevResource')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuDeviceGetDevResource = dlsym(__pyx_v_handle, ((char const *)"cuDeviceGetDevResource"));

  /* "cuda/_cuda/ccuda.pyx":2574
 *     __cuDeviceGetDevResource = dlfcn.dlsym(handle, 'cuDeviceGetDevResource')
 *     global __cuCtxGetDevResource
 *     __cuCtxGetDevResource = dlfcn.dlsym(handle, 'cuCtxGetDevResource')             # <<<<<<<<<<<<<<
 *     global __cuGreenCtxGetDevResource
 *     __cuGreenCtxGetDevResource = dlfcn.dlsym(handle, 'cuGreenCtxGetDevResource')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuCtxGetDevResource = dlsym(__pyx_v_handle, ((char const *)"cuCtxGetDevResource"));

  /* "cuda/_cuda/ccuda.pyx":2576
 *     __cuCtxGetDevResource = dlfcn.dlsym(handle, 'cuCtxGetDevResource')
 *     global __cuGreenCtxGetDevResource
 *     __cuGreenCtxGetDevResource = dlfcn.dlsym(handle, 'cuGreenCtxGetDevResource')             # <<<<<<<<<<<<<<
 *     global __cuDevSmResourceSplitByCount
 *     __cuDevSmResourceSplitByCount = dlfcn.dlsym(handle, 'cuDevSmResourceSplitByCount')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuGreenCtxGetDevResource = dlsym(__pyx_v_handle, ((char const *)"cuGreenCtxGetDevResource"));

  /* "cuda/_cuda/ccuda.pyx":2578
 *     __cuGreenCtxGetDevResource = dlfcn.dlsym(handle, 'cuGreenCtxGetDevResource')
 *     global __cuDevSmResourceSplitByCount
 *     __cuDevSmResourceSplitByCount = dlfcn.dlsym(handle, 'cuDevSmResourceSplitByCount')             # <<<<<<<<<<<<<<
 *     global __cuDevResourceGenerateDesc
 *     __cuDevResourceGenerateDesc = dlfcn.dlsym(handle, 'cuDevResourceGenerateDesc')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuDevSmResourceSplitByCount = dlsym(__pyx_v_handle, ((char const *)"cuDevSmResourceSplitByCount"));

  /* "cuda/_cuda/ccuda.pyx":2580
 *     __cuDevSmResourceSplitByCount = dlfcn.dlsym(handle, 'cuDevSmResourceSplitByCount')
 *     global __cuDevResourceGenerateDesc
 *     __cuDevResourceGenerateDesc = dlfcn.dlsym(handle, 'cuDevResourceGenerateDesc')             # <<<<<<<<<<<<<<
 *     global __cuGreenCtxRecordEvent
 *     __cuGreenCtxRecordEvent = dlfcn.dlsym(handle, 'cuGreenCtxRecordEvent')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuDevResourceGenerateDesc = dlsym(__pyx_v_handle, ((char const *)"cuDevResourceGenerateDesc"));

  /* "cuda/_cuda/ccuda.pyx":2582
 *     __cuDevResourceGenerateDesc = dlfcn.dlsym(handle, 'cuDevResourceGenerateDesc')
 *     global __cuGreenCtxRecordEvent
 *     __cuGreenCtxRecordEvent = dlfcn.dlsym(handle, 'cuGreenCtxRecordEvent')             # <<<<<<<<<<<<<<
 *     global __cuGreenCtxWaitEvent
 *     __cuGreenCtxWaitEvent = dlfcn.dlsym(handle, 'cuGreenCtxWaitEvent')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuGreenCtxRecordEvent = dlsym(__pyx_v_handle, ((char const *)"cuGreenCtxRecordEvent"));

  /* "cuda/_cuda/ccuda.pyx":2584
 *     __cuGreenCtxRecordEvent = dlfcn.dlsym(handle, 'cuGreenCtxRecordEvent')
 *     global __cuGreenCtxWaitEvent
 *     __cuGreenCtxWaitEvent = dlfcn.dlsym(handle, 'cuGreenCtxWaitEvent')             # <<<<<<<<<<<<<<
 *     global __cuStreamGetGreenCtx
 *     __cuStreamGetGreenCtx = dlfcn.dlsym(handle, 'cuStreamGetGreenCtx')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuGreenCtxWaitEvent = dlsym(__pyx_v_handle, ((char const *)"cuGreenCtxWaitEvent"));

  /* "cuda/_cuda/ccuda.pyx":2586
 *     __cuGreenCtxWaitEvent = dlfcn.dlsym(handle, 'cuGreenCtxWaitEvent')
 *     global __cuStreamGetGreenCtx
 *     __cuStreamGetGreenCtx = dlfcn.dlsym(handle, 'cuStreamGetGreenCtx')             # <<<<<<<<<<<<<<
 *     global __cuProfilerStart
 *     __cuProfilerStart = dlfcn.dlsym(handle, 'cuProfilerStart')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuStreamGetGreenCtx = dlsym(__pyx_v_handle, ((char const *)"cuStreamGetGreenCtx"));

  /* "cuda/_cuda/ccuda.pyx":2588
 *     __cuStreamGetGreenCtx = dlfcn.dlsym(handle, 'cuStreamGetGreenCtx')
 *     global __cuProfilerStart
 *     __cuProfilerStart = dlfcn.dlsym(handle, 'cuProfilerStart')             # <<<<<<<<<<<<<<
 *     global __cuProfilerStop
 *     __cuProfilerStop = dlfcn.dlsym(handle, 'cuProfilerStop')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuProfilerStart = dlsym(__pyx_v_handle, ((char const *)"cuProfilerStart"));

  /* "cuda/_cuda/ccuda.pyx":2590
 *     __cuProfilerStart = dlfcn.dlsym(handle, 'cuProfilerStart')
 *     global __cuProfilerStop
 *     __cuProfilerStop = dlfcn.dlsym(handle, 'cuProfilerStop')             # <<<<<<<<<<<<<<
 *     global __cuGraphicsEGLRegisterImage
 *     __cuGraphicsEGLRegisterImage = dlfcn.dlsym(handle, 'cuGraphicsEGLRegisterImage')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuProfilerStop = dlsym(__pyx_v_handle, ((char const *)"cuProfilerStop"));

  /* "cuda/_cuda/ccuda.pyx":2592
 *     __cuProfilerStop = dlfcn.dlsym(handle, 'cuProfilerStop')
 *     global __cuGraphicsEGLRegisterImage
 *     __cuGraphicsEGLRegisterImage = dlfcn.dlsym(handle, 'cuGraphicsEGLRegisterImage')             # <<<<<<<<<<<<<<
 *     global __cuEGLStreamConsumerConnect
 *     __cuEGLStreamConsumerConnect = dlfcn.dlsym(handle, 'cuEGLStreamConsumerConnect')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuGraphicsEGLRegisterImage = dlsym(__pyx_v_handle, ((char const *)"cuGraphicsEGLRegisterImage"));

  /* "cuda/_cuda/ccuda.pyx":2594
 *     __cuGraphicsEGLRegisterImage = dlfcn.dlsym(handle, 'cuGraphicsEGLRegisterImage')
 *     global __cuEGLStreamConsumerConnect
 *     __cuEGLStreamConsumerConnect = dlfcn.dlsym(handle, 'cuEGLStreamConsumerConnect')             # <<<<<<<<<<<<<<
 *     global __cuEGLStreamConsumerConnectWithFlags
 *     __cuEGLStreamConsumerConnectWithFlags = dlfcn.dlsym(handle, 'cuEGLStreamConsumerConnectWithFlags')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuEGLStreamConsumerConnect = dlsym(__pyx_v_handle, ((char const *)"cuEGLStreamConsumerConnect"));

  /* "cuda/_cuda/ccuda.pyx":2596
 *     __cuEGLStreamConsumerConnect = dlfcn.dlsym(handle, 'cuEGLStreamConsumerConnect')
 *     global __cuEGLStreamConsumerConnectWithFlags
 *     __cuEGLStreamConsumerConnectWithFlags = dlfcn.dlsym(handle, 'cuEGLStreamConsumerConnectWithFlags')             # <<<<<<<<<<<<<<
 *     global __cuEGLStreamConsumerDisconnect
 *     __cuEGLStreamConsumerDisconnect = dlfcn.dlsym(handle, 'cuEGLStreamConsumerDisconnect')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuEGLStreamConsumerConnectWithFlags = dlsym(__pyx_v_handle, ((char const *)"cuEGLStreamConsumerConnectWithFlags"));

  /* "cuda/_cuda/ccuda.pyx":2598
 *     __cuEGLStreamConsumerConnectWithFlags = dlfcn.dlsym(handle, 'cuEGLStreamConsumerConnectWithFlags')
 *     global __cuEGLStreamConsumerDisconnect
 *     __cuEGLStreamConsumerDisconnect = dlfcn.dlsym(handle, 'cuEGLStreamConsumerDisconnect')             # <<<<<<<<<<<<<<
 *     global __cuEGLStreamConsumerAcquireFrame
 *     __cuEGLStreamConsumerAcquireFrame = dlfcn.dlsym(handle, 'cuEGLStreamConsumerAcquireFrame')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuEGLStreamConsumerDisconnect = dlsym(__pyx_v_handle, ((char const *)"cuEGLStreamConsumerDisconnect"));

  /* "cuda/_cuda/ccuda.pyx":2600
 *     __cuEGLStreamConsumerDisconnect = dlfcn.dlsym(handle, 'cuEGLStreamConsumerDisconnect')
 *     global __cuEGLStreamConsumerAcquireFrame
 *     __cuEGLStreamConsumerAcquireFrame = dlfcn.dlsym(handle, 'cuEGLStreamConsumerAcquireFrame')             # <<<<<<<<<<<<<<
 *     global __cuEGLStreamConsumerReleaseFrame
 *     __cuEGLStreamConsumerReleaseFrame = dlfcn.dlsym(handle, 'cuEGLStreamConsumerReleaseFrame')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuEGLStreamConsumerAcquireFrame = dlsym(__pyx_v_handle, ((char const *)"cuEGLStreamConsumerAcquireFrame"));

  /* "cuda/_cuda/ccuda.pyx":2602
 *     __cuEGLStreamConsumerAcquireFrame = dlfcn.dlsym(handle, 'cuEGLStreamConsumerAcquireFrame')
 *     global __cuEGLStreamConsumerReleaseFrame
 *     __cuEGLStreamConsumerReleaseFrame = dlfcn.dlsym(handle, 'cuEGLStreamConsumerReleaseFrame')             # <<<<<<<<<<<<<<
 *     global __cuEGLStreamProducerConnect
 *     __cuEGLStreamProducerConnect = dlfcn.dlsym(handle, 'cuEGLStreamProducerConnect')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuEGLStreamConsumerReleaseFrame = dlsym(__pyx_v_handle, ((char const *)"cuEGLStreamConsumerReleaseFrame"));

  /* "cuda/_cuda/ccuda.pyx":2604
 *     __cuEGLStreamConsumerReleaseFrame = dlfcn.dlsym(handle, 'cuEGLStreamConsumerReleaseFrame')
 *     global __cuEGLStreamProducerConnect
 *     __cuEGLStreamProducerConnect = dlfcn.dlsym(handle, 'cuEGLStreamProducerConnect')             # <<<<<<<<<<<<<<
 *     global __cuEGLStreamProducerDisconnect
 *     __cuEGLStreamProducerDisconnect = dlfcn.dlsym(handle, 'cuEGLStreamProducerDisconnect')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuEGLStreamProducerConnect = dlsym(__pyx_v_handle, ((char const *)"cuEGLStreamProducerConnect"));

  /* "cuda/_cuda/ccuda.pyx":2606
 *     __cuEGLStreamProducerConnect = dlfcn.dlsym(handle, 'cuEGLStreamProducerConnect')
 *     global __cuEGLStreamProducerDisconnect
 *     __cuEGLStreamProducerDisconnect = dlfcn.dlsym(handle, 'cuEGLStreamProducerDisconnect')             # <<<<<<<<<<<<<<
 *     global __cuEGLStreamProducerPresentFrame
 *     __cuEGLStreamProducerPresentFrame = dlfcn.dlsym(handle, 'cuEGLStreamProducerPresentFrame')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuEGLStreamProducerDisconnect = dlsym(__pyx_v_handle, ((char const *)"cuEGLStreamProducerDisconnect"));

  /* "cuda/_cuda/ccuda.pyx":2608
 *     __cuEGLStreamProducerDisconnect = dlfcn.dlsym(handle, 'cuEGLStreamProducerDisconnect')
 *     global __cuEGLStreamProducerPresentFrame
 *     __cuEGLStreamProducerPresentFrame = dlfcn.dlsym(handle, 'cuEGLStreamProducerPresentFrame')             # <<<<<<<<<<<<<<
 *     global __cuEGLStreamProducerReturnFrame
 *     __cuEGLStreamProducerReturnFrame = dlfcn.dlsym(handle, 'cuEGLStreamProducerReturnFrame')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuEGLStreamProducerPresentFrame = dlsym(__pyx_v_handle, ((char const *)"cuEGLStreamProducerPresentFrame"));

  /* "cuda/_cuda/ccuda.pyx":2610
 *     __cuEGLStreamProducerPresentFrame = dlfcn.dlsym(handle, 'cuEGLStreamProducerPresentFrame')
 *     global __cuEGLStreamProducerReturnFrame
 *     __cuEGLStreamProducerReturnFrame = dlfcn.dlsym(handle, 'cuEGLStreamProducerReturnFrame')             # <<<<<<<<<<<<<<
 *     global __cuGraphicsResourceGetMappedEglFrame
 *     __cuGraphicsResourceGetMappedEglFrame = dlfcn.dlsym(handle, 'cuGraphicsResourceGetMappedEglFrame')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuEGLStreamProducerReturnFrame = dlsym(__pyx_v_handle, ((char const *)"cuEGLStreamProducerReturnFrame"));

  /* "cuda/_cuda/ccuda.pyx":2612
 *     __cuEGLStreamProducerReturnFrame = dlfcn.dlsym(handle, 'cuEGLStreamProducerReturnFrame')
 *     global __cuGraphicsResourceGetMappedEglFrame
 *     __cuGraphicsResourceGetMappedEglFrame = dlfcn.dlsym(handle, 'cuGraphicsResourceGetMappedEglFrame')             # <<<<<<<<<<<<<<
 *     global __cuEventCreateFromEGLSync
 *     __cuEventCreateFromEGLSync = dlfcn.dlsym(handle, 'cuEventCreateFromEGLSync')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuGraphicsResourceGetMappedEglFrame = dlsym(__pyx_v_handle, ((char const *)"cuGraphicsResourceGetMappedEglFrame"));

  /* "cuda/_cuda/ccuda.pyx":2614
 *     __cuGraphicsResourceGetMappedEglFrame = dlfcn.dlsym(handle, 'cuGraphicsResourceGetMappedEglFrame')
 *     global __cuEventCreateFromEGLSync
 *     __cuEventCreateFromEGLSync = dlfcn.dlsym(handle, 'cuEventCreateFromEGLSync')             # <<<<<<<<<<<<<<
 *     global __cuGraphicsGLRegisterBuffer
 *     __cuGraphicsGLRegisterBuffer = dlfcn.dlsym(handle, 'cuGraphicsGLRegisterBuffer')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuEventCreateFromEGLSync = dlsym(__pyx_v_handle, ((char const *)"cuEventCreateFromEGLSync"));

  /* "cuda/_cuda/ccuda.pyx":2616
 *     __cuEventCreateFromEGLSync = dlfcn.dlsym(handle, 'cuEventCreateFromEGLSync')
 *     global __cuGraphicsGLRegisterBuffer
 *     __cuGraphicsGLRegisterBuffer = dlfcn.dlsym(handle, 'cuGraphicsGLRegisterBuffer')             # <<<<<<<<<<<<<<
 *     global __cuGraphicsGLRegisterImage
 *     __cuGraphicsGLRegisterImage = dlfcn.dlsym(handle, 'cuGraphicsGLRegisterImage')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuGraphicsGLRegisterBuffer = dlsym(__pyx_v_handle, ((char const *)"cuGraphicsGLRegisterBuffer"));

  /* "cuda/_cuda/ccuda.pyx":2618
 *     __cuGraphicsGLRegisterBuffer = dlfcn.dlsym(handle, 'cuGraphicsGLRegisterBuffer')
 *     global __cuGraphicsGLRegisterImage
 *     __cuGraphicsGLRegisterImage = dlfcn.dlsym(handle, 'cuGraphicsGLRegisterImage')             # <<<<<<<<<<<<<<
 *     global __cuGLGetDevices_v2
 *     __cuGLGetDevices_v2 = dlfcn.dlsym(handle, 'cuGLGetDevices_v2')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuGraphicsGLRegisterImage = dlsym(__pyx_v_handle, ((char const *)"cuGraphicsGLRegisterImage"));

  /* "cuda/_cuda/ccuda.pyx":2620
 *     __cuGraphicsGLRegisterImage = dlfcn.dlsym(handle, 'cuGraphicsGLRegisterImage')
 *     global __cuGLGetDevices_v2
 *     __cuGLGetDevices_v2 = dlfcn.dlsym(handle, 'cuGLGetDevices_v2')             # <<<<<<<<<<<<<<
 *     global __cuVDPAUGetDevice
 *     __cuVDPAUGetDevice = dlfcn.dlsym(handle, 'cuVDPAUGetDevice')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuGLGetDevices_v2 = dlsym(__pyx_v_handle, ((char const *)"cuGLGetDevices_v2"));

  /* "cuda/_cuda/ccuda.pyx":2622
 *     __cuGLGetDevices_v2 = dlfcn.dlsym(handle, 'cuGLGetDevices_v2')
 *     global __cuVDPAUGetDevice
 *     __cuVDPAUGetDevice = dlfcn.dlsym(handle, 'cuVDPAUGetDevice')             # <<<<<<<<<<<<<<
 *     global __cuVDPAUCtxCreate_v2
 *     __cuVDPAUCtxCreate_v2 = dlfcn.dlsym(handle, 'cuVDPAUCtxCreate_v2')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuVDPAUGetDevice = dlsym(__pyx_v_handle, ((char const *)"cuVDPAUGetDevice"));

  /* "cuda/_cuda/ccuda.pyx":2624
 *     __cuVDPAUGetDevice = dlfcn.dlsym(handle, 'cuVDPAUGetDevice')
 *     global __cuVDPAUCtxCreate_v2
 *     __cuVDPAUCtxCreate_v2 = dlfcn.dlsym(handle, 'cuVDPAUCtxCreate_v2')             # <<<<<<<<<<<<<<
 *     global __cuGraphicsVDPAURegisterVideoSurface
 *     __cuGraphicsVDPAURegisterVideoSurface = dlfcn.dlsym(handle, 'cuGraphicsVDPAURegisterVideoSurface')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuVDPAUCtxCreate_v2 = dlsym(__pyx_v_handle, ((char const *)"cuVDPAUCtxCreate_v2"));

  /* "cuda/_cuda/ccuda.pyx":2626
 *     __cuVDPAUCtxCreate_v2 = dlfcn.dlsym(handle, 'cuVDPAUCtxCreate_v2')
 *     global __cuGraphicsVDPAURegisterVideoSurface
 *     __cuGraphicsVDPAURegisterVideoSurface = dlfcn.dlsym(handle, 'cuGraphicsVDPAURegisterVideoSurface')             # <<<<<<<<<<<<<<
 *     global __cuGraphicsVDPAURegisterOutputSurface
 *     __cuGraphicsVDPAURegisterOutputSurface = dlfcn.dlsym(handle, 'cuGraphicsVDPAURegisterOutputSurface')
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuGraphicsVDPAURegisterVideoSurface = dlsym(__pyx_v_handle, ((char const *)"cuGraphicsVDPAURegisterVideoSurface"));

  /* "cuda/_cuda/ccuda.pyx":2628
 *     __cuGraphicsVDPAURegisterVideoSurface = dlfcn.dlsym(handle, 'cuGraphicsVDPAURegisterVideoSurface')
 *     global __cuGraphicsVDPAURegisterOutputSurface
 *     __cuGraphicsVDPAURegisterOutputSurface = dlfcn.dlsym(handle, 'cuGraphicsVDPAURegisterOutputSurface')             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuGetErrorString(CUresult error, const char** pStr) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuGraphicsVDPAURegisterOutputSurface = dlsym(__pyx_v_handle, ((char const *)"cuGraphicsVDPAURegisterOutputSurface"));

  /* "cuda/_cuda/ccuda.pyx":464
 * cdef void *__cuGraphicsVDPAURegisterOutputSurface = NULL
 * 
 * cdef int cuPythonInit() except -1 nogil:             # <<<<<<<<<<<<<<
 *     global __cuPythonInit
 *     cdef bint usePTDS
 */

  /* function exit code */
  __pyx_r = 0;
  goto __pyx_L0;
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda.cuPythonInit", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = -1;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_v_path);
  __Pyx_TraceReturn(Py_None, 0);
  __Pyx_RefNannyFinishContext();
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":2630
 *     __cuGraphicsVDPAURegisterOutputSurface = dlfcn.dlsym(handle, 'cuGraphicsVDPAURegisterOutputSurface')
 * 
 * cdef CUresult _cuGetErrorString(CUresult error, const char** pStr) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuGetErrorString
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuGetErrorString(CUresult __pyx_v_error, char const **__pyx_v_pStr) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuGetErrorString", 1);
  __Pyx_TraceCall("_cuGetErrorString", __pyx_f[0], 2630, 1, __PYX_ERR(0, 2630, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":2632
 * cdef CUresult _cuGetErrorString(CUresult error, const char** pStr) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuGetErrorString
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuGetErrorString == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 2632, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":2633
 *     global __cuGetErrorString
 *     cuPythonInit()
 *     if __cuGetErrorString == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuGetErrorString" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuGetErrorString == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":2634
 *     cuPythonInit()
 *     if __cuGetErrorString == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuGetErrorString" not found')
 *     err = (<CUresult (*)(CUresult, const char**) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGetErrorString)(error, pStr)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":2635
 *     if __cuGetErrorString == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuGetErrorString" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUresult, const char**) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGetErrorString)(error, pStr)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__2, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 2635, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 2635, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":2634
 *     cuPythonInit()
 *     if __cuGetErrorString == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuGetErrorString" not found')
 *     err = (<CUresult (*)(CUresult, const char**) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGetErrorString)(error, pStr)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":2633
 *     global __cuGetErrorString
 *     cuPythonInit()
 *     if __cuGetErrorString == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuGetErrorString" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":2636
 *         with gil:
 *             raise RuntimeError('Function "cuGetErrorString" not found')
 *     err = (<CUresult (*)(CUresult, const char**) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGetErrorString)(error, pStr)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUresult, char const **))__pyx_v_4cuda_5_cuda_5ccuda___cuGetErrorString)(__pyx_v_error, __pyx_v_pStr); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 2636, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":2637
 *             raise RuntimeError('Function "cuGetErrorString" not found')
 *     err = (<CUresult (*)(CUresult, const char**) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGetErrorString)(error, pStr)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuGetErrorName(CUresult error, const char** pStr) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":2630
 *     __cuGraphicsVDPAURegisterOutputSurface = dlfcn.dlsym(handle, 'cuGraphicsVDPAURegisterOutputSurface')
 * 
 * cdef CUresult _cuGetErrorString(CUresult error, const char** pStr) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuGetErrorString
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuGetErrorString", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":2639
 *     return err
 * 
 * cdef CUresult _cuGetErrorName(CUresult error, const char** pStr) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuGetErrorName
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuGetErrorName(CUresult __pyx_v_error, char const **__pyx_v_pStr) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuGetErrorName", 1);
  __Pyx_TraceCall("_cuGetErrorName", __pyx_f[0], 2639, 1, __PYX_ERR(0, 2639, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":2641
 * cdef CUresult _cuGetErrorName(CUresult error, const char** pStr) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuGetErrorName
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuGetErrorName == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 2641, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":2642
 *     global __cuGetErrorName
 *     cuPythonInit()
 *     if __cuGetErrorName == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuGetErrorName" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuGetErrorName == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":2643
 *     cuPythonInit()
 *     if __cuGetErrorName == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuGetErrorName" not found')
 *     err = (<CUresult (*)(CUresult, const char**) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGetErrorName)(error, pStr)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":2644
 *     if __cuGetErrorName == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuGetErrorName" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUresult, const char**) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGetErrorName)(error, pStr)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__3, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 2644, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 2644, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":2643
 *     cuPythonInit()
 *     if __cuGetErrorName == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuGetErrorName" not found')
 *     err = (<CUresult (*)(CUresult, const char**) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGetErrorName)(error, pStr)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":2642
 *     global __cuGetErrorName
 *     cuPythonInit()
 *     if __cuGetErrorName == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuGetErrorName" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":2645
 *         with gil:
 *             raise RuntimeError('Function "cuGetErrorName" not found')
 *     err = (<CUresult (*)(CUresult, const char**) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGetErrorName)(error, pStr)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUresult, char const **))__pyx_v_4cuda_5_cuda_5ccuda___cuGetErrorName)(__pyx_v_error, __pyx_v_pStr); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 2645, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":2646
 *             raise RuntimeError('Function "cuGetErrorName" not found')
 *     err = (<CUresult (*)(CUresult, const char**) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGetErrorName)(error, pStr)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuInit(unsigned int Flags) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":2639
 *     return err
 * 
 * cdef CUresult _cuGetErrorName(CUresult error, const char** pStr) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuGetErrorName
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuGetErrorName", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":2648
 *     return err
 * 
 * cdef CUresult _cuInit(unsigned int Flags) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuInit
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuInit(unsigned int __pyx_v_Flags) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuInit", 1);
  __Pyx_TraceCall("_cuInit", __pyx_f[0], 2648, 1, __PYX_ERR(0, 2648, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":2650
 * cdef CUresult _cuInit(unsigned int Flags) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuInit
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuInit == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 2650, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":2651
 *     global __cuInit
 *     cuPythonInit()
 *     if __cuInit == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuInit" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuInit == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":2652
 *     cuPythonInit()
 *     if __cuInit == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuInit" not found')
 *     err = (<CUresult (*)(unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuInit)(Flags)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":2653
 *     if __cuInit == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuInit" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuInit)(Flags)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__4, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 2653, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 2653, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":2652
 *     cuPythonInit()
 *     if __cuInit == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuInit" not found')
 *     err = (<CUresult (*)(unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuInit)(Flags)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":2651
 *     global __cuInit
 *     cuPythonInit()
 *     if __cuInit == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuInit" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":2654
 *         with gil:
 *             raise RuntimeError('Function "cuInit" not found')
 *     err = (<CUresult (*)(unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuInit)(Flags)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(unsigned int))__pyx_v_4cuda_5_cuda_5ccuda___cuInit)(__pyx_v_Flags); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 2654, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":2655
 *             raise RuntimeError('Function "cuInit" not found')
 *     err = (<CUresult (*)(unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuInit)(Flags)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuDriverGetVersion(int* driverVersion) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":2648
 *     return err
 * 
 * cdef CUresult _cuInit(unsigned int Flags) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuInit
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuInit", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":2657
 *     return err
 * 
 * cdef CUresult _cuDriverGetVersion(int* driverVersion) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuDriverGetVersion
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuDriverGetVersion(int *__pyx_v_driverVersion) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuDriverGetVersion", 1);
  __Pyx_TraceCall("_cuDriverGetVersion", __pyx_f[0], 2657, 1, __PYX_ERR(0, 2657, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":2659
 * cdef CUresult _cuDriverGetVersion(int* driverVersion) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuDriverGetVersion
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuDriverGetVersion == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 2659, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":2660
 *     global __cuDriverGetVersion
 *     cuPythonInit()
 *     if __cuDriverGetVersion == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuDriverGetVersion" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuDriverGetVersion == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":2661
 *     cuPythonInit()
 *     if __cuDriverGetVersion == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuDriverGetVersion" not found')
 *     err = (<CUresult (*)(int*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuDriverGetVersion)(driverVersion)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":2662
 *     if __cuDriverGetVersion == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuDriverGetVersion" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(int*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuDriverGetVersion)(driverVersion)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__5, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 2662, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 2662, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":2661
 *     cuPythonInit()
 *     if __cuDriverGetVersion == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuDriverGetVersion" not found')
 *     err = (<CUresult (*)(int*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuDriverGetVersion)(driverVersion)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":2660
 *     global __cuDriverGetVersion
 *     cuPythonInit()
 *     if __cuDriverGetVersion == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuDriverGetVersion" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":2663
 *         with gil:
 *             raise RuntimeError('Function "cuDriverGetVersion" not found')
 *     err = (<CUresult (*)(int*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuDriverGetVersion)(driverVersion)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(int *))__pyx_v_4cuda_5_cuda_5ccuda___cuDriverGetVersion)(__pyx_v_driverVersion); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 2663, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":2664
 *             raise RuntimeError('Function "cuDriverGetVersion" not found')
 *     err = (<CUresult (*)(int*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuDriverGetVersion)(driverVersion)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuDeviceGet(CUdevice* device, int ordinal) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":2657
 *     return err
 * 
 * cdef CUresult _cuDriverGetVersion(int* driverVersion) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuDriverGetVersion
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuDriverGetVersion", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":2666
 *     return err
 * 
 * cdef CUresult _cuDeviceGet(CUdevice* device, int ordinal) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuDeviceGet
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuDeviceGet(CUdevice *__pyx_v_device, int __pyx_v_ordinal) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuDeviceGet", 1);
  __Pyx_TraceCall("_cuDeviceGet", __pyx_f[0], 2666, 1, __PYX_ERR(0, 2666, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":2668
 * cdef CUresult _cuDeviceGet(CUdevice* device, int ordinal) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuDeviceGet
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuDeviceGet == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 2668, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":2669
 *     global __cuDeviceGet
 *     cuPythonInit()
 *     if __cuDeviceGet == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuDeviceGet" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuDeviceGet == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":2670
 *     cuPythonInit()
 *     if __cuDeviceGet == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuDeviceGet" not found')
 *     err = (<CUresult (*)(CUdevice*, int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuDeviceGet)(device, ordinal)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":2671
 *     if __cuDeviceGet == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuDeviceGet" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUdevice*, int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuDeviceGet)(device, ordinal)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__6, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 2671, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 2671, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":2670
 *     cuPythonInit()
 *     if __cuDeviceGet == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuDeviceGet" not found')
 *     err = (<CUresult (*)(CUdevice*, int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuDeviceGet)(device, ordinal)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":2669
 *     global __cuDeviceGet
 *     cuPythonInit()
 *     if __cuDeviceGet == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuDeviceGet" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":2672
 *         with gil:
 *             raise RuntimeError('Function "cuDeviceGet" not found')
 *     err = (<CUresult (*)(CUdevice*, int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuDeviceGet)(device, ordinal)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUdevice *, int))__pyx_v_4cuda_5_cuda_5ccuda___cuDeviceGet)(__pyx_v_device, __pyx_v_ordinal); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 2672, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":2673
 *             raise RuntimeError('Function "cuDeviceGet" not found')
 *     err = (<CUresult (*)(CUdevice*, int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuDeviceGet)(device, ordinal)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuDeviceGetCount(int* count) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":2666
 *     return err
 * 
 * cdef CUresult _cuDeviceGet(CUdevice* device, int ordinal) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuDeviceGet
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuDeviceGet", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":2675
 *     return err
 * 
 * cdef CUresult _cuDeviceGetCount(int* count) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuDeviceGetCount
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuDeviceGetCount(int *__pyx_v_count) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuDeviceGetCount", 1);
  __Pyx_TraceCall("_cuDeviceGetCount", __pyx_f[0], 2675, 1, __PYX_ERR(0, 2675, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":2677
 * cdef CUresult _cuDeviceGetCount(int* count) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuDeviceGetCount
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuDeviceGetCount == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 2677, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":2678
 *     global __cuDeviceGetCount
 *     cuPythonInit()
 *     if __cuDeviceGetCount == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuDeviceGetCount" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuDeviceGetCount == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":2679
 *     cuPythonInit()
 *     if __cuDeviceGetCount == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuDeviceGetCount" not found')
 *     err = (<CUresult (*)(int*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuDeviceGetCount)(count)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":2680
 *     if __cuDeviceGetCount == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuDeviceGetCount" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(int*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuDeviceGetCount)(count)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__7, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 2680, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 2680, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":2679
 *     cuPythonInit()
 *     if __cuDeviceGetCount == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuDeviceGetCount" not found')
 *     err = (<CUresult (*)(int*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuDeviceGetCount)(count)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":2678
 *     global __cuDeviceGetCount
 *     cuPythonInit()
 *     if __cuDeviceGetCount == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuDeviceGetCount" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":2681
 *         with gil:
 *             raise RuntimeError('Function "cuDeviceGetCount" not found')
 *     err = (<CUresult (*)(int*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuDeviceGetCount)(count)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(int *))__pyx_v_4cuda_5_cuda_5ccuda___cuDeviceGetCount)(__pyx_v_count); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 2681, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":2682
 *             raise RuntimeError('Function "cuDeviceGetCount" not found')
 *     err = (<CUresult (*)(int*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuDeviceGetCount)(count)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuDeviceGetName(char* name, int length, CUdevice dev) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":2675
 *     return err
 * 
 * cdef CUresult _cuDeviceGetCount(int* count) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuDeviceGetCount
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuDeviceGetCount", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":2684
 *     return err
 * 
 * cdef CUresult _cuDeviceGetName(char* name, int length, CUdevice dev) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuDeviceGetName
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuDeviceGetName(char *__pyx_v_name, int __pyx_v_length, CUdevice __pyx_v_dev) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuDeviceGetName", 1);
  __Pyx_TraceCall("_cuDeviceGetName", __pyx_f[0], 2684, 1, __PYX_ERR(0, 2684, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":2686
 * cdef CUresult _cuDeviceGetName(char* name, int length, CUdevice dev) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuDeviceGetName
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuDeviceGetName == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 2686, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":2687
 *     global __cuDeviceGetName
 *     cuPythonInit()
 *     if __cuDeviceGetName == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuDeviceGetName" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuDeviceGetName == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":2688
 *     cuPythonInit()
 *     if __cuDeviceGetName == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuDeviceGetName" not found')
 *     err = (<CUresult (*)(char*, int, CUdevice) except ?CUDA_ERROR_NOT_FOUND nogil> __cuDeviceGetName)(name, length, dev)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":2689
 *     if __cuDeviceGetName == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuDeviceGetName" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(char*, int, CUdevice) except ?CUDA_ERROR_NOT_FOUND nogil> __cuDeviceGetName)(name, length, dev)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__8, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 2689, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 2689, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":2688
 *     cuPythonInit()
 *     if __cuDeviceGetName == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuDeviceGetName" not found')
 *     err = (<CUresult (*)(char*, int, CUdevice) except ?CUDA_ERROR_NOT_FOUND nogil> __cuDeviceGetName)(name, length, dev)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":2687
 *     global __cuDeviceGetName
 *     cuPythonInit()
 *     if __cuDeviceGetName == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuDeviceGetName" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":2690
 *         with gil:
 *             raise RuntimeError('Function "cuDeviceGetName" not found')
 *     err = (<CUresult (*)(char*, int, CUdevice) except ?CUDA_ERROR_NOT_FOUND nogil> __cuDeviceGetName)(name, length, dev)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(char *, int, CUdevice))__pyx_v_4cuda_5_cuda_5ccuda___cuDeviceGetName)(__pyx_v_name, __pyx_v_length, __pyx_v_dev); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 2690, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":2691
 *             raise RuntimeError('Function "cuDeviceGetName" not found')
 *     err = (<CUresult (*)(char*, int, CUdevice) except ?CUDA_ERROR_NOT_FOUND nogil> __cuDeviceGetName)(name, length, dev)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuDeviceGetUuid(CUuuid* uuid, CUdevice dev) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":2684
 *     return err
 * 
 * cdef CUresult _cuDeviceGetName(char* name, int length, CUdevice dev) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuDeviceGetName
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuDeviceGetName", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":2693
 *     return err
 * 
 * cdef CUresult _cuDeviceGetUuid(CUuuid* uuid, CUdevice dev) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuDeviceGetUuid
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuDeviceGetUuid(CUuuid *__pyx_v_uuid, CUdevice __pyx_v_dev) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuDeviceGetUuid", 1);
  __Pyx_TraceCall("_cuDeviceGetUuid", __pyx_f[0], 2693, 1, __PYX_ERR(0, 2693, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":2695
 * cdef CUresult _cuDeviceGetUuid(CUuuid* uuid, CUdevice dev) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuDeviceGetUuid
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuDeviceGetUuid == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 2695, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":2696
 *     global __cuDeviceGetUuid
 *     cuPythonInit()
 *     if __cuDeviceGetUuid == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuDeviceGetUuid" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuDeviceGetUuid == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":2697
 *     cuPythonInit()
 *     if __cuDeviceGetUuid == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuDeviceGetUuid" not found')
 *     err = (<CUresult (*)(CUuuid*, CUdevice) except ?CUDA_ERROR_NOT_FOUND nogil> __cuDeviceGetUuid)(uuid, dev)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":2698
 *     if __cuDeviceGetUuid == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuDeviceGetUuid" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUuuid*, CUdevice) except ?CUDA_ERROR_NOT_FOUND nogil> __cuDeviceGetUuid)(uuid, dev)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__9, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 2698, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 2698, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":2697
 *     cuPythonInit()
 *     if __cuDeviceGetUuid == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuDeviceGetUuid" not found')
 *     err = (<CUresult (*)(CUuuid*, CUdevice) except ?CUDA_ERROR_NOT_FOUND nogil> __cuDeviceGetUuid)(uuid, dev)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":2696
 *     global __cuDeviceGetUuid
 *     cuPythonInit()
 *     if __cuDeviceGetUuid == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuDeviceGetUuid" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":2699
 *         with gil:
 *             raise RuntimeError('Function "cuDeviceGetUuid" not found')
 *     err = (<CUresult (*)(CUuuid*, CUdevice) except ?CUDA_ERROR_NOT_FOUND nogil> __cuDeviceGetUuid)(uuid, dev)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUuuid *, CUdevice))__pyx_v_4cuda_5_cuda_5ccuda___cuDeviceGetUuid)(__pyx_v_uuid, __pyx_v_dev); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 2699, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":2700
 *             raise RuntimeError('Function "cuDeviceGetUuid" not found')
 *     err = (<CUresult (*)(CUuuid*, CUdevice) except ?CUDA_ERROR_NOT_FOUND nogil> __cuDeviceGetUuid)(uuid, dev)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuDeviceGetUuid_v2(CUuuid* uuid, CUdevice dev) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":2693
 *     return err
 * 
 * cdef CUresult _cuDeviceGetUuid(CUuuid* uuid, CUdevice dev) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuDeviceGetUuid
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuDeviceGetUuid", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":2702
 *     return err
 * 
 * cdef CUresult _cuDeviceGetUuid_v2(CUuuid* uuid, CUdevice dev) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuDeviceGetUuid_v2
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuDeviceGetUuid_v2(CUuuid *__pyx_v_uuid, CUdevice __pyx_v_dev) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuDeviceGetUuid_v2", 1);
  __Pyx_TraceCall("_cuDeviceGetUuid_v2", __pyx_f[0], 2702, 1, __PYX_ERR(0, 2702, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":2704
 * cdef CUresult _cuDeviceGetUuid_v2(CUuuid* uuid, CUdevice dev) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuDeviceGetUuid_v2
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuDeviceGetUuid_v2 == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 2704, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":2705
 *     global __cuDeviceGetUuid_v2
 *     cuPythonInit()
 *     if __cuDeviceGetUuid_v2 == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuDeviceGetUuid_v2" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuDeviceGetUuid_v2 == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":2706
 *     cuPythonInit()
 *     if __cuDeviceGetUuid_v2 == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuDeviceGetUuid_v2" not found')
 *     err = (<CUresult (*)(CUuuid*, CUdevice) except ?CUDA_ERROR_NOT_FOUND nogil> __cuDeviceGetUuid_v2)(uuid, dev)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":2707
 *     if __cuDeviceGetUuid_v2 == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuDeviceGetUuid_v2" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUuuid*, CUdevice) except ?CUDA_ERROR_NOT_FOUND nogil> __cuDeviceGetUuid_v2)(uuid, dev)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__10, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 2707, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 2707, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":2706
 *     cuPythonInit()
 *     if __cuDeviceGetUuid_v2 == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuDeviceGetUuid_v2" not found')
 *     err = (<CUresult (*)(CUuuid*, CUdevice) except ?CUDA_ERROR_NOT_FOUND nogil> __cuDeviceGetUuid_v2)(uuid, dev)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":2705
 *     global __cuDeviceGetUuid_v2
 *     cuPythonInit()
 *     if __cuDeviceGetUuid_v2 == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuDeviceGetUuid_v2" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":2708
 *         with gil:
 *             raise RuntimeError('Function "cuDeviceGetUuid_v2" not found')
 *     err = (<CUresult (*)(CUuuid*, CUdevice) except ?CUDA_ERROR_NOT_FOUND nogil> __cuDeviceGetUuid_v2)(uuid, dev)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUuuid *, CUdevice))__pyx_v_4cuda_5_cuda_5ccuda___cuDeviceGetUuid_v2)(__pyx_v_uuid, __pyx_v_dev); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 2708, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":2709
 *             raise RuntimeError('Function "cuDeviceGetUuid_v2" not found')
 *     err = (<CUresult (*)(CUuuid*, CUdevice) except ?CUDA_ERROR_NOT_FOUND nogil> __cuDeviceGetUuid_v2)(uuid, dev)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuDeviceGetLuid(char* luid, unsigned int* deviceNodeMask, CUdevice dev) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":2702
 *     return err
 * 
 * cdef CUresult _cuDeviceGetUuid_v2(CUuuid* uuid, CUdevice dev) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuDeviceGetUuid_v2
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuDeviceGetUuid_v2", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":2711
 *     return err
 * 
 * cdef CUresult _cuDeviceGetLuid(char* luid, unsigned int* deviceNodeMask, CUdevice dev) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuDeviceGetLuid
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuDeviceGetLuid(char *__pyx_v_luid, unsigned int *__pyx_v_deviceNodeMask, CUdevice __pyx_v_dev) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuDeviceGetLuid", 1);
  __Pyx_TraceCall("_cuDeviceGetLuid", __pyx_f[0], 2711, 1, __PYX_ERR(0, 2711, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":2713
 * cdef CUresult _cuDeviceGetLuid(char* luid, unsigned int* deviceNodeMask, CUdevice dev) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuDeviceGetLuid
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuDeviceGetLuid == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 2713, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":2714
 *     global __cuDeviceGetLuid
 *     cuPythonInit()
 *     if __cuDeviceGetLuid == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuDeviceGetLuid" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuDeviceGetLuid == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":2715
 *     cuPythonInit()
 *     if __cuDeviceGetLuid == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuDeviceGetLuid" not found')
 *     err = (<CUresult (*)(char*, unsigned int*, CUdevice) except ?CUDA_ERROR_NOT_FOUND nogil> __cuDeviceGetLuid)(luid, deviceNodeMask, dev)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":2716
 *     if __cuDeviceGetLuid == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuDeviceGetLuid" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(char*, unsigned int*, CUdevice) except ?CUDA_ERROR_NOT_FOUND nogil> __cuDeviceGetLuid)(luid, deviceNodeMask, dev)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__11, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 2716, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 2716, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":2715
 *     cuPythonInit()
 *     if __cuDeviceGetLuid == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuDeviceGetLuid" not found')
 *     err = (<CUresult (*)(char*, unsigned int*, CUdevice) except ?CUDA_ERROR_NOT_FOUND nogil> __cuDeviceGetLuid)(luid, deviceNodeMask, dev)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":2714
 *     global __cuDeviceGetLuid
 *     cuPythonInit()
 *     if __cuDeviceGetLuid == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuDeviceGetLuid" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":2717
 *         with gil:
 *             raise RuntimeError('Function "cuDeviceGetLuid" not found')
 *     err = (<CUresult (*)(char*, unsigned int*, CUdevice) except ?CUDA_ERROR_NOT_FOUND nogil> __cuDeviceGetLuid)(luid, deviceNodeMask, dev)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(char *, unsigned int *, CUdevice))__pyx_v_4cuda_5_cuda_5ccuda___cuDeviceGetLuid)(__pyx_v_luid, __pyx_v_deviceNodeMask, __pyx_v_dev); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 2717, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":2718
 *             raise RuntimeError('Function "cuDeviceGetLuid" not found')
 *     err = (<CUresult (*)(char*, unsigned int*, CUdevice) except ?CUDA_ERROR_NOT_FOUND nogil> __cuDeviceGetLuid)(luid, deviceNodeMask, dev)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuDeviceTotalMem_v2(size_t* numbytes, CUdevice dev) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":2711
 *     return err
 * 
 * cdef CUresult _cuDeviceGetLuid(char* luid, unsigned int* deviceNodeMask, CUdevice dev) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuDeviceGetLuid
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuDeviceGetLuid", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":2720
 *     return err
 * 
 * cdef CUresult _cuDeviceTotalMem_v2(size_t* numbytes, CUdevice dev) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuDeviceTotalMem_v2
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuDeviceTotalMem_v2(size_t *__pyx_v_numbytes, CUdevice __pyx_v_dev) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuDeviceTotalMem_v2", 1);
  __Pyx_TraceCall("_cuDeviceTotalMem_v2", __pyx_f[0], 2720, 1, __PYX_ERR(0, 2720, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":2722
 * cdef CUresult _cuDeviceTotalMem_v2(size_t* numbytes, CUdevice dev) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuDeviceTotalMem_v2
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuDeviceTotalMem_v2 == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 2722, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":2723
 *     global __cuDeviceTotalMem_v2
 *     cuPythonInit()
 *     if __cuDeviceTotalMem_v2 == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuDeviceTotalMem_v2" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuDeviceTotalMem_v2 == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":2724
 *     cuPythonInit()
 *     if __cuDeviceTotalMem_v2 == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuDeviceTotalMem_v2" not found')
 *     err = (<CUresult (*)(size_t*, CUdevice) except ?CUDA_ERROR_NOT_FOUND nogil> __cuDeviceTotalMem_v2)(numbytes, dev)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":2725
 *     if __cuDeviceTotalMem_v2 == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuDeviceTotalMem_v2" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(size_t*, CUdevice) except ?CUDA_ERROR_NOT_FOUND nogil> __cuDeviceTotalMem_v2)(numbytes, dev)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__12, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 2725, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 2725, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":2724
 *     cuPythonInit()
 *     if __cuDeviceTotalMem_v2 == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuDeviceTotalMem_v2" not found')
 *     err = (<CUresult (*)(size_t*, CUdevice) except ?CUDA_ERROR_NOT_FOUND nogil> __cuDeviceTotalMem_v2)(numbytes, dev)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":2723
 *     global __cuDeviceTotalMem_v2
 *     cuPythonInit()
 *     if __cuDeviceTotalMem_v2 == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuDeviceTotalMem_v2" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":2726
 *         with gil:
 *             raise RuntimeError('Function "cuDeviceTotalMem_v2" not found')
 *     err = (<CUresult (*)(size_t*, CUdevice) except ?CUDA_ERROR_NOT_FOUND nogil> __cuDeviceTotalMem_v2)(numbytes, dev)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(size_t *, CUdevice))__pyx_v_4cuda_5_cuda_5ccuda___cuDeviceTotalMem_v2)(__pyx_v_numbytes, __pyx_v_dev); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 2726, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":2727
 *             raise RuntimeError('Function "cuDeviceTotalMem_v2" not found')
 *     err = (<CUresult (*)(size_t*, CUdevice) except ?CUDA_ERROR_NOT_FOUND nogil> __cuDeviceTotalMem_v2)(numbytes, dev)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuDeviceGetTexture1DLinearMaxWidth(size_t* maxWidthInElements, CUarray_format pformat, unsigned numChannels, CUdevice dev) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":2720
 *     return err
 * 
 * cdef CUresult _cuDeviceTotalMem_v2(size_t* numbytes, CUdevice dev) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuDeviceTotalMem_v2
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuDeviceTotalMem_v2", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":2729
 *     return err
 * 
 * cdef CUresult _cuDeviceGetTexture1DLinearMaxWidth(size_t* maxWidthInElements, CUarray_format pformat, unsigned numChannels, CUdevice dev) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuDeviceGetTexture1DLinearMaxWidth
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuDeviceGetTexture1DLinearMaxWidth(size_t *__pyx_v_maxWidthInElements, CUarray_format __pyx_v_pformat, unsigned int __pyx_v_numChannels, CUdevice __pyx_v_dev) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuDeviceGetTexture1DLinearMaxWidth", 1);
  __Pyx_TraceCall("_cuDeviceGetTexture1DLinearMaxWidth", __pyx_f[0], 2729, 1, __PYX_ERR(0, 2729, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":2731
 * cdef CUresult _cuDeviceGetTexture1DLinearMaxWidth(size_t* maxWidthInElements, CUarray_format pformat, unsigned numChannels, CUdevice dev) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuDeviceGetTexture1DLinearMaxWidth
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuDeviceGetTexture1DLinearMaxWidth == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 2731, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":2732
 *     global __cuDeviceGetTexture1DLinearMaxWidth
 *     cuPythonInit()
 *     if __cuDeviceGetTexture1DLinearMaxWidth == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuDeviceGetTexture1DLinearMaxWidth" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuDeviceGetTexture1DLinearMaxWidth == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":2733
 *     cuPythonInit()
 *     if __cuDeviceGetTexture1DLinearMaxWidth == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuDeviceGetTexture1DLinearMaxWidth" not found')
 *     err = (<CUresult (*)(size_t*, CUarray_format, unsigned, CUdevice) except ?CUDA_ERROR_NOT_FOUND nogil> __cuDeviceGetTexture1DLinearMaxWidth)(maxWidthInElements, pformat, numChannels, dev)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":2734
 *     if __cuDeviceGetTexture1DLinearMaxWidth == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuDeviceGetTexture1DLinearMaxWidth" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(size_t*, CUarray_format, unsigned, CUdevice) except ?CUDA_ERROR_NOT_FOUND nogil> __cuDeviceGetTexture1DLinearMaxWidth)(maxWidthInElements, pformat, numChannels, dev)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__13, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 2734, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 2734, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":2733
 *     cuPythonInit()
 *     if __cuDeviceGetTexture1DLinearMaxWidth == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuDeviceGetTexture1DLinearMaxWidth" not found')
 *     err = (<CUresult (*)(size_t*, CUarray_format, unsigned, CUdevice) except ?CUDA_ERROR_NOT_FOUND nogil> __cuDeviceGetTexture1DLinearMaxWidth)(maxWidthInElements, pformat, numChannels, dev)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":2732
 *     global __cuDeviceGetTexture1DLinearMaxWidth
 *     cuPythonInit()
 *     if __cuDeviceGetTexture1DLinearMaxWidth == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuDeviceGetTexture1DLinearMaxWidth" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":2735
 *         with gil:
 *             raise RuntimeError('Function "cuDeviceGetTexture1DLinearMaxWidth" not found')
 *     err = (<CUresult (*)(size_t*, CUarray_format, unsigned, CUdevice) except ?CUDA_ERROR_NOT_FOUND nogil> __cuDeviceGetTexture1DLinearMaxWidth)(maxWidthInElements, pformat, numChannels, dev)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(size_t *, CUarray_format, unsigned int, CUdevice))__pyx_v_4cuda_5_cuda_5ccuda___cuDeviceGetTexture1DLinearMaxWidth)(__pyx_v_maxWidthInElements, __pyx_v_pformat, __pyx_v_numChannels, __pyx_v_dev); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 2735, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":2736
 *             raise RuntimeError('Function "cuDeviceGetTexture1DLinearMaxWidth" not found')
 *     err = (<CUresult (*)(size_t*, CUarray_format, unsigned, CUdevice) except ?CUDA_ERROR_NOT_FOUND nogil> __cuDeviceGetTexture1DLinearMaxWidth)(maxWidthInElements, pformat, numChannels, dev)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuDeviceGetAttribute(int* pi, CUdevice_attribute attrib, CUdevice dev) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":2729
 *     return err
 * 
 * cdef CUresult _cuDeviceGetTexture1DLinearMaxWidth(size_t* maxWidthInElements, CUarray_format pformat, unsigned numChannels, CUdevice dev) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuDeviceGetTexture1DLinearMaxWidth
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuDeviceGetTexture1DLinearMaxWidth", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":2738
 *     return err
 * 
 * cdef CUresult _cuDeviceGetAttribute(int* pi, CUdevice_attribute attrib, CUdevice dev) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuDeviceGetAttribute
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuDeviceGetAttribute(int *__pyx_v_pi, CUdevice_attribute __pyx_v_attrib, CUdevice __pyx_v_dev) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuDeviceGetAttribute", 1);
  __Pyx_TraceCall("_cuDeviceGetAttribute", __pyx_f[0], 2738, 1, __PYX_ERR(0, 2738, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":2740
 * cdef CUresult _cuDeviceGetAttribute(int* pi, CUdevice_attribute attrib, CUdevice dev) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuDeviceGetAttribute
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuDeviceGetAttribute == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 2740, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":2741
 *     global __cuDeviceGetAttribute
 *     cuPythonInit()
 *     if __cuDeviceGetAttribute == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuDeviceGetAttribute" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuDeviceGetAttribute == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":2742
 *     cuPythonInit()
 *     if __cuDeviceGetAttribute == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuDeviceGetAttribute" not found')
 *     err = (<CUresult (*)(int*, CUdevice_attribute, CUdevice) except ?CUDA_ERROR_NOT_FOUND nogil> __cuDeviceGetAttribute)(pi, attrib, dev)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":2743
 *     if __cuDeviceGetAttribute == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuDeviceGetAttribute" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(int*, CUdevice_attribute, CUdevice) except ?CUDA_ERROR_NOT_FOUND nogil> __cuDeviceGetAttribute)(pi, attrib, dev)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__14, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 2743, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 2743, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":2742
 *     cuPythonInit()
 *     if __cuDeviceGetAttribute == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuDeviceGetAttribute" not found')
 *     err = (<CUresult (*)(int*, CUdevice_attribute, CUdevice) except ?CUDA_ERROR_NOT_FOUND nogil> __cuDeviceGetAttribute)(pi, attrib, dev)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":2741
 *     global __cuDeviceGetAttribute
 *     cuPythonInit()
 *     if __cuDeviceGetAttribute == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuDeviceGetAttribute" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":2744
 *         with gil:
 *             raise RuntimeError('Function "cuDeviceGetAttribute" not found')
 *     err = (<CUresult (*)(int*, CUdevice_attribute, CUdevice) except ?CUDA_ERROR_NOT_FOUND nogil> __cuDeviceGetAttribute)(pi, attrib, dev)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(int *, CUdevice_attribute, CUdevice))__pyx_v_4cuda_5_cuda_5ccuda___cuDeviceGetAttribute)(__pyx_v_pi, __pyx_v_attrib, __pyx_v_dev); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 2744, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":2745
 *             raise RuntimeError('Function "cuDeviceGetAttribute" not found')
 *     err = (<CUresult (*)(int*, CUdevice_attribute, CUdevice) except ?CUDA_ERROR_NOT_FOUND nogil> __cuDeviceGetAttribute)(pi, attrib, dev)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuDeviceGetNvSciSyncAttributes(void* nvSciSyncAttrList, CUdevice dev, int flags) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":2738
 *     return err
 * 
 * cdef CUresult _cuDeviceGetAttribute(int* pi, CUdevice_attribute attrib, CUdevice dev) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuDeviceGetAttribute
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuDeviceGetAttribute", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":2747
 *     return err
 * 
 * cdef CUresult _cuDeviceGetNvSciSyncAttributes(void* nvSciSyncAttrList, CUdevice dev, int flags) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuDeviceGetNvSciSyncAttributes
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuDeviceGetNvSciSyncAttributes(void *__pyx_v_nvSciSyncAttrList, CUdevice __pyx_v_dev, int __pyx_v_flags) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuDeviceGetNvSciSyncAttributes", 1);
  __Pyx_TraceCall("_cuDeviceGetNvSciSyncAttributes", __pyx_f[0], 2747, 1, __PYX_ERR(0, 2747, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":2749
 * cdef CUresult _cuDeviceGetNvSciSyncAttributes(void* nvSciSyncAttrList, CUdevice dev, int flags) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuDeviceGetNvSciSyncAttributes
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuDeviceGetNvSciSyncAttributes == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 2749, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":2750
 *     global __cuDeviceGetNvSciSyncAttributes
 *     cuPythonInit()
 *     if __cuDeviceGetNvSciSyncAttributes == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuDeviceGetNvSciSyncAttributes" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuDeviceGetNvSciSyncAttributes == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":2751
 *     cuPythonInit()
 *     if __cuDeviceGetNvSciSyncAttributes == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuDeviceGetNvSciSyncAttributes" not found')
 *     err = (<CUresult (*)(void*, CUdevice, int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuDeviceGetNvSciSyncAttributes)(nvSciSyncAttrList, dev, flags)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":2752
 *     if __cuDeviceGetNvSciSyncAttributes == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuDeviceGetNvSciSyncAttributes" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(void*, CUdevice, int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuDeviceGetNvSciSyncAttributes)(nvSciSyncAttrList, dev, flags)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__15, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 2752, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 2752, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":2751
 *     cuPythonInit()
 *     if __cuDeviceGetNvSciSyncAttributes == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuDeviceGetNvSciSyncAttributes" not found')
 *     err = (<CUresult (*)(void*, CUdevice, int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuDeviceGetNvSciSyncAttributes)(nvSciSyncAttrList, dev, flags)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":2750
 *     global __cuDeviceGetNvSciSyncAttributes
 *     cuPythonInit()
 *     if __cuDeviceGetNvSciSyncAttributes == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuDeviceGetNvSciSyncAttributes" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":2753
 *         with gil:
 *             raise RuntimeError('Function "cuDeviceGetNvSciSyncAttributes" not found')
 *     err = (<CUresult (*)(void*, CUdevice, int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuDeviceGetNvSciSyncAttributes)(nvSciSyncAttrList, dev, flags)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(void *, CUdevice, int))__pyx_v_4cuda_5_cuda_5ccuda___cuDeviceGetNvSciSyncAttributes)(__pyx_v_nvSciSyncAttrList, __pyx_v_dev, __pyx_v_flags); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 2753, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":2754
 *             raise RuntimeError('Function "cuDeviceGetNvSciSyncAttributes" not found')
 *     err = (<CUresult (*)(void*, CUdevice, int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuDeviceGetNvSciSyncAttributes)(nvSciSyncAttrList, dev, flags)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuDeviceSetMemPool(CUdevice dev, CUmemoryPool pool) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":2747
 *     return err
 * 
 * cdef CUresult _cuDeviceGetNvSciSyncAttributes(void* nvSciSyncAttrList, CUdevice dev, int flags) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuDeviceGetNvSciSyncAttributes
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuDeviceGetNvSciSyncAttributes", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":2756
 *     return err
 * 
 * cdef CUresult _cuDeviceSetMemPool(CUdevice dev, CUmemoryPool pool) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuDeviceSetMemPool
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuDeviceSetMemPool(CUdevice __pyx_v_dev, CUmemoryPool __pyx_v_pool) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuDeviceSetMemPool", 1);
  __Pyx_TraceCall("_cuDeviceSetMemPool", __pyx_f[0], 2756, 1, __PYX_ERR(0, 2756, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":2758
 * cdef CUresult _cuDeviceSetMemPool(CUdevice dev, CUmemoryPool pool) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuDeviceSetMemPool
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuDeviceSetMemPool == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 2758, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":2759
 *     global __cuDeviceSetMemPool
 *     cuPythonInit()
 *     if __cuDeviceSetMemPool == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuDeviceSetMemPool" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuDeviceSetMemPool == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":2760
 *     cuPythonInit()
 *     if __cuDeviceSetMemPool == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuDeviceSetMemPool" not found')
 *     err = (<CUresult (*)(CUdevice, CUmemoryPool) except ?CUDA_ERROR_NOT_FOUND nogil> __cuDeviceSetMemPool)(dev, pool)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":2761
 *     if __cuDeviceSetMemPool == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuDeviceSetMemPool" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUdevice, CUmemoryPool) except ?CUDA_ERROR_NOT_FOUND nogil> __cuDeviceSetMemPool)(dev, pool)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__16, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 2761, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 2761, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":2760
 *     cuPythonInit()
 *     if __cuDeviceSetMemPool == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuDeviceSetMemPool" not found')
 *     err = (<CUresult (*)(CUdevice, CUmemoryPool) except ?CUDA_ERROR_NOT_FOUND nogil> __cuDeviceSetMemPool)(dev, pool)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":2759
 *     global __cuDeviceSetMemPool
 *     cuPythonInit()
 *     if __cuDeviceSetMemPool == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuDeviceSetMemPool" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":2762
 *         with gil:
 *             raise RuntimeError('Function "cuDeviceSetMemPool" not found')
 *     err = (<CUresult (*)(CUdevice, CUmemoryPool) except ?CUDA_ERROR_NOT_FOUND nogil> __cuDeviceSetMemPool)(dev, pool)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUdevice, CUmemoryPool))__pyx_v_4cuda_5_cuda_5ccuda___cuDeviceSetMemPool)(__pyx_v_dev, __pyx_v_pool); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 2762, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":2763
 *             raise RuntimeError('Function "cuDeviceSetMemPool" not found')
 *     err = (<CUresult (*)(CUdevice, CUmemoryPool) except ?CUDA_ERROR_NOT_FOUND nogil> __cuDeviceSetMemPool)(dev, pool)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuDeviceGetMemPool(CUmemoryPool* pool, CUdevice dev) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":2756
 *     return err
 * 
 * cdef CUresult _cuDeviceSetMemPool(CUdevice dev, CUmemoryPool pool) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuDeviceSetMemPool
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuDeviceSetMemPool", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":2765
 *     return err
 * 
 * cdef CUresult _cuDeviceGetMemPool(CUmemoryPool* pool, CUdevice dev) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuDeviceGetMemPool
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuDeviceGetMemPool(CUmemoryPool *__pyx_v_pool, CUdevice __pyx_v_dev) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuDeviceGetMemPool", 1);
  __Pyx_TraceCall("_cuDeviceGetMemPool", __pyx_f[0], 2765, 1, __PYX_ERR(0, 2765, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":2767
 * cdef CUresult _cuDeviceGetMemPool(CUmemoryPool* pool, CUdevice dev) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuDeviceGetMemPool
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuDeviceGetMemPool == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 2767, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":2768
 *     global __cuDeviceGetMemPool
 *     cuPythonInit()
 *     if __cuDeviceGetMemPool == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuDeviceGetMemPool" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuDeviceGetMemPool == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":2769
 *     cuPythonInit()
 *     if __cuDeviceGetMemPool == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuDeviceGetMemPool" not found')
 *     err = (<CUresult (*)(CUmemoryPool*, CUdevice) except ?CUDA_ERROR_NOT_FOUND nogil> __cuDeviceGetMemPool)(pool, dev)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":2770
 *     if __cuDeviceGetMemPool == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuDeviceGetMemPool" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUmemoryPool*, CUdevice) except ?CUDA_ERROR_NOT_FOUND nogil> __cuDeviceGetMemPool)(pool, dev)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__17, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 2770, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 2770, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":2769
 *     cuPythonInit()
 *     if __cuDeviceGetMemPool == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuDeviceGetMemPool" not found')
 *     err = (<CUresult (*)(CUmemoryPool*, CUdevice) except ?CUDA_ERROR_NOT_FOUND nogil> __cuDeviceGetMemPool)(pool, dev)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":2768
 *     global __cuDeviceGetMemPool
 *     cuPythonInit()
 *     if __cuDeviceGetMemPool == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuDeviceGetMemPool" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":2771
 *         with gil:
 *             raise RuntimeError('Function "cuDeviceGetMemPool" not found')
 *     err = (<CUresult (*)(CUmemoryPool*, CUdevice) except ?CUDA_ERROR_NOT_FOUND nogil> __cuDeviceGetMemPool)(pool, dev)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUmemoryPool *, CUdevice))__pyx_v_4cuda_5_cuda_5ccuda___cuDeviceGetMemPool)(__pyx_v_pool, __pyx_v_dev); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 2771, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":2772
 *             raise RuntimeError('Function "cuDeviceGetMemPool" not found')
 *     err = (<CUresult (*)(CUmemoryPool*, CUdevice) except ?CUDA_ERROR_NOT_FOUND nogil> __cuDeviceGetMemPool)(pool, dev)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuDeviceGetDefaultMemPool(CUmemoryPool* pool_out, CUdevice dev) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":2765
 *     return err
 * 
 * cdef CUresult _cuDeviceGetMemPool(CUmemoryPool* pool, CUdevice dev) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuDeviceGetMemPool
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuDeviceGetMemPool", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":2774
 *     return err
 * 
 * cdef CUresult _cuDeviceGetDefaultMemPool(CUmemoryPool* pool_out, CUdevice dev) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuDeviceGetDefaultMemPool
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuDeviceGetDefaultMemPool(CUmemoryPool *__pyx_v_pool_out, CUdevice __pyx_v_dev) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuDeviceGetDefaultMemPool", 1);
  __Pyx_TraceCall("_cuDeviceGetDefaultMemPool", __pyx_f[0], 2774, 1, __PYX_ERR(0, 2774, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":2776
 * cdef CUresult _cuDeviceGetDefaultMemPool(CUmemoryPool* pool_out, CUdevice dev) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuDeviceGetDefaultMemPool
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuDeviceGetDefaultMemPool == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 2776, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":2777
 *     global __cuDeviceGetDefaultMemPool
 *     cuPythonInit()
 *     if __cuDeviceGetDefaultMemPool == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuDeviceGetDefaultMemPool" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuDeviceGetDefaultMemPool == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":2778
 *     cuPythonInit()
 *     if __cuDeviceGetDefaultMemPool == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuDeviceGetDefaultMemPool" not found')
 *     err = (<CUresult (*)(CUmemoryPool*, CUdevice) except ?CUDA_ERROR_NOT_FOUND nogil> __cuDeviceGetDefaultMemPool)(pool_out, dev)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":2779
 *     if __cuDeviceGetDefaultMemPool == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuDeviceGetDefaultMemPool" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUmemoryPool*, CUdevice) except ?CUDA_ERROR_NOT_FOUND nogil> __cuDeviceGetDefaultMemPool)(pool_out, dev)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__18, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 2779, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 2779, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":2778
 *     cuPythonInit()
 *     if __cuDeviceGetDefaultMemPool == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuDeviceGetDefaultMemPool" not found')
 *     err = (<CUresult (*)(CUmemoryPool*, CUdevice) except ?CUDA_ERROR_NOT_FOUND nogil> __cuDeviceGetDefaultMemPool)(pool_out, dev)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":2777
 *     global __cuDeviceGetDefaultMemPool
 *     cuPythonInit()
 *     if __cuDeviceGetDefaultMemPool == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuDeviceGetDefaultMemPool" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":2780
 *         with gil:
 *             raise RuntimeError('Function "cuDeviceGetDefaultMemPool" not found')
 *     err = (<CUresult (*)(CUmemoryPool*, CUdevice) except ?CUDA_ERROR_NOT_FOUND nogil> __cuDeviceGetDefaultMemPool)(pool_out, dev)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUmemoryPool *, CUdevice))__pyx_v_4cuda_5_cuda_5ccuda___cuDeviceGetDefaultMemPool)(__pyx_v_pool_out, __pyx_v_dev); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 2780, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":2781
 *             raise RuntimeError('Function "cuDeviceGetDefaultMemPool" not found')
 *     err = (<CUresult (*)(CUmemoryPool*, CUdevice) except ?CUDA_ERROR_NOT_FOUND nogil> __cuDeviceGetDefaultMemPool)(pool_out, dev)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuDeviceGetExecAffinitySupport(int* pi, CUexecAffinityType typename, CUdevice dev) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":2774
 *     return err
 * 
 * cdef CUresult _cuDeviceGetDefaultMemPool(CUmemoryPool* pool_out, CUdevice dev) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuDeviceGetDefaultMemPool
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuDeviceGetDefaultMemPool", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":2783
 *     return err
 * 
 * cdef CUresult _cuDeviceGetExecAffinitySupport(int* pi, CUexecAffinityType typename, CUdevice dev) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuDeviceGetExecAffinitySupport
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuDeviceGetExecAffinitySupport(int *__pyx_v_pi, CUexecAffinityType __pyx_v_typename, CUdevice __pyx_v_dev) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuDeviceGetExecAffinitySupport", 1);
  __Pyx_TraceCall("_cuDeviceGetExecAffinitySupport", __pyx_f[0], 2783, 1, __PYX_ERR(0, 2783, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":2785
 * cdef CUresult _cuDeviceGetExecAffinitySupport(int* pi, CUexecAffinityType typename, CUdevice dev) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuDeviceGetExecAffinitySupport
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuDeviceGetExecAffinitySupport == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 2785, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":2786
 *     global __cuDeviceGetExecAffinitySupport
 *     cuPythonInit()
 *     if __cuDeviceGetExecAffinitySupport == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuDeviceGetExecAffinitySupport" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuDeviceGetExecAffinitySupport == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":2787
 *     cuPythonInit()
 *     if __cuDeviceGetExecAffinitySupport == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuDeviceGetExecAffinitySupport" not found')
 *     err = (<CUresult (*)(int*, CUexecAffinityType, CUdevice) except ?CUDA_ERROR_NOT_FOUND nogil> __cuDeviceGetExecAffinitySupport)(pi, typename, dev)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":2788
 *     if __cuDeviceGetExecAffinitySupport == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuDeviceGetExecAffinitySupport" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(int*, CUexecAffinityType, CUdevice) except ?CUDA_ERROR_NOT_FOUND nogil> __cuDeviceGetExecAffinitySupport)(pi, typename, dev)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__19, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 2788, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 2788, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":2787
 *     cuPythonInit()
 *     if __cuDeviceGetExecAffinitySupport == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuDeviceGetExecAffinitySupport" not found')
 *     err = (<CUresult (*)(int*, CUexecAffinityType, CUdevice) except ?CUDA_ERROR_NOT_FOUND nogil> __cuDeviceGetExecAffinitySupport)(pi, typename, dev)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":2786
 *     global __cuDeviceGetExecAffinitySupport
 *     cuPythonInit()
 *     if __cuDeviceGetExecAffinitySupport == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuDeviceGetExecAffinitySupport" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":2789
 *         with gil:
 *             raise RuntimeError('Function "cuDeviceGetExecAffinitySupport" not found')
 *     err = (<CUresult (*)(int*, CUexecAffinityType, CUdevice) except ?CUDA_ERROR_NOT_FOUND nogil> __cuDeviceGetExecAffinitySupport)(pi, typename, dev)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(int *, CUexecAffinityType, CUdevice))__pyx_v_4cuda_5_cuda_5ccuda___cuDeviceGetExecAffinitySupport)(__pyx_v_pi, __pyx_v_typename, __pyx_v_dev); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 2789, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":2790
 *             raise RuntimeError('Function "cuDeviceGetExecAffinitySupport" not found')
 *     err = (<CUresult (*)(int*, CUexecAffinityType, CUdevice) except ?CUDA_ERROR_NOT_FOUND nogil> __cuDeviceGetExecAffinitySupport)(pi, typename, dev)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuFlushGPUDirectRDMAWrites(CUflushGPUDirectRDMAWritesTarget target, CUflushGPUDirectRDMAWritesScope scope) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":2783
 *     return err
 * 
 * cdef CUresult _cuDeviceGetExecAffinitySupport(int* pi, CUexecAffinityType typename, CUdevice dev) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuDeviceGetExecAffinitySupport
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuDeviceGetExecAffinitySupport", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":2792
 *     return err
 * 
 * cdef CUresult _cuFlushGPUDirectRDMAWrites(CUflushGPUDirectRDMAWritesTarget target, CUflushGPUDirectRDMAWritesScope scope) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuFlushGPUDirectRDMAWrites
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuFlushGPUDirectRDMAWrites(CUflushGPUDirectRDMAWritesTarget __pyx_v_target, CUflushGPUDirectRDMAWritesScope __pyx_v_scope) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuFlushGPUDirectRDMAWrites", 1);
  __Pyx_TraceCall("_cuFlushGPUDirectRDMAWrites", __pyx_f[0], 2792, 1, __PYX_ERR(0, 2792, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":2794
 * cdef CUresult _cuFlushGPUDirectRDMAWrites(CUflushGPUDirectRDMAWritesTarget target, CUflushGPUDirectRDMAWritesScope scope) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuFlushGPUDirectRDMAWrites
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuFlushGPUDirectRDMAWrites == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 2794, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":2795
 *     global __cuFlushGPUDirectRDMAWrites
 *     cuPythonInit()
 *     if __cuFlushGPUDirectRDMAWrites == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuFlushGPUDirectRDMAWrites" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuFlushGPUDirectRDMAWrites == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":2796
 *     cuPythonInit()
 *     if __cuFlushGPUDirectRDMAWrites == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuFlushGPUDirectRDMAWrites" not found')
 *     err = (<CUresult (*)(CUflushGPUDirectRDMAWritesTarget, CUflushGPUDirectRDMAWritesScope) except ?CUDA_ERROR_NOT_FOUND nogil> __cuFlushGPUDirectRDMAWrites)(target, scope)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":2797
 *     if __cuFlushGPUDirectRDMAWrites == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuFlushGPUDirectRDMAWrites" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUflushGPUDirectRDMAWritesTarget, CUflushGPUDirectRDMAWritesScope) except ?CUDA_ERROR_NOT_FOUND nogil> __cuFlushGPUDirectRDMAWrites)(target, scope)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__20, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 2797, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 2797, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":2796
 *     cuPythonInit()
 *     if __cuFlushGPUDirectRDMAWrites == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuFlushGPUDirectRDMAWrites" not found')
 *     err = (<CUresult (*)(CUflushGPUDirectRDMAWritesTarget, CUflushGPUDirectRDMAWritesScope) except ?CUDA_ERROR_NOT_FOUND nogil> __cuFlushGPUDirectRDMAWrites)(target, scope)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":2795
 *     global __cuFlushGPUDirectRDMAWrites
 *     cuPythonInit()
 *     if __cuFlushGPUDirectRDMAWrites == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuFlushGPUDirectRDMAWrites" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":2798
 *         with gil:
 *             raise RuntimeError('Function "cuFlushGPUDirectRDMAWrites" not found')
 *     err = (<CUresult (*)(CUflushGPUDirectRDMAWritesTarget, CUflushGPUDirectRDMAWritesScope) except ?CUDA_ERROR_NOT_FOUND nogil> __cuFlushGPUDirectRDMAWrites)(target, scope)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUflushGPUDirectRDMAWritesTarget, CUflushGPUDirectRDMAWritesScope))__pyx_v_4cuda_5_cuda_5ccuda___cuFlushGPUDirectRDMAWrites)(__pyx_v_target, __pyx_v_scope); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 2798, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":2799
 *             raise RuntimeError('Function "cuFlushGPUDirectRDMAWrites" not found')
 *     err = (<CUresult (*)(CUflushGPUDirectRDMAWritesTarget, CUflushGPUDirectRDMAWritesScope) except ?CUDA_ERROR_NOT_FOUND nogil> __cuFlushGPUDirectRDMAWrites)(target, scope)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuDeviceGetProperties(CUdevprop* prop, CUdevice dev) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":2792
 *     return err
 * 
 * cdef CUresult _cuFlushGPUDirectRDMAWrites(CUflushGPUDirectRDMAWritesTarget target, CUflushGPUDirectRDMAWritesScope scope) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuFlushGPUDirectRDMAWrites
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuFlushGPUDirectRDMAWrites", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":2801
 *     return err
 * 
 * cdef CUresult _cuDeviceGetProperties(CUdevprop* prop, CUdevice dev) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuDeviceGetProperties
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuDeviceGetProperties(CUdevprop *__pyx_v_prop, CUdevice __pyx_v_dev) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuDeviceGetProperties", 1);
  __Pyx_TraceCall("_cuDeviceGetProperties", __pyx_f[0], 2801, 1, __PYX_ERR(0, 2801, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":2803
 * cdef CUresult _cuDeviceGetProperties(CUdevprop* prop, CUdevice dev) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuDeviceGetProperties
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuDeviceGetProperties == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 2803, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":2804
 *     global __cuDeviceGetProperties
 *     cuPythonInit()
 *     if __cuDeviceGetProperties == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuDeviceGetProperties" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuDeviceGetProperties == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":2805
 *     cuPythonInit()
 *     if __cuDeviceGetProperties == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuDeviceGetProperties" not found')
 *     err = (<CUresult (*)(CUdevprop*, CUdevice) except ?CUDA_ERROR_NOT_FOUND nogil> __cuDeviceGetProperties)(prop, dev)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":2806
 *     if __cuDeviceGetProperties == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuDeviceGetProperties" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUdevprop*, CUdevice) except ?CUDA_ERROR_NOT_FOUND nogil> __cuDeviceGetProperties)(prop, dev)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__21, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 2806, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 2806, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":2805
 *     cuPythonInit()
 *     if __cuDeviceGetProperties == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuDeviceGetProperties" not found')
 *     err = (<CUresult (*)(CUdevprop*, CUdevice) except ?CUDA_ERROR_NOT_FOUND nogil> __cuDeviceGetProperties)(prop, dev)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":2804
 *     global __cuDeviceGetProperties
 *     cuPythonInit()
 *     if __cuDeviceGetProperties == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuDeviceGetProperties" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":2807
 *         with gil:
 *             raise RuntimeError('Function "cuDeviceGetProperties" not found')
 *     err = (<CUresult (*)(CUdevprop*, CUdevice) except ?CUDA_ERROR_NOT_FOUND nogil> __cuDeviceGetProperties)(prop, dev)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUdevprop *, CUdevice))__pyx_v_4cuda_5_cuda_5ccuda___cuDeviceGetProperties)(__pyx_v_prop, __pyx_v_dev); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 2807, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":2808
 *             raise RuntimeError('Function "cuDeviceGetProperties" not found')
 *     err = (<CUresult (*)(CUdevprop*, CUdevice) except ?CUDA_ERROR_NOT_FOUND nogil> __cuDeviceGetProperties)(prop, dev)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuDeviceComputeCapability(int* major, int* minor, CUdevice dev) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":2801
 *     return err
 * 
 * cdef CUresult _cuDeviceGetProperties(CUdevprop* prop, CUdevice dev) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuDeviceGetProperties
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuDeviceGetProperties", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":2810
 *     return err
 * 
 * cdef CUresult _cuDeviceComputeCapability(int* major, int* minor, CUdevice dev) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuDeviceComputeCapability
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuDeviceComputeCapability(int *__pyx_v_major, int *__pyx_v_minor, CUdevice __pyx_v_dev) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuDeviceComputeCapability", 1);
  __Pyx_TraceCall("_cuDeviceComputeCapability", __pyx_f[0], 2810, 1, __PYX_ERR(0, 2810, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":2812
 * cdef CUresult _cuDeviceComputeCapability(int* major, int* minor, CUdevice dev) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuDeviceComputeCapability
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuDeviceComputeCapability == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 2812, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":2813
 *     global __cuDeviceComputeCapability
 *     cuPythonInit()
 *     if __cuDeviceComputeCapability == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuDeviceComputeCapability" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuDeviceComputeCapability == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":2814
 *     cuPythonInit()
 *     if __cuDeviceComputeCapability == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuDeviceComputeCapability" not found')
 *     err = (<CUresult (*)(int*, int*, CUdevice) except ?CUDA_ERROR_NOT_FOUND nogil> __cuDeviceComputeCapability)(major, minor, dev)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":2815
 *     if __cuDeviceComputeCapability == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuDeviceComputeCapability" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(int*, int*, CUdevice) except ?CUDA_ERROR_NOT_FOUND nogil> __cuDeviceComputeCapability)(major, minor, dev)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__22, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 2815, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 2815, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":2814
 *     cuPythonInit()
 *     if __cuDeviceComputeCapability == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuDeviceComputeCapability" not found')
 *     err = (<CUresult (*)(int*, int*, CUdevice) except ?CUDA_ERROR_NOT_FOUND nogil> __cuDeviceComputeCapability)(major, minor, dev)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":2813
 *     global __cuDeviceComputeCapability
 *     cuPythonInit()
 *     if __cuDeviceComputeCapability == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuDeviceComputeCapability" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":2816
 *         with gil:
 *             raise RuntimeError('Function "cuDeviceComputeCapability" not found')
 *     err = (<CUresult (*)(int*, int*, CUdevice) except ?CUDA_ERROR_NOT_FOUND nogil> __cuDeviceComputeCapability)(major, minor, dev)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(int *, int *, CUdevice))__pyx_v_4cuda_5_cuda_5ccuda___cuDeviceComputeCapability)(__pyx_v_major, __pyx_v_minor, __pyx_v_dev); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 2816, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":2817
 *             raise RuntimeError('Function "cuDeviceComputeCapability" not found')
 *     err = (<CUresult (*)(int*, int*, CUdevice) except ?CUDA_ERROR_NOT_FOUND nogil> __cuDeviceComputeCapability)(major, minor, dev)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuDevicePrimaryCtxRetain(CUcontext* pctx, CUdevice dev) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":2810
 *     return err
 * 
 * cdef CUresult _cuDeviceComputeCapability(int* major, int* minor, CUdevice dev) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuDeviceComputeCapability
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuDeviceComputeCapability", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":2819
 *     return err
 * 
 * cdef CUresult _cuDevicePrimaryCtxRetain(CUcontext* pctx, CUdevice dev) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuDevicePrimaryCtxRetain
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuDevicePrimaryCtxRetain(CUcontext *__pyx_v_pctx, CUdevice __pyx_v_dev) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuDevicePrimaryCtxRetain", 1);
  __Pyx_TraceCall("_cuDevicePrimaryCtxRetain", __pyx_f[0], 2819, 1, __PYX_ERR(0, 2819, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":2821
 * cdef CUresult _cuDevicePrimaryCtxRetain(CUcontext* pctx, CUdevice dev) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuDevicePrimaryCtxRetain
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuDevicePrimaryCtxRetain == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 2821, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":2822
 *     global __cuDevicePrimaryCtxRetain
 *     cuPythonInit()
 *     if __cuDevicePrimaryCtxRetain == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuDevicePrimaryCtxRetain" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuDevicePrimaryCtxRetain == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":2823
 *     cuPythonInit()
 *     if __cuDevicePrimaryCtxRetain == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuDevicePrimaryCtxRetain" not found')
 *     err = (<CUresult (*)(CUcontext*, CUdevice) except ?CUDA_ERROR_NOT_FOUND nogil> __cuDevicePrimaryCtxRetain)(pctx, dev)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":2824
 *     if __cuDevicePrimaryCtxRetain == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuDevicePrimaryCtxRetain" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUcontext*, CUdevice) except ?CUDA_ERROR_NOT_FOUND nogil> __cuDevicePrimaryCtxRetain)(pctx, dev)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__23, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 2824, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 2824, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":2823
 *     cuPythonInit()
 *     if __cuDevicePrimaryCtxRetain == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuDevicePrimaryCtxRetain" not found')
 *     err = (<CUresult (*)(CUcontext*, CUdevice) except ?CUDA_ERROR_NOT_FOUND nogil> __cuDevicePrimaryCtxRetain)(pctx, dev)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":2822
 *     global __cuDevicePrimaryCtxRetain
 *     cuPythonInit()
 *     if __cuDevicePrimaryCtxRetain == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuDevicePrimaryCtxRetain" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":2825
 *         with gil:
 *             raise RuntimeError('Function "cuDevicePrimaryCtxRetain" not found')
 *     err = (<CUresult (*)(CUcontext*, CUdevice) except ?CUDA_ERROR_NOT_FOUND nogil> __cuDevicePrimaryCtxRetain)(pctx, dev)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUcontext *, CUdevice))__pyx_v_4cuda_5_cuda_5ccuda___cuDevicePrimaryCtxRetain)(__pyx_v_pctx, __pyx_v_dev); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 2825, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":2826
 *             raise RuntimeError('Function "cuDevicePrimaryCtxRetain" not found')
 *     err = (<CUresult (*)(CUcontext*, CUdevice) except ?CUDA_ERROR_NOT_FOUND nogil> __cuDevicePrimaryCtxRetain)(pctx, dev)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuDevicePrimaryCtxRelease_v2(CUdevice dev) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":2819
 *     return err
 * 
 * cdef CUresult _cuDevicePrimaryCtxRetain(CUcontext* pctx, CUdevice dev) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuDevicePrimaryCtxRetain
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuDevicePrimaryCtxRetain", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":2828
 *     return err
 * 
 * cdef CUresult _cuDevicePrimaryCtxRelease_v2(CUdevice dev) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuDevicePrimaryCtxRelease_v2
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuDevicePrimaryCtxRelease_v2(CUdevice __pyx_v_dev) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuDevicePrimaryCtxRelease_v2", 1);
  __Pyx_TraceCall("_cuDevicePrimaryCtxRelease_v2", __pyx_f[0], 2828, 1, __PYX_ERR(0, 2828, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":2830
 * cdef CUresult _cuDevicePrimaryCtxRelease_v2(CUdevice dev) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuDevicePrimaryCtxRelease_v2
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuDevicePrimaryCtxRelease_v2 == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 2830, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":2831
 *     global __cuDevicePrimaryCtxRelease_v2
 *     cuPythonInit()
 *     if __cuDevicePrimaryCtxRelease_v2 == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuDevicePrimaryCtxRelease_v2" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuDevicePrimaryCtxRelease_v2 == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":2832
 *     cuPythonInit()
 *     if __cuDevicePrimaryCtxRelease_v2 == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuDevicePrimaryCtxRelease_v2" not found')
 *     err = (<CUresult (*)(CUdevice) except ?CUDA_ERROR_NOT_FOUND nogil> __cuDevicePrimaryCtxRelease_v2)(dev)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":2833
 *     if __cuDevicePrimaryCtxRelease_v2 == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuDevicePrimaryCtxRelease_v2" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUdevice) except ?CUDA_ERROR_NOT_FOUND nogil> __cuDevicePrimaryCtxRelease_v2)(dev)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__24, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 2833, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 2833, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":2832
 *     cuPythonInit()
 *     if __cuDevicePrimaryCtxRelease_v2 == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuDevicePrimaryCtxRelease_v2" not found')
 *     err = (<CUresult (*)(CUdevice) except ?CUDA_ERROR_NOT_FOUND nogil> __cuDevicePrimaryCtxRelease_v2)(dev)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":2831
 *     global __cuDevicePrimaryCtxRelease_v2
 *     cuPythonInit()
 *     if __cuDevicePrimaryCtxRelease_v2 == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuDevicePrimaryCtxRelease_v2" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":2834
 *         with gil:
 *             raise RuntimeError('Function "cuDevicePrimaryCtxRelease_v2" not found')
 *     err = (<CUresult (*)(CUdevice) except ?CUDA_ERROR_NOT_FOUND nogil> __cuDevicePrimaryCtxRelease_v2)(dev)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUdevice))__pyx_v_4cuda_5_cuda_5ccuda___cuDevicePrimaryCtxRelease_v2)(__pyx_v_dev); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 2834, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":2835
 *             raise RuntimeError('Function "cuDevicePrimaryCtxRelease_v2" not found')
 *     err = (<CUresult (*)(CUdevice) except ?CUDA_ERROR_NOT_FOUND nogil> __cuDevicePrimaryCtxRelease_v2)(dev)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuDevicePrimaryCtxSetFlags_v2(CUdevice dev, unsigned int flags) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":2828
 *     return err
 * 
 * cdef CUresult _cuDevicePrimaryCtxRelease_v2(CUdevice dev) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuDevicePrimaryCtxRelease_v2
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuDevicePrimaryCtxRelease_v2", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":2837
 *     return err
 * 
 * cdef CUresult _cuDevicePrimaryCtxSetFlags_v2(CUdevice dev, unsigned int flags) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuDevicePrimaryCtxSetFlags_v2
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuDevicePrimaryCtxSetFlags_v2(CUdevice __pyx_v_dev, unsigned int __pyx_v_flags) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuDevicePrimaryCtxSetFlags_v2", 1);
  __Pyx_TraceCall("_cuDevicePrimaryCtxSetFlags_v2", __pyx_f[0], 2837, 1, __PYX_ERR(0, 2837, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":2839
 * cdef CUresult _cuDevicePrimaryCtxSetFlags_v2(CUdevice dev, unsigned int flags) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuDevicePrimaryCtxSetFlags_v2
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuDevicePrimaryCtxSetFlags_v2 == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 2839, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":2840
 *     global __cuDevicePrimaryCtxSetFlags_v2
 *     cuPythonInit()
 *     if __cuDevicePrimaryCtxSetFlags_v2 == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuDevicePrimaryCtxSetFlags_v2" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuDevicePrimaryCtxSetFlags_v2 == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":2841
 *     cuPythonInit()
 *     if __cuDevicePrimaryCtxSetFlags_v2 == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuDevicePrimaryCtxSetFlags_v2" not found')
 *     err = (<CUresult (*)(CUdevice, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuDevicePrimaryCtxSetFlags_v2)(dev, flags)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":2842
 *     if __cuDevicePrimaryCtxSetFlags_v2 == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuDevicePrimaryCtxSetFlags_v2" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUdevice, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuDevicePrimaryCtxSetFlags_v2)(dev, flags)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__25, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 2842, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 2842, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":2841
 *     cuPythonInit()
 *     if __cuDevicePrimaryCtxSetFlags_v2 == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuDevicePrimaryCtxSetFlags_v2" not found')
 *     err = (<CUresult (*)(CUdevice, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuDevicePrimaryCtxSetFlags_v2)(dev, flags)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":2840
 *     global __cuDevicePrimaryCtxSetFlags_v2
 *     cuPythonInit()
 *     if __cuDevicePrimaryCtxSetFlags_v2 == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuDevicePrimaryCtxSetFlags_v2" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":2843
 *         with gil:
 *             raise RuntimeError('Function "cuDevicePrimaryCtxSetFlags_v2" not found')
 *     err = (<CUresult (*)(CUdevice, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuDevicePrimaryCtxSetFlags_v2)(dev, flags)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUdevice, unsigned int))__pyx_v_4cuda_5_cuda_5ccuda___cuDevicePrimaryCtxSetFlags_v2)(__pyx_v_dev, __pyx_v_flags); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 2843, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":2844
 *             raise RuntimeError('Function "cuDevicePrimaryCtxSetFlags_v2" not found')
 *     err = (<CUresult (*)(CUdevice, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuDevicePrimaryCtxSetFlags_v2)(dev, flags)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuDevicePrimaryCtxGetState(CUdevice dev, unsigned int* flags, int* active) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":2837
 *     return err
 * 
 * cdef CUresult _cuDevicePrimaryCtxSetFlags_v2(CUdevice dev, unsigned int flags) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuDevicePrimaryCtxSetFlags_v2
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuDevicePrimaryCtxSetFlags_v2", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":2846
 *     return err
 * 
 * cdef CUresult _cuDevicePrimaryCtxGetState(CUdevice dev, unsigned int* flags, int* active) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuDevicePrimaryCtxGetState
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuDevicePrimaryCtxGetState(CUdevice __pyx_v_dev, unsigned int *__pyx_v_flags, int *__pyx_v_active) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuDevicePrimaryCtxGetState", 1);
  __Pyx_TraceCall("_cuDevicePrimaryCtxGetState", __pyx_f[0], 2846, 1, __PYX_ERR(0, 2846, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":2848
 * cdef CUresult _cuDevicePrimaryCtxGetState(CUdevice dev, unsigned int* flags, int* active) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuDevicePrimaryCtxGetState
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuDevicePrimaryCtxGetState == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 2848, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":2849
 *     global __cuDevicePrimaryCtxGetState
 *     cuPythonInit()
 *     if __cuDevicePrimaryCtxGetState == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuDevicePrimaryCtxGetState" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuDevicePrimaryCtxGetState == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":2850
 *     cuPythonInit()
 *     if __cuDevicePrimaryCtxGetState == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuDevicePrimaryCtxGetState" not found')
 *     err = (<CUresult (*)(CUdevice, unsigned int*, int*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuDevicePrimaryCtxGetState)(dev, flags, active)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":2851
 *     if __cuDevicePrimaryCtxGetState == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuDevicePrimaryCtxGetState" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUdevice, unsigned int*, int*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuDevicePrimaryCtxGetState)(dev, flags, active)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__26, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 2851, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 2851, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":2850
 *     cuPythonInit()
 *     if __cuDevicePrimaryCtxGetState == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuDevicePrimaryCtxGetState" not found')
 *     err = (<CUresult (*)(CUdevice, unsigned int*, int*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuDevicePrimaryCtxGetState)(dev, flags, active)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":2849
 *     global __cuDevicePrimaryCtxGetState
 *     cuPythonInit()
 *     if __cuDevicePrimaryCtxGetState == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuDevicePrimaryCtxGetState" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":2852
 *         with gil:
 *             raise RuntimeError('Function "cuDevicePrimaryCtxGetState" not found')
 *     err = (<CUresult (*)(CUdevice, unsigned int*, int*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuDevicePrimaryCtxGetState)(dev, flags, active)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUdevice, unsigned int *, int *))__pyx_v_4cuda_5_cuda_5ccuda___cuDevicePrimaryCtxGetState)(__pyx_v_dev, __pyx_v_flags, __pyx_v_active); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 2852, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":2853
 *             raise RuntimeError('Function "cuDevicePrimaryCtxGetState" not found')
 *     err = (<CUresult (*)(CUdevice, unsigned int*, int*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuDevicePrimaryCtxGetState)(dev, flags, active)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuDevicePrimaryCtxReset_v2(CUdevice dev) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":2846
 *     return err
 * 
 * cdef CUresult _cuDevicePrimaryCtxGetState(CUdevice dev, unsigned int* flags, int* active) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuDevicePrimaryCtxGetState
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuDevicePrimaryCtxGetState", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":2855
 *     return err
 * 
 * cdef CUresult _cuDevicePrimaryCtxReset_v2(CUdevice dev) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuDevicePrimaryCtxReset_v2
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuDevicePrimaryCtxReset_v2(CUdevice __pyx_v_dev) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuDevicePrimaryCtxReset_v2", 1);
  __Pyx_TraceCall("_cuDevicePrimaryCtxReset_v2", __pyx_f[0], 2855, 1, __PYX_ERR(0, 2855, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":2857
 * cdef CUresult _cuDevicePrimaryCtxReset_v2(CUdevice dev) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuDevicePrimaryCtxReset_v2
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuDevicePrimaryCtxReset_v2 == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 2857, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":2858
 *     global __cuDevicePrimaryCtxReset_v2
 *     cuPythonInit()
 *     if __cuDevicePrimaryCtxReset_v2 == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuDevicePrimaryCtxReset_v2" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuDevicePrimaryCtxReset_v2 == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":2859
 *     cuPythonInit()
 *     if __cuDevicePrimaryCtxReset_v2 == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuDevicePrimaryCtxReset_v2" not found')
 *     err = (<CUresult (*)(CUdevice) except ?CUDA_ERROR_NOT_FOUND nogil> __cuDevicePrimaryCtxReset_v2)(dev)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":2860
 *     if __cuDevicePrimaryCtxReset_v2 == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuDevicePrimaryCtxReset_v2" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUdevice) except ?CUDA_ERROR_NOT_FOUND nogil> __cuDevicePrimaryCtxReset_v2)(dev)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__27, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 2860, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 2860, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":2859
 *     cuPythonInit()
 *     if __cuDevicePrimaryCtxReset_v2 == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuDevicePrimaryCtxReset_v2" not found')
 *     err = (<CUresult (*)(CUdevice) except ?CUDA_ERROR_NOT_FOUND nogil> __cuDevicePrimaryCtxReset_v2)(dev)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":2858
 *     global __cuDevicePrimaryCtxReset_v2
 *     cuPythonInit()
 *     if __cuDevicePrimaryCtxReset_v2 == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuDevicePrimaryCtxReset_v2" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":2861
 *         with gil:
 *             raise RuntimeError('Function "cuDevicePrimaryCtxReset_v2" not found')
 *     err = (<CUresult (*)(CUdevice) except ?CUDA_ERROR_NOT_FOUND nogil> __cuDevicePrimaryCtxReset_v2)(dev)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUdevice))__pyx_v_4cuda_5_cuda_5ccuda___cuDevicePrimaryCtxReset_v2)(__pyx_v_dev); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 2861, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":2862
 *             raise RuntimeError('Function "cuDevicePrimaryCtxReset_v2" not found')
 *     err = (<CUresult (*)(CUdevice) except ?CUDA_ERROR_NOT_FOUND nogil> __cuDevicePrimaryCtxReset_v2)(dev)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuCtxCreate_v2(CUcontext* pctx, unsigned int flags, CUdevice dev) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":2855
 *     return err
 * 
 * cdef CUresult _cuDevicePrimaryCtxReset_v2(CUdevice dev) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuDevicePrimaryCtxReset_v2
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuDevicePrimaryCtxReset_v2", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":2864
 *     return err
 * 
 * cdef CUresult _cuCtxCreate_v2(CUcontext* pctx, unsigned int flags, CUdevice dev) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuCtxCreate_v2
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuCtxCreate_v2(CUcontext *__pyx_v_pctx, unsigned int __pyx_v_flags, CUdevice __pyx_v_dev) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuCtxCreate_v2", 1);
  __Pyx_TraceCall("_cuCtxCreate_v2", __pyx_f[0], 2864, 1, __PYX_ERR(0, 2864, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":2866
 * cdef CUresult _cuCtxCreate_v2(CUcontext* pctx, unsigned int flags, CUdevice dev) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuCtxCreate_v2
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuCtxCreate_v2 == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 2866, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":2867
 *     global __cuCtxCreate_v2
 *     cuPythonInit()
 *     if __cuCtxCreate_v2 == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuCtxCreate_v2" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuCtxCreate_v2 == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":2868
 *     cuPythonInit()
 *     if __cuCtxCreate_v2 == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuCtxCreate_v2" not found')
 *     err = (<CUresult (*)(CUcontext*, unsigned int, CUdevice) except ?CUDA_ERROR_NOT_FOUND nogil> __cuCtxCreate_v2)(pctx, flags, dev)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":2869
 *     if __cuCtxCreate_v2 == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuCtxCreate_v2" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUcontext*, unsigned int, CUdevice) except ?CUDA_ERROR_NOT_FOUND nogil> __cuCtxCreate_v2)(pctx, flags, dev)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__28, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 2869, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 2869, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":2868
 *     cuPythonInit()
 *     if __cuCtxCreate_v2 == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuCtxCreate_v2" not found')
 *     err = (<CUresult (*)(CUcontext*, unsigned int, CUdevice) except ?CUDA_ERROR_NOT_FOUND nogil> __cuCtxCreate_v2)(pctx, flags, dev)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":2867
 *     global __cuCtxCreate_v2
 *     cuPythonInit()
 *     if __cuCtxCreate_v2 == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuCtxCreate_v2" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":2870
 *         with gil:
 *             raise RuntimeError('Function "cuCtxCreate_v2" not found')
 *     err = (<CUresult (*)(CUcontext*, unsigned int, CUdevice) except ?CUDA_ERROR_NOT_FOUND nogil> __cuCtxCreate_v2)(pctx, flags, dev)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUcontext *, unsigned int, CUdevice))__pyx_v_4cuda_5_cuda_5ccuda___cuCtxCreate_v2)(__pyx_v_pctx, __pyx_v_flags, __pyx_v_dev); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 2870, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":2871
 *             raise RuntimeError('Function "cuCtxCreate_v2" not found')
 *     err = (<CUresult (*)(CUcontext*, unsigned int, CUdevice) except ?CUDA_ERROR_NOT_FOUND nogil> __cuCtxCreate_v2)(pctx, flags, dev)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuCtxCreate_v3(CUcontext* pctx, CUexecAffinityParam* paramsArray, int numParams, unsigned int flags, CUdevice dev) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":2864
 *     return err
 * 
 * cdef CUresult _cuCtxCreate_v2(CUcontext* pctx, unsigned int flags, CUdevice dev) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuCtxCreate_v2
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuCtxCreate_v2", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":2873
 *     return err
 * 
 * cdef CUresult _cuCtxCreate_v3(CUcontext* pctx, CUexecAffinityParam* paramsArray, int numParams, unsigned int flags, CUdevice dev) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuCtxCreate_v3
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuCtxCreate_v3(CUcontext *__pyx_v_pctx, CUexecAffinityParam *__pyx_v_paramsArray, int __pyx_v_numParams, unsigned int __pyx_v_flags, CUdevice __pyx_v_dev) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuCtxCreate_v3", 1);
  __Pyx_TraceCall("_cuCtxCreate_v3", __pyx_f[0], 2873, 1, __PYX_ERR(0, 2873, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":2875
 * cdef CUresult _cuCtxCreate_v3(CUcontext* pctx, CUexecAffinityParam* paramsArray, int numParams, unsigned int flags, CUdevice dev) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuCtxCreate_v3
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuCtxCreate_v3 == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 2875, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":2876
 *     global __cuCtxCreate_v3
 *     cuPythonInit()
 *     if __cuCtxCreate_v3 == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuCtxCreate_v3" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuCtxCreate_v3 == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":2877
 *     cuPythonInit()
 *     if __cuCtxCreate_v3 == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuCtxCreate_v3" not found')
 *     err = (<CUresult (*)(CUcontext*, CUexecAffinityParam*, int, unsigned int, CUdevice) except ?CUDA_ERROR_NOT_FOUND nogil> __cuCtxCreate_v3)(pctx, paramsArray, numParams, flags, dev)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":2878
 *     if __cuCtxCreate_v3 == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuCtxCreate_v3" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUcontext*, CUexecAffinityParam*, int, unsigned int, CUdevice) except ?CUDA_ERROR_NOT_FOUND nogil> __cuCtxCreate_v3)(pctx, paramsArray, numParams, flags, dev)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__29, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 2878, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 2878, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":2877
 *     cuPythonInit()
 *     if __cuCtxCreate_v3 == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuCtxCreate_v3" not found')
 *     err = (<CUresult (*)(CUcontext*, CUexecAffinityParam*, int, unsigned int, CUdevice) except ?CUDA_ERROR_NOT_FOUND nogil> __cuCtxCreate_v3)(pctx, paramsArray, numParams, flags, dev)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":2876
 *     global __cuCtxCreate_v3
 *     cuPythonInit()
 *     if __cuCtxCreate_v3 == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuCtxCreate_v3" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":2879
 *         with gil:
 *             raise RuntimeError('Function "cuCtxCreate_v3" not found')
 *     err = (<CUresult (*)(CUcontext*, CUexecAffinityParam*, int, unsigned int, CUdevice) except ?CUDA_ERROR_NOT_FOUND nogil> __cuCtxCreate_v3)(pctx, paramsArray, numParams, flags, dev)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUcontext *, CUexecAffinityParam *, int, unsigned int, CUdevice))__pyx_v_4cuda_5_cuda_5ccuda___cuCtxCreate_v3)(__pyx_v_pctx, __pyx_v_paramsArray, __pyx_v_numParams, __pyx_v_flags, __pyx_v_dev); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 2879, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":2880
 *             raise RuntimeError('Function "cuCtxCreate_v3" not found')
 *     err = (<CUresult (*)(CUcontext*, CUexecAffinityParam*, int, unsigned int, CUdevice) except ?CUDA_ERROR_NOT_FOUND nogil> __cuCtxCreate_v3)(pctx, paramsArray, numParams, flags, dev)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuCtxDestroy_v2(CUcontext ctx) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":2873
 *     return err
 * 
 * cdef CUresult _cuCtxCreate_v3(CUcontext* pctx, CUexecAffinityParam* paramsArray, int numParams, unsigned int flags, CUdevice dev) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuCtxCreate_v3
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuCtxCreate_v3", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":2882
 *     return err
 * 
 * cdef CUresult _cuCtxDestroy_v2(CUcontext ctx) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuCtxDestroy_v2
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuCtxDestroy_v2(CUcontext __pyx_v_ctx) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuCtxDestroy_v2", 1);
  __Pyx_TraceCall("_cuCtxDestroy_v2", __pyx_f[0], 2882, 1, __PYX_ERR(0, 2882, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":2884
 * cdef CUresult _cuCtxDestroy_v2(CUcontext ctx) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuCtxDestroy_v2
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuCtxDestroy_v2 == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 2884, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":2885
 *     global __cuCtxDestroy_v2
 *     cuPythonInit()
 *     if __cuCtxDestroy_v2 == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuCtxDestroy_v2" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuCtxDestroy_v2 == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":2886
 *     cuPythonInit()
 *     if __cuCtxDestroy_v2 == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuCtxDestroy_v2" not found')
 *     err = (<CUresult (*)(CUcontext) except ?CUDA_ERROR_NOT_FOUND nogil> __cuCtxDestroy_v2)(ctx)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":2887
 *     if __cuCtxDestroy_v2 == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuCtxDestroy_v2" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUcontext) except ?CUDA_ERROR_NOT_FOUND nogil> __cuCtxDestroy_v2)(ctx)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__30, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 2887, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 2887, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":2886
 *     cuPythonInit()
 *     if __cuCtxDestroy_v2 == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuCtxDestroy_v2" not found')
 *     err = (<CUresult (*)(CUcontext) except ?CUDA_ERROR_NOT_FOUND nogil> __cuCtxDestroy_v2)(ctx)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":2885
 *     global __cuCtxDestroy_v2
 *     cuPythonInit()
 *     if __cuCtxDestroy_v2 == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuCtxDestroy_v2" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":2888
 *         with gil:
 *             raise RuntimeError('Function "cuCtxDestroy_v2" not found')
 *     err = (<CUresult (*)(CUcontext) except ?CUDA_ERROR_NOT_FOUND nogil> __cuCtxDestroy_v2)(ctx)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUcontext))__pyx_v_4cuda_5_cuda_5ccuda___cuCtxDestroy_v2)(__pyx_v_ctx); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 2888, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":2889
 *             raise RuntimeError('Function "cuCtxDestroy_v2" not found')
 *     err = (<CUresult (*)(CUcontext) except ?CUDA_ERROR_NOT_FOUND nogil> __cuCtxDestroy_v2)(ctx)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuCtxPushCurrent_v2(CUcontext ctx) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":2882
 *     return err
 * 
 * cdef CUresult _cuCtxDestroy_v2(CUcontext ctx) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuCtxDestroy_v2
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuCtxDestroy_v2", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":2891
 *     return err
 * 
 * cdef CUresult _cuCtxPushCurrent_v2(CUcontext ctx) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuCtxPushCurrent_v2
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuCtxPushCurrent_v2(CUcontext __pyx_v_ctx) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuCtxPushCurrent_v2", 1);
  __Pyx_TraceCall("_cuCtxPushCurrent_v2", __pyx_f[0], 2891, 1, __PYX_ERR(0, 2891, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":2893
 * cdef CUresult _cuCtxPushCurrent_v2(CUcontext ctx) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuCtxPushCurrent_v2
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuCtxPushCurrent_v2 == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 2893, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":2894
 *     global __cuCtxPushCurrent_v2
 *     cuPythonInit()
 *     if __cuCtxPushCurrent_v2 == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuCtxPushCurrent_v2" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuCtxPushCurrent_v2 == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":2895
 *     cuPythonInit()
 *     if __cuCtxPushCurrent_v2 == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuCtxPushCurrent_v2" not found')
 *     err = (<CUresult (*)(CUcontext) except ?CUDA_ERROR_NOT_FOUND nogil> __cuCtxPushCurrent_v2)(ctx)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":2896
 *     if __cuCtxPushCurrent_v2 == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuCtxPushCurrent_v2" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUcontext) except ?CUDA_ERROR_NOT_FOUND nogil> __cuCtxPushCurrent_v2)(ctx)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__31, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 2896, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 2896, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":2895
 *     cuPythonInit()
 *     if __cuCtxPushCurrent_v2 == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuCtxPushCurrent_v2" not found')
 *     err = (<CUresult (*)(CUcontext) except ?CUDA_ERROR_NOT_FOUND nogil> __cuCtxPushCurrent_v2)(ctx)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":2894
 *     global __cuCtxPushCurrent_v2
 *     cuPythonInit()
 *     if __cuCtxPushCurrent_v2 == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuCtxPushCurrent_v2" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":2897
 *         with gil:
 *             raise RuntimeError('Function "cuCtxPushCurrent_v2" not found')
 *     err = (<CUresult (*)(CUcontext) except ?CUDA_ERROR_NOT_FOUND nogil> __cuCtxPushCurrent_v2)(ctx)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUcontext))__pyx_v_4cuda_5_cuda_5ccuda___cuCtxPushCurrent_v2)(__pyx_v_ctx); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 2897, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":2898
 *             raise RuntimeError('Function "cuCtxPushCurrent_v2" not found')
 *     err = (<CUresult (*)(CUcontext) except ?CUDA_ERROR_NOT_FOUND nogil> __cuCtxPushCurrent_v2)(ctx)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuCtxPopCurrent_v2(CUcontext* pctx) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":2891
 *     return err
 * 
 * cdef CUresult _cuCtxPushCurrent_v2(CUcontext ctx) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuCtxPushCurrent_v2
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuCtxPushCurrent_v2", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":2900
 *     return err
 * 
 * cdef CUresult _cuCtxPopCurrent_v2(CUcontext* pctx) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuCtxPopCurrent_v2
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuCtxPopCurrent_v2(CUcontext *__pyx_v_pctx) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuCtxPopCurrent_v2", 1);
  __Pyx_TraceCall("_cuCtxPopCurrent_v2", __pyx_f[0], 2900, 1, __PYX_ERR(0, 2900, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":2902
 * cdef CUresult _cuCtxPopCurrent_v2(CUcontext* pctx) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuCtxPopCurrent_v2
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuCtxPopCurrent_v2 == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 2902, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":2903
 *     global __cuCtxPopCurrent_v2
 *     cuPythonInit()
 *     if __cuCtxPopCurrent_v2 == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuCtxPopCurrent_v2" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuCtxPopCurrent_v2 == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":2904
 *     cuPythonInit()
 *     if __cuCtxPopCurrent_v2 == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuCtxPopCurrent_v2" not found')
 *     err = (<CUresult (*)(CUcontext*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuCtxPopCurrent_v2)(pctx)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":2905
 *     if __cuCtxPopCurrent_v2 == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuCtxPopCurrent_v2" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUcontext*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuCtxPopCurrent_v2)(pctx)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__32, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 2905, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 2905, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":2904
 *     cuPythonInit()
 *     if __cuCtxPopCurrent_v2 == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuCtxPopCurrent_v2" not found')
 *     err = (<CUresult (*)(CUcontext*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuCtxPopCurrent_v2)(pctx)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":2903
 *     global __cuCtxPopCurrent_v2
 *     cuPythonInit()
 *     if __cuCtxPopCurrent_v2 == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuCtxPopCurrent_v2" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":2906
 *         with gil:
 *             raise RuntimeError('Function "cuCtxPopCurrent_v2" not found')
 *     err = (<CUresult (*)(CUcontext*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuCtxPopCurrent_v2)(pctx)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUcontext *))__pyx_v_4cuda_5_cuda_5ccuda___cuCtxPopCurrent_v2)(__pyx_v_pctx); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 2906, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":2907
 *             raise RuntimeError('Function "cuCtxPopCurrent_v2" not found')
 *     err = (<CUresult (*)(CUcontext*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuCtxPopCurrent_v2)(pctx)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuCtxSetCurrent(CUcontext ctx) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":2900
 *     return err
 * 
 * cdef CUresult _cuCtxPopCurrent_v2(CUcontext* pctx) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuCtxPopCurrent_v2
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuCtxPopCurrent_v2", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":2909
 *     return err
 * 
 * cdef CUresult _cuCtxSetCurrent(CUcontext ctx) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuCtxSetCurrent
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuCtxSetCurrent(CUcontext __pyx_v_ctx) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuCtxSetCurrent", 1);
  __Pyx_TraceCall("_cuCtxSetCurrent", __pyx_f[0], 2909, 1, __PYX_ERR(0, 2909, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":2911
 * cdef CUresult _cuCtxSetCurrent(CUcontext ctx) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuCtxSetCurrent
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuCtxSetCurrent == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 2911, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":2912
 *     global __cuCtxSetCurrent
 *     cuPythonInit()
 *     if __cuCtxSetCurrent == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuCtxSetCurrent" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuCtxSetCurrent == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":2913
 *     cuPythonInit()
 *     if __cuCtxSetCurrent == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuCtxSetCurrent" not found')
 *     err = (<CUresult (*)(CUcontext) except ?CUDA_ERROR_NOT_FOUND nogil> __cuCtxSetCurrent)(ctx)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":2914
 *     if __cuCtxSetCurrent == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuCtxSetCurrent" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUcontext) except ?CUDA_ERROR_NOT_FOUND nogil> __cuCtxSetCurrent)(ctx)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__33, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 2914, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 2914, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":2913
 *     cuPythonInit()
 *     if __cuCtxSetCurrent == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuCtxSetCurrent" not found')
 *     err = (<CUresult (*)(CUcontext) except ?CUDA_ERROR_NOT_FOUND nogil> __cuCtxSetCurrent)(ctx)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":2912
 *     global __cuCtxSetCurrent
 *     cuPythonInit()
 *     if __cuCtxSetCurrent == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuCtxSetCurrent" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":2915
 *         with gil:
 *             raise RuntimeError('Function "cuCtxSetCurrent" not found')
 *     err = (<CUresult (*)(CUcontext) except ?CUDA_ERROR_NOT_FOUND nogil> __cuCtxSetCurrent)(ctx)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUcontext))__pyx_v_4cuda_5_cuda_5ccuda___cuCtxSetCurrent)(__pyx_v_ctx); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 2915, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":2916
 *             raise RuntimeError('Function "cuCtxSetCurrent" not found')
 *     err = (<CUresult (*)(CUcontext) except ?CUDA_ERROR_NOT_FOUND nogil> __cuCtxSetCurrent)(ctx)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuCtxGetCurrent(CUcontext* pctx) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":2909
 *     return err
 * 
 * cdef CUresult _cuCtxSetCurrent(CUcontext ctx) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuCtxSetCurrent
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuCtxSetCurrent", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":2918
 *     return err
 * 
 * cdef CUresult _cuCtxGetCurrent(CUcontext* pctx) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuCtxGetCurrent
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuCtxGetCurrent(CUcontext *__pyx_v_pctx) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuCtxGetCurrent", 1);
  __Pyx_TraceCall("_cuCtxGetCurrent", __pyx_f[0], 2918, 1, __PYX_ERR(0, 2918, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":2920
 * cdef CUresult _cuCtxGetCurrent(CUcontext* pctx) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuCtxGetCurrent
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuCtxGetCurrent == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 2920, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":2921
 *     global __cuCtxGetCurrent
 *     cuPythonInit()
 *     if __cuCtxGetCurrent == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuCtxGetCurrent" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuCtxGetCurrent == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":2922
 *     cuPythonInit()
 *     if __cuCtxGetCurrent == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuCtxGetCurrent" not found')
 *     err = (<CUresult (*)(CUcontext*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuCtxGetCurrent)(pctx)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":2923
 *     if __cuCtxGetCurrent == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuCtxGetCurrent" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUcontext*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuCtxGetCurrent)(pctx)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__34, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 2923, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 2923, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":2922
 *     cuPythonInit()
 *     if __cuCtxGetCurrent == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuCtxGetCurrent" not found')
 *     err = (<CUresult (*)(CUcontext*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuCtxGetCurrent)(pctx)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":2921
 *     global __cuCtxGetCurrent
 *     cuPythonInit()
 *     if __cuCtxGetCurrent == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuCtxGetCurrent" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":2924
 *         with gil:
 *             raise RuntimeError('Function "cuCtxGetCurrent" not found')
 *     err = (<CUresult (*)(CUcontext*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuCtxGetCurrent)(pctx)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUcontext *))__pyx_v_4cuda_5_cuda_5ccuda___cuCtxGetCurrent)(__pyx_v_pctx); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 2924, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":2925
 *             raise RuntimeError('Function "cuCtxGetCurrent" not found')
 *     err = (<CUresult (*)(CUcontext*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuCtxGetCurrent)(pctx)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuCtxGetDevice(CUdevice* device) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":2918
 *     return err
 * 
 * cdef CUresult _cuCtxGetCurrent(CUcontext* pctx) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuCtxGetCurrent
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuCtxGetCurrent", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":2927
 *     return err
 * 
 * cdef CUresult _cuCtxGetDevice(CUdevice* device) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuCtxGetDevice
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuCtxGetDevice(CUdevice *__pyx_v_device) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuCtxGetDevice", 1);
  __Pyx_TraceCall("_cuCtxGetDevice", __pyx_f[0], 2927, 1, __PYX_ERR(0, 2927, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":2929
 * cdef CUresult _cuCtxGetDevice(CUdevice* device) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuCtxGetDevice
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuCtxGetDevice == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 2929, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":2930
 *     global __cuCtxGetDevice
 *     cuPythonInit()
 *     if __cuCtxGetDevice == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuCtxGetDevice" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuCtxGetDevice == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":2931
 *     cuPythonInit()
 *     if __cuCtxGetDevice == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuCtxGetDevice" not found')
 *     err = (<CUresult (*)(CUdevice*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuCtxGetDevice)(device)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":2932
 *     if __cuCtxGetDevice == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuCtxGetDevice" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUdevice*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuCtxGetDevice)(device)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__35, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 2932, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 2932, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":2931
 *     cuPythonInit()
 *     if __cuCtxGetDevice == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuCtxGetDevice" not found')
 *     err = (<CUresult (*)(CUdevice*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuCtxGetDevice)(device)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":2930
 *     global __cuCtxGetDevice
 *     cuPythonInit()
 *     if __cuCtxGetDevice == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuCtxGetDevice" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":2933
 *         with gil:
 *             raise RuntimeError('Function "cuCtxGetDevice" not found')
 *     err = (<CUresult (*)(CUdevice*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuCtxGetDevice)(device)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUdevice *))__pyx_v_4cuda_5_cuda_5ccuda___cuCtxGetDevice)(__pyx_v_device); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 2933, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":2934
 *             raise RuntimeError('Function "cuCtxGetDevice" not found')
 *     err = (<CUresult (*)(CUdevice*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuCtxGetDevice)(device)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuCtxGetFlags(unsigned int* flags) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":2927
 *     return err
 * 
 * cdef CUresult _cuCtxGetDevice(CUdevice* device) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuCtxGetDevice
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuCtxGetDevice", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":2936
 *     return err
 * 
 * cdef CUresult _cuCtxGetFlags(unsigned int* flags) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuCtxGetFlags
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuCtxGetFlags(unsigned int *__pyx_v_flags) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuCtxGetFlags", 1);
  __Pyx_TraceCall("_cuCtxGetFlags", __pyx_f[0], 2936, 1, __PYX_ERR(0, 2936, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":2938
 * cdef CUresult _cuCtxGetFlags(unsigned int* flags) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuCtxGetFlags
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuCtxGetFlags == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 2938, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":2939
 *     global __cuCtxGetFlags
 *     cuPythonInit()
 *     if __cuCtxGetFlags == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuCtxGetFlags" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuCtxGetFlags == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":2940
 *     cuPythonInit()
 *     if __cuCtxGetFlags == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuCtxGetFlags" not found')
 *     err = (<CUresult (*)(unsigned int*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuCtxGetFlags)(flags)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":2941
 *     if __cuCtxGetFlags == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuCtxGetFlags" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(unsigned int*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuCtxGetFlags)(flags)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__36, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 2941, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 2941, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":2940
 *     cuPythonInit()
 *     if __cuCtxGetFlags == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuCtxGetFlags" not found')
 *     err = (<CUresult (*)(unsigned int*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuCtxGetFlags)(flags)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":2939
 *     global __cuCtxGetFlags
 *     cuPythonInit()
 *     if __cuCtxGetFlags == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuCtxGetFlags" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":2942
 *         with gil:
 *             raise RuntimeError('Function "cuCtxGetFlags" not found')
 *     err = (<CUresult (*)(unsigned int*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuCtxGetFlags)(flags)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(unsigned int *))__pyx_v_4cuda_5_cuda_5ccuda___cuCtxGetFlags)(__pyx_v_flags); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 2942, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":2943
 *             raise RuntimeError('Function "cuCtxGetFlags" not found')
 *     err = (<CUresult (*)(unsigned int*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuCtxGetFlags)(flags)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuCtxSetFlags(unsigned int flags) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":2936
 *     return err
 * 
 * cdef CUresult _cuCtxGetFlags(unsigned int* flags) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuCtxGetFlags
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuCtxGetFlags", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":2945
 *     return err
 * 
 * cdef CUresult _cuCtxSetFlags(unsigned int flags) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuCtxSetFlags
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuCtxSetFlags(unsigned int __pyx_v_flags) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuCtxSetFlags", 1);
  __Pyx_TraceCall("_cuCtxSetFlags", __pyx_f[0], 2945, 1, __PYX_ERR(0, 2945, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":2947
 * cdef CUresult _cuCtxSetFlags(unsigned int flags) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuCtxSetFlags
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuCtxSetFlags == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 2947, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":2948
 *     global __cuCtxSetFlags
 *     cuPythonInit()
 *     if __cuCtxSetFlags == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuCtxSetFlags" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuCtxSetFlags == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":2949
 *     cuPythonInit()
 *     if __cuCtxSetFlags == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuCtxSetFlags" not found')
 *     err = (<CUresult (*)(unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuCtxSetFlags)(flags)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":2950
 *     if __cuCtxSetFlags == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuCtxSetFlags" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuCtxSetFlags)(flags)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__37, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 2950, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 2950, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":2949
 *     cuPythonInit()
 *     if __cuCtxSetFlags == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuCtxSetFlags" not found')
 *     err = (<CUresult (*)(unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuCtxSetFlags)(flags)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":2948
 *     global __cuCtxSetFlags
 *     cuPythonInit()
 *     if __cuCtxSetFlags == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuCtxSetFlags" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":2951
 *         with gil:
 *             raise RuntimeError('Function "cuCtxSetFlags" not found')
 *     err = (<CUresult (*)(unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuCtxSetFlags)(flags)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(unsigned int))__pyx_v_4cuda_5_cuda_5ccuda___cuCtxSetFlags)(__pyx_v_flags); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 2951, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":2952
 *             raise RuntimeError('Function "cuCtxSetFlags" not found')
 *     err = (<CUresult (*)(unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuCtxSetFlags)(flags)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuCtxGetId(CUcontext ctx, unsigned long long* ctxId) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":2945
 *     return err
 * 
 * cdef CUresult _cuCtxSetFlags(unsigned int flags) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuCtxSetFlags
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuCtxSetFlags", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":2954
 *     return err
 * 
 * cdef CUresult _cuCtxGetId(CUcontext ctx, unsigned long long* ctxId) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuCtxGetId
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuCtxGetId(CUcontext __pyx_v_ctx, unsigned PY_LONG_LONG *__pyx_v_ctxId) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuCtxGetId", 1);
  __Pyx_TraceCall("_cuCtxGetId", __pyx_f[0], 2954, 1, __PYX_ERR(0, 2954, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":2956
 * cdef CUresult _cuCtxGetId(CUcontext ctx, unsigned long long* ctxId) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuCtxGetId
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuCtxGetId == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 2956, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":2957
 *     global __cuCtxGetId
 *     cuPythonInit()
 *     if __cuCtxGetId == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuCtxGetId" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuCtxGetId == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":2958
 *     cuPythonInit()
 *     if __cuCtxGetId == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuCtxGetId" not found')
 *     err = (<CUresult (*)(CUcontext, unsigned long long*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuCtxGetId)(ctx, ctxId)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":2959
 *     if __cuCtxGetId == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuCtxGetId" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUcontext, unsigned long long*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuCtxGetId)(ctx, ctxId)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__38, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 2959, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 2959, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":2958
 *     cuPythonInit()
 *     if __cuCtxGetId == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuCtxGetId" not found')
 *     err = (<CUresult (*)(CUcontext, unsigned long long*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuCtxGetId)(ctx, ctxId)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":2957
 *     global __cuCtxGetId
 *     cuPythonInit()
 *     if __cuCtxGetId == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuCtxGetId" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":2960
 *         with gil:
 *             raise RuntimeError('Function "cuCtxGetId" not found')
 *     err = (<CUresult (*)(CUcontext, unsigned long long*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuCtxGetId)(ctx, ctxId)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUcontext, unsigned PY_LONG_LONG *))__pyx_v_4cuda_5_cuda_5ccuda___cuCtxGetId)(__pyx_v_ctx, __pyx_v_ctxId); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 2960, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":2961
 *             raise RuntimeError('Function "cuCtxGetId" not found')
 *     err = (<CUresult (*)(CUcontext, unsigned long long*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuCtxGetId)(ctx, ctxId)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuCtxSynchronize() except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":2954
 *     return err
 * 
 * cdef CUresult _cuCtxGetId(CUcontext ctx, unsigned long long* ctxId) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuCtxGetId
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuCtxGetId", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":2963
 *     return err
 * 
 * cdef CUresult _cuCtxSynchronize() except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuCtxSynchronize
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuCtxSynchronize(void) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuCtxSynchronize", 1);
  __Pyx_TraceCall("_cuCtxSynchronize", __pyx_f[0], 2963, 1, __PYX_ERR(0, 2963, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":2965
 * cdef CUresult _cuCtxSynchronize() except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuCtxSynchronize
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuCtxSynchronize == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 2965, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":2966
 *     global __cuCtxSynchronize
 *     cuPythonInit()
 *     if __cuCtxSynchronize == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuCtxSynchronize" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuCtxSynchronize == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":2967
 *     cuPythonInit()
 *     if __cuCtxSynchronize == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuCtxSynchronize" not found')
 *     err = (<CUresult (*)() except ?CUDA_ERROR_NOT_FOUND nogil> __cuCtxSynchronize)()
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":2968
 *     if __cuCtxSynchronize == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuCtxSynchronize" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)() except ?CUDA_ERROR_NOT_FOUND nogil> __cuCtxSynchronize)()
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__39, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 2968, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 2968, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":2967
 *     cuPythonInit()
 *     if __cuCtxSynchronize == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuCtxSynchronize" not found')
 *     err = (<CUresult (*)() except ?CUDA_ERROR_NOT_FOUND nogil> __cuCtxSynchronize)()
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":2966
 *     global __cuCtxSynchronize
 *     cuPythonInit()
 *     if __cuCtxSynchronize == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuCtxSynchronize" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":2969
 *         with gil:
 *             raise RuntimeError('Function "cuCtxSynchronize" not found')
 *     err = (<CUresult (*)() except ?CUDA_ERROR_NOT_FOUND nogil> __cuCtxSynchronize)()             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(void))__pyx_v_4cuda_5_cuda_5ccuda___cuCtxSynchronize)(); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 2969, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":2970
 *             raise RuntimeError('Function "cuCtxSynchronize" not found')
 *     err = (<CUresult (*)() except ?CUDA_ERROR_NOT_FOUND nogil> __cuCtxSynchronize)()
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuCtxSetLimit(CUlimit limit, size_t value) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":2963
 *     return err
 * 
 * cdef CUresult _cuCtxSynchronize() except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuCtxSynchronize
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuCtxSynchronize", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":2972
 *     return err
 * 
 * cdef CUresult _cuCtxSetLimit(CUlimit limit, size_t value) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuCtxSetLimit
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuCtxSetLimit(CUlimit __pyx_v_limit, size_t __pyx_v_value) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuCtxSetLimit", 1);
  __Pyx_TraceCall("_cuCtxSetLimit", __pyx_f[0], 2972, 1, __PYX_ERR(0, 2972, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":2974
 * cdef CUresult _cuCtxSetLimit(CUlimit limit, size_t value) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuCtxSetLimit
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuCtxSetLimit == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 2974, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":2975
 *     global __cuCtxSetLimit
 *     cuPythonInit()
 *     if __cuCtxSetLimit == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuCtxSetLimit" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuCtxSetLimit == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":2976
 *     cuPythonInit()
 *     if __cuCtxSetLimit == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuCtxSetLimit" not found')
 *     err = (<CUresult (*)(CUlimit, size_t) except ?CUDA_ERROR_NOT_FOUND nogil> __cuCtxSetLimit)(limit, value)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":2977
 *     if __cuCtxSetLimit == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuCtxSetLimit" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUlimit, size_t) except ?CUDA_ERROR_NOT_FOUND nogil> __cuCtxSetLimit)(limit, value)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__40, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 2977, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 2977, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":2976
 *     cuPythonInit()
 *     if __cuCtxSetLimit == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuCtxSetLimit" not found')
 *     err = (<CUresult (*)(CUlimit, size_t) except ?CUDA_ERROR_NOT_FOUND nogil> __cuCtxSetLimit)(limit, value)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":2975
 *     global __cuCtxSetLimit
 *     cuPythonInit()
 *     if __cuCtxSetLimit == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuCtxSetLimit" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":2978
 *         with gil:
 *             raise RuntimeError('Function "cuCtxSetLimit" not found')
 *     err = (<CUresult (*)(CUlimit, size_t) except ?CUDA_ERROR_NOT_FOUND nogil> __cuCtxSetLimit)(limit, value)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUlimit, size_t))__pyx_v_4cuda_5_cuda_5ccuda___cuCtxSetLimit)(__pyx_v_limit, __pyx_v_value); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 2978, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":2979
 *             raise RuntimeError('Function "cuCtxSetLimit" not found')
 *     err = (<CUresult (*)(CUlimit, size_t) except ?CUDA_ERROR_NOT_FOUND nogil> __cuCtxSetLimit)(limit, value)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuCtxGetLimit(size_t* pvalue, CUlimit limit) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":2972
 *     return err
 * 
 * cdef CUresult _cuCtxSetLimit(CUlimit limit, size_t value) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuCtxSetLimit
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuCtxSetLimit", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":2981
 *     return err
 * 
 * cdef CUresult _cuCtxGetLimit(size_t* pvalue, CUlimit limit) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuCtxGetLimit
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuCtxGetLimit(size_t *__pyx_v_pvalue, CUlimit __pyx_v_limit) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuCtxGetLimit", 1);
  __Pyx_TraceCall("_cuCtxGetLimit", __pyx_f[0], 2981, 1, __PYX_ERR(0, 2981, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":2983
 * cdef CUresult _cuCtxGetLimit(size_t* pvalue, CUlimit limit) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuCtxGetLimit
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuCtxGetLimit == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 2983, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":2984
 *     global __cuCtxGetLimit
 *     cuPythonInit()
 *     if __cuCtxGetLimit == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuCtxGetLimit" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuCtxGetLimit == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":2985
 *     cuPythonInit()
 *     if __cuCtxGetLimit == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuCtxGetLimit" not found')
 *     err = (<CUresult (*)(size_t*, CUlimit) except ?CUDA_ERROR_NOT_FOUND nogil> __cuCtxGetLimit)(pvalue, limit)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":2986
 *     if __cuCtxGetLimit == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuCtxGetLimit" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(size_t*, CUlimit) except ?CUDA_ERROR_NOT_FOUND nogil> __cuCtxGetLimit)(pvalue, limit)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__41, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 2986, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 2986, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":2985
 *     cuPythonInit()
 *     if __cuCtxGetLimit == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuCtxGetLimit" not found')
 *     err = (<CUresult (*)(size_t*, CUlimit) except ?CUDA_ERROR_NOT_FOUND nogil> __cuCtxGetLimit)(pvalue, limit)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":2984
 *     global __cuCtxGetLimit
 *     cuPythonInit()
 *     if __cuCtxGetLimit == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuCtxGetLimit" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":2987
 *         with gil:
 *             raise RuntimeError('Function "cuCtxGetLimit" not found')
 *     err = (<CUresult (*)(size_t*, CUlimit) except ?CUDA_ERROR_NOT_FOUND nogil> __cuCtxGetLimit)(pvalue, limit)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(size_t *, CUlimit))__pyx_v_4cuda_5_cuda_5ccuda___cuCtxGetLimit)(__pyx_v_pvalue, __pyx_v_limit); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 2987, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":2988
 *             raise RuntimeError('Function "cuCtxGetLimit" not found')
 *     err = (<CUresult (*)(size_t*, CUlimit) except ?CUDA_ERROR_NOT_FOUND nogil> __cuCtxGetLimit)(pvalue, limit)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuCtxGetCacheConfig(CUfunc_cache* pconfig) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":2981
 *     return err
 * 
 * cdef CUresult _cuCtxGetLimit(size_t* pvalue, CUlimit limit) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuCtxGetLimit
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuCtxGetLimit", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":2990
 *     return err
 * 
 * cdef CUresult _cuCtxGetCacheConfig(CUfunc_cache* pconfig) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuCtxGetCacheConfig
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuCtxGetCacheConfig(CUfunc_cache *__pyx_v_pconfig) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuCtxGetCacheConfig", 1);
  __Pyx_TraceCall("_cuCtxGetCacheConfig", __pyx_f[0], 2990, 1, __PYX_ERR(0, 2990, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":2992
 * cdef CUresult _cuCtxGetCacheConfig(CUfunc_cache* pconfig) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuCtxGetCacheConfig
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuCtxGetCacheConfig == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 2992, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":2993
 *     global __cuCtxGetCacheConfig
 *     cuPythonInit()
 *     if __cuCtxGetCacheConfig == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuCtxGetCacheConfig" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuCtxGetCacheConfig == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":2994
 *     cuPythonInit()
 *     if __cuCtxGetCacheConfig == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuCtxGetCacheConfig" not found')
 *     err = (<CUresult (*)(CUfunc_cache*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuCtxGetCacheConfig)(pconfig)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":2995
 *     if __cuCtxGetCacheConfig == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuCtxGetCacheConfig" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUfunc_cache*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuCtxGetCacheConfig)(pconfig)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__42, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 2995, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 2995, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":2994
 *     cuPythonInit()
 *     if __cuCtxGetCacheConfig == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuCtxGetCacheConfig" not found')
 *     err = (<CUresult (*)(CUfunc_cache*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuCtxGetCacheConfig)(pconfig)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":2993
 *     global __cuCtxGetCacheConfig
 *     cuPythonInit()
 *     if __cuCtxGetCacheConfig == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuCtxGetCacheConfig" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":2996
 *         with gil:
 *             raise RuntimeError('Function "cuCtxGetCacheConfig" not found')
 *     err = (<CUresult (*)(CUfunc_cache*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuCtxGetCacheConfig)(pconfig)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUfunc_cache *))__pyx_v_4cuda_5_cuda_5ccuda___cuCtxGetCacheConfig)(__pyx_v_pconfig); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 2996, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":2997
 *             raise RuntimeError('Function "cuCtxGetCacheConfig" not found')
 *     err = (<CUresult (*)(CUfunc_cache*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuCtxGetCacheConfig)(pconfig)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuCtxSetCacheConfig(CUfunc_cache config) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":2990
 *     return err
 * 
 * cdef CUresult _cuCtxGetCacheConfig(CUfunc_cache* pconfig) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuCtxGetCacheConfig
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuCtxGetCacheConfig", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":2999
 *     return err
 * 
 * cdef CUresult _cuCtxSetCacheConfig(CUfunc_cache config) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuCtxSetCacheConfig
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuCtxSetCacheConfig(CUfunc_cache __pyx_v_config) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuCtxSetCacheConfig", 1);
  __Pyx_TraceCall("_cuCtxSetCacheConfig", __pyx_f[0], 2999, 1, __PYX_ERR(0, 2999, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":3001
 * cdef CUresult _cuCtxSetCacheConfig(CUfunc_cache config) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuCtxSetCacheConfig
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuCtxSetCacheConfig == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 3001, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":3002
 *     global __cuCtxSetCacheConfig
 *     cuPythonInit()
 *     if __cuCtxSetCacheConfig == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuCtxSetCacheConfig" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuCtxSetCacheConfig == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":3003
 *     cuPythonInit()
 *     if __cuCtxSetCacheConfig == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuCtxSetCacheConfig" not found')
 *     err = (<CUresult (*)(CUfunc_cache) except ?CUDA_ERROR_NOT_FOUND nogil> __cuCtxSetCacheConfig)(config)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":3004
 *     if __cuCtxSetCacheConfig == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuCtxSetCacheConfig" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUfunc_cache) except ?CUDA_ERROR_NOT_FOUND nogil> __cuCtxSetCacheConfig)(config)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__43, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 3004, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 3004, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":3003
 *     cuPythonInit()
 *     if __cuCtxSetCacheConfig == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuCtxSetCacheConfig" not found')
 *     err = (<CUresult (*)(CUfunc_cache) except ?CUDA_ERROR_NOT_FOUND nogil> __cuCtxSetCacheConfig)(config)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":3002
 *     global __cuCtxSetCacheConfig
 *     cuPythonInit()
 *     if __cuCtxSetCacheConfig == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuCtxSetCacheConfig" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":3005
 *         with gil:
 *             raise RuntimeError('Function "cuCtxSetCacheConfig" not found')
 *     err = (<CUresult (*)(CUfunc_cache) except ?CUDA_ERROR_NOT_FOUND nogil> __cuCtxSetCacheConfig)(config)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUfunc_cache))__pyx_v_4cuda_5_cuda_5ccuda___cuCtxSetCacheConfig)(__pyx_v_config); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 3005, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":3006
 *             raise RuntimeError('Function "cuCtxSetCacheConfig" not found')
 *     err = (<CUresult (*)(CUfunc_cache) except ?CUDA_ERROR_NOT_FOUND nogil> __cuCtxSetCacheConfig)(config)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuCtxGetApiVersion(CUcontext ctx, unsigned int* version) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":2999
 *     return err
 * 
 * cdef CUresult _cuCtxSetCacheConfig(CUfunc_cache config) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuCtxSetCacheConfig
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuCtxSetCacheConfig", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":3008
 *     return err
 * 
 * cdef CUresult _cuCtxGetApiVersion(CUcontext ctx, unsigned int* version) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuCtxGetApiVersion
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuCtxGetApiVersion(CUcontext __pyx_v_ctx, unsigned int *__pyx_v_version) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuCtxGetApiVersion", 1);
  __Pyx_TraceCall("_cuCtxGetApiVersion", __pyx_f[0], 3008, 1, __PYX_ERR(0, 3008, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":3010
 * cdef CUresult _cuCtxGetApiVersion(CUcontext ctx, unsigned int* version) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuCtxGetApiVersion
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuCtxGetApiVersion == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 3010, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":3011
 *     global __cuCtxGetApiVersion
 *     cuPythonInit()
 *     if __cuCtxGetApiVersion == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuCtxGetApiVersion" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuCtxGetApiVersion == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":3012
 *     cuPythonInit()
 *     if __cuCtxGetApiVersion == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuCtxGetApiVersion" not found')
 *     err = (<CUresult (*)(CUcontext, unsigned int*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuCtxGetApiVersion)(ctx, version)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":3013
 *     if __cuCtxGetApiVersion == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuCtxGetApiVersion" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUcontext, unsigned int*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuCtxGetApiVersion)(ctx, version)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__44, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 3013, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 3013, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":3012
 *     cuPythonInit()
 *     if __cuCtxGetApiVersion == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuCtxGetApiVersion" not found')
 *     err = (<CUresult (*)(CUcontext, unsigned int*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuCtxGetApiVersion)(ctx, version)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":3011
 *     global __cuCtxGetApiVersion
 *     cuPythonInit()
 *     if __cuCtxGetApiVersion == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuCtxGetApiVersion" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":3014
 *         with gil:
 *             raise RuntimeError('Function "cuCtxGetApiVersion" not found')
 *     err = (<CUresult (*)(CUcontext, unsigned int*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuCtxGetApiVersion)(ctx, version)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUcontext, unsigned int *))__pyx_v_4cuda_5_cuda_5ccuda___cuCtxGetApiVersion)(__pyx_v_ctx, __pyx_v_version); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 3014, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":3015
 *             raise RuntimeError('Function "cuCtxGetApiVersion" not found')
 *     err = (<CUresult (*)(CUcontext, unsigned int*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuCtxGetApiVersion)(ctx, version)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuCtxGetStreamPriorityRange(int* leastPriority, int* greatestPriority) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":3008
 *     return err
 * 
 * cdef CUresult _cuCtxGetApiVersion(CUcontext ctx, unsigned int* version) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuCtxGetApiVersion
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuCtxGetApiVersion", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":3017
 *     return err
 * 
 * cdef CUresult _cuCtxGetStreamPriorityRange(int* leastPriority, int* greatestPriority) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuCtxGetStreamPriorityRange
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuCtxGetStreamPriorityRange(int *__pyx_v_leastPriority, int *__pyx_v_greatestPriority) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuCtxGetStreamPriorityRange", 1);
  __Pyx_TraceCall("_cuCtxGetStreamPriorityRange", __pyx_f[0], 3017, 1, __PYX_ERR(0, 3017, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":3019
 * cdef CUresult _cuCtxGetStreamPriorityRange(int* leastPriority, int* greatestPriority) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuCtxGetStreamPriorityRange
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuCtxGetStreamPriorityRange == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 3019, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":3020
 *     global __cuCtxGetStreamPriorityRange
 *     cuPythonInit()
 *     if __cuCtxGetStreamPriorityRange == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuCtxGetStreamPriorityRange" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuCtxGetStreamPriorityRange == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":3021
 *     cuPythonInit()
 *     if __cuCtxGetStreamPriorityRange == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuCtxGetStreamPriorityRange" not found')
 *     err = (<CUresult (*)(int*, int*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuCtxGetStreamPriorityRange)(leastPriority, greatestPriority)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":3022
 *     if __cuCtxGetStreamPriorityRange == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuCtxGetStreamPriorityRange" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(int*, int*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuCtxGetStreamPriorityRange)(leastPriority, greatestPriority)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__45, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 3022, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 3022, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":3021
 *     cuPythonInit()
 *     if __cuCtxGetStreamPriorityRange == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuCtxGetStreamPriorityRange" not found')
 *     err = (<CUresult (*)(int*, int*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuCtxGetStreamPriorityRange)(leastPriority, greatestPriority)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":3020
 *     global __cuCtxGetStreamPriorityRange
 *     cuPythonInit()
 *     if __cuCtxGetStreamPriorityRange == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuCtxGetStreamPriorityRange" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":3023
 *         with gil:
 *             raise RuntimeError('Function "cuCtxGetStreamPriorityRange" not found')
 *     err = (<CUresult (*)(int*, int*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuCtxGetStreamPriorityRange)(leastPriority, greatestPriority)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(int *, int *))__pyx_v_4cuda_5_cuda_5ccuda___cuCtxGetStreamPriorityRange)(__pyx_v_leastPriority, __pyx_v_greatestPriority); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 3023, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":3024
 *             raise RuntimeError('Function "cuCtxGetStreamPriorityRange" not found')
 *     err = (<CUresult (*)(int*, int*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuCtxGetStreamPriorityRange)(leastPriority, greatestPriority)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuCtxResetPersistingL2Cache() except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":3017
 *     return err
 * 
 * cdef CUresult _cuCtxGetStreamPriorityRange(int* leastPriority, int* greatestPriority) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuCtxGetStreamPriorityRange
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuCtxGetStreamPriorityRange", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":3026
 *     return err
 * 
 * cdef CUresult _cuCtxResetPersistingL2Cache() except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuCtxResetPersistingL2Cache
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuCtxResetPersistingL2Cache(void) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuCtxResetPersistingL2Cache", 1);
  __Pyx_TraceCall("_cuCtxResetPersistingL2Cache", __pyx_f[0], 3026, 1, __PYX_ERR(0, 3026, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":3028
 * cdef CUresult _cuCtxResetPersistingL2Cache() except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuCtxResetPersistingL2Cache
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuCtxResetPersistingL2Cache == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 3028, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":3029
 *     global __cuCtxResetPersistingL2Cache
 *     cuPythonInit()
 *     if __cuCtxResetPersistingL2Cache == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuCtxResetPersistingL2Cache" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuCtxResetPersistingL2Cache == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":3030
 *     cuPythonInit()
 *     if __cuCtxResetPersistingL2Cache == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuCtxResetPersistingL2Cache" not found')
 *     err = (<CUresult (*)() except ?CUDA_ERROR_NOT_FOUND nogil> __cuCtxResetPersistingL2Cache)()
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":3031
 *     if __cuCtxResetPersistingL2Cache == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuCtxResetPersistingL2Cache" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)() except ?CUDA_ERROR_NOT_FOUND nogil> __cuCtxResetPersistingL2Cache)()
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__46, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 3031, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 3031, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":3030
 *     cuPythonInit()
 *     if __cuCtxResetPersistingL2Cache == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuCtxResetPersistingL2Cache" not found')
 *     err = (<CUresult (*)() except ?CUDA_ERROR_NOT_FOUND nogil> __cuCtxResetPersistingL2Cache)()
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":3029
 *     global __cuCtxResetPersistingL2Cache
 *     cuPythonInit()
 *     if __cuCtxResetPersistingL2Cache == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuCtxResetPersistingL2Cache" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":3032
 *         with gil:
 *             raise RuntimeError('Function "cuCtxResetPersistingL2Cache" not found')
 *     err = (<CUresult (*)() except ?CUDA_ERROR_NOT_FOUND nogil> __cuCtxResetPersistingL2Cache)()             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(void))__pyx_v_4cuda_5_cuda_5ccuda___cuCtxResetPersistingL2Cache)(); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 3032, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":3033
 *             raise RuntimeError('Function "cuCtxResetPersistingL2Cache" not found')
 *     err = (<CUresult (*)() except ?CUDA_ERROR_NOT_FOUND nogil> __cuCtxResetPersistingL2Cache)()
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuCtxGetExecAffinity(CUexecAffinityParam* pExecAffinity, CUexecAffinityType typename) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":3026
 *     return err
 * 
 * cdef CUresult _cuCtxResetPersistingL2Cache() except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuCtxResetPersistingL2Cache
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuCtxResetPersistingL2Cache", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":3035
 *     return err
 * 
 * cdef CUresult _cuCtxGetExecAffinity(CUexecAffinityParam* pExecAffinity, CUexecAffinityType typename) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuCtxGetExecAffinity
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuCtxGetExecAffinity(CUexecAffinityParam *__pyx_v_pExecAffinity, CUexecAffinityType __pyx_v_typename) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuCtxGetExecAffinity", 1);
  __Pyx_TraceCall("_cuCtxGetExecAffinity", __pyx_f[0], 3035, 1, __PYX_ERR(0, 3035, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":3037
 * cdef CUresult _cuCtxGetExecAffinity(CUexecAffinityParam* pExecAffinity, CUexecAffinityType typename) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuCtxGetExecAffinity
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuCtxGetExecAffinity == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 3037, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":3038
 *     global __cuCtxGetExecAffinity
 *     cuPythonInit()
 *     if __cuCtxGetExecAffinity == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuCtxGetExecAffinity" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuCtxGetExecAffinity == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":3039
 *     cuPythonInit()
 *     if __cuCtxGetExecAffinity == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuCtxGetExecAffinity" not found')
 *     err = (<CUresult (*)(CUexecAffinityParam*, CUexecAffinityType) except ?CUDA_ERROR_NOT_FOUND nogil> __cuCtxGetExecAffinity)(pExecAffinity, typename)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":3040
 *     if __cuCtxGetExecAffinity == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuCtxGetExecAffinity" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUexecAffinityParam*, CUexecAffinityType) except ?CUDA_ERROR_NOT_FOUND nogil> __cuCtxGetExecAffinity)(pExecAffinity, typename)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__47, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 3040, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 3040, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":3039
 *     cuPythonInit()
 *     if __cuCtxGetExecAffinity == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuCtxGetExecAffinity" not found')
 *     err = (<CUresult (*)(CUexecAffinityParam*, CUexecAffinityType) except ?CUDA_ERROR_NOT_FOUND nogil> __cuCtxGetExecAffinity)(pExecAffinity, typename)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":3038
 *     global __cuCtxGetExecAffinity
 *     cuPythonInit()
 *     if __cuCtxGetExecAffinity == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuCtxGetExecAffinity" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":3041
 *         with gil:
 *             raise RuntimeError('Function "cuCtxGetExecAffinity" not found')
 *     err = (<CUresult (*)(CUexecAffinityParam*, CUexecAffinityType) except ?CUDA_ERROR_NOT_FOUND nogil> __cuCtxGetExecAffinity)(pExecAffinity, typename)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUexecAffinityParam *, CUexecAffinityType))__pyx_v_4cuda_5_cuda_5ccuda___cuCtxGetExecAffinity)(__pyx_v_pExecAffinity, __pyx_v_typename); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 3041, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":3042
 *             raise RuntimeError('Function "cuCtxGetExecAffinity" not found')
 *     err = (<CUresult (*)(CUexecAffinityParam*, CUexecAffinityType) except ?CUDA_ERROR_NOT_FOUND nogil> __cuCtxGetExecAffinity)(pExecAffinity, typename)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuCtxAttach(CUcontext* pctx, unsigned int flags) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":3035
 *     return err
 * 
 * cdef CUresult _cuCtxGetExecAffinity(CUexecAffinityParam* pExecAffinity, CUexecAffinityType typename) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuCtxGetExecAffinity
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuCtxGetExecAffinity", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":3044
 *     return err
 * 
 * cdef CUresult _cuCtxAttach(CUcontext* pctx, unsigned int flags) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuCtxAttach
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuCtxAttach(CUcontext *__pyx_v_pctx, unsigned int __pyx_v_flags) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuCtxAttach", 1);
  __Pyx_TraceCall("_cuCtxAttach", __pyx_f[0], 3044, 1, __PYX_ERR(0, 3044, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":3046
 * cdef CUresult _cuCtxAttach(CUcontext* pctx, unsigned int flags) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuCtxAttach
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuCtxAttach == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 3046, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":3047
 *     global __cuCtxAttach
 *     cuPythonInit()
 *     if __cuCtxAttach == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuCtxAttach" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuCtxAttach == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":3048
 *     cuPythonInit()
 *     if __cuCtxAttach == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuCtxAttach" not found')
 *     err = (<CUresult (*)(CUcontext*, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuCtxAttach)(pctx, flags)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":3049
 *     if __cuCtxAttach == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuCtxAttach" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUcontext*, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuCtxAttach)(pctx, flags)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__48, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 3049, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 3049, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":3048
 *     cuPythonInit()
 *     if __cuCtxAttach == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuCtxAttach" not found')
 *     err = (<CUresult (*)(CUcontext*, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuCtxAttach)(pctx, flags)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":3047
 *     global __cuCtxAttach
 *     cuPythonInit()
 *     if __cuCtxAttach == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuCtxAttach" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":3050
 *         with gil:
 *             raise RuntimeError('Function "cuCtxAttach" not found')
 *     err = (<CUresult (*)(CUcontext*, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuCtxAttach)(pctx, flags)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUcontext *, unsigned int))__pyx_v_4cuda_5_cuda_5ccuda___cuCtxAttach)(__pyx_v_pctx, __pyx_v_flags); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 3050, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":3051
 *             raise RuntimeError('Function "cuCtxAttach" not found')
 *     err = (<CUresult (*)(CUcontext*, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuCtxAttach)(pctx, flags)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuCtxDetach(CUcontext ctx) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":3044
 *     return err
 * 
 * cdef CUresult _cuCtxAttach(CUcontext* pctx, unsigned int flags) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuCtxAttach
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuCtxAttach", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":3053
 *     return err
 * 
 * cdef CUresult _cuCtxDetach(CUcontext ctx) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuCtxDetach
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuCtxDetach(CUcontext __pyx_v_ctx) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuCtxDetach", 1);
  __Pyx_TraceCall("_cuCtxDetach", __pyx_f[0], 3053, 1, __PYX_ERR(0, 3053, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":3055
 * cdef CUresult _cuCtxDetach(CUcontext ctx) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuCtxDetach
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuCtxDetach == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 3055, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":3056
 *     global __cuCtxDetach
 *     cuPythonInit()
 *     if __cuCtxDetach == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuCtxDetach" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuCtxDetach == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":3057
 *     cuPythonInit()
 *     if __cuCtxDetach == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuCtxDetach" not found')
 *     err = (<CUresult (*)(CUcontext) except ?CUDA_ERROR_NOT_FOUND nogil> __cuCtxDetach)(ctx)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":3058
 *     if __cuCtxDetach == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuCtxDetach" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUcontext) except ?CUDA_ERROR_NOT_FOUND nogil> __cuCtxDetach)(ctx)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__49, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 3058, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 3058, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":3057
 *     cuPythonInit()
 *     if __cuCtxDetach == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuCtxDetach" not found')
 *     err = (<CUresult (*)(CUcontext) except ?CUDA_ERROR_NOT_FOUND nogil> __cuCtxDetach)(ctx)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":3056
 *     global __cuCtxDetach
 *     cuPythonInit()
 *     if __cuCtxDetach == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuCtxDetach" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":3059
 *         with gil:
 *             raise RuntimeError('Function "cuCtxDetach" not found')
 *     err = (<CUresult (*)(CUcontext) except ?CUDA_ERROR_NOT_FOUND nogil> __cuCtxDetach)(ctx)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUcontext))__pyx_v_4cuda_5_cuda_5ccuda___cuCtxDetach)(__pyx_v_ctx); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 3059, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":3060
 *             raise RuntimeError('Function "cuCtxDetach" not found')
 *     err = (<CUresult (*)(CUcontext) except ?CUDA_ERROR_NOT_FOUND nogil> __cuCtxDetach)(ctx)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuCtxGetSharedMemConfig(CUsharedconfig* pConfig) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":3053
 *     return err
 * 
 * cdef CUresult _cuCtxDetach(CUcontext ctx) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuCtxDetach
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuCtxDetach", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":3062
 *     return err
 * 
 * cdef CUresult _cuCtxGetSharedMemConfig(CUsharedconfig* pConfig) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuCtxGetSharedMemConfig
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuCtxGetSharedMemConfig(CUsharedconfig *__pyx_v_pConfig) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuCtxGetSharedMemConfig", 1);
  __Pyx_TraceCall("_cuCtxGetSharedMemConfig", __pyx_f[0], 3062, 1, __PYX_ERR(0, 3062, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":3064
 * cdef CUresult _cuCtxGetSharedMemConfig(CUsharedconfig* pConfig) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuCtxGetSharedMemConfig
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuCtxGetSharedMemConfig == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 3064, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":3065
 *     global __cuCtxGetSharedMemConfig
 *     cuPythonInit()
 *     if __cuCtxGetSharedMemConfig == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuCtxGetSharedMemConfig" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuCtxGetSharedMemConfig == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":3066
 *     cuPythonInit()
 *     if __cuCtxGetSharedMemConfig == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuCtxGetSharedMemConfig" not found')
 *     err = (<CUresult (*)(CUsharedconfig*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuCtxGetSharedMemConfig)(pConfig)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":3067
 *     if __cuCtxGetSharedMemConfig == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuCtxGetSharedMemConfig" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUsharedconfig*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuCtxGetSharedMemConfig)(pConfig)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__50, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 3067, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 3067, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":3066
 *     cuPythonInit()
 *     if __cuCtxGetSharedMemConfig == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuCtxGetSharedMemConfig" not found')
 *     err = (<CUresult (*)(CUsharedconfig*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuCtxGetSharedMemConfig)(pConfig)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":3065
 *     global __cuCtxGetSharedMemConfig
 *     cuPythonInit()
 *     if __cuCtxGetSharedMemConfig == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuCtxGetSharedMemConfig" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":3068
 *         with gil:
 *             raise RuntimeError('Function "cuCtxGetSharedMemConfig" not found')
 *     err = (<CUresult (*)(CUsharedconfig*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuCtxGetSharedMemConfig)(pConfig)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUsharedconfig *))__pyx_v_4cuda_5_cuda_5ccuda___cuCtxGetSharedMemConfig)(__pyx_v_pConfig); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 3068, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":3069
 *             raise RuntimeError('Function "cuCtxGetSharedMemConfig" not found')
 *     err = (<CUresult (*)(CUsharedconfig*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuCtxGetSharedMemConfig)(pConfig)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuCtxSetSharedMemConfig(CUsharedconfig config) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":3062
 *     return err
 * 
 * cdef CUresult _cuCtxGetSharedMemConfig(CUsharedconfig* pConfig) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuCtxGetSharedMemConfig
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuCtxGetSharedMemConfig", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":3071
 *     return err
 * 
 * cdef CUresult _cuCtxSetSharedMemConfig(CUsharedconfig config) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuCtxSetSharedMemConfig
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuCtxSetSharedMemConfig(CUsharedconfig __pyx_v_config) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuCtxSetSharedMemConfig", 1);
  __Pyx_TraceCall("_cuCtxSetSharedMemConfig", __pyx_f[0], 3071, 1, __PYX_ERR(0, 3071, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":3073
 * cdef CUresult _cuCtxSetSharedMemConfig(CUsharedconfig config) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuCtxSetSharedMemConfig
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuCtxSetSharedMemConfig == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 3073, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":3074
 *     global __cuCtxSetSharedMemConfig
 *     cuPythonInit()
 *     if __cuCtxSetSharedMemConfig == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuCtxSetSharedMemConfig" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuCtxSetSharedMemConfig == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":3075
 *     cuPythonInit()
 *     if __cuCtxSetSharedMemConfig == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuCtxSetSharedMemConfig" not found')
 *     err = (<CUresult (*)(CUsharedconfig) except ?CUDA_ERROR_NOT_FOUND nogil> __cuCtxSetSharedMemConfig)(config)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":3076
 *     if __cuCtxSetSharedMemConfig == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuCtxSetSharedMemConfig" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUsharedconfig) except ?CUDA_ERROR_NOT_FOUND nogil> __cuCtxSetSharedMemConfig)(config)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__51, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 3076, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 3076, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":3075
 *     cuPythonInit()
 *     if __cuCtxSetSharedMemConfig == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuCtxSetSharedMemConfig" not found')
 *     err = (<CUresult (*)(CUsharedconfig) except ?CUDA_ERROR_NOT_FOUND nogil> __cuCtxSetSharedMemConfig)(config)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":3074
 *     global __cuCtxSetSharedMemConfig
 *     cuPythonInit()
 *     if __cuCtxSetSharedMemConfig == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuCtxSetSharedMemConfig" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":3077
 *         with gil:
 *             raise RuntimeError('Function "cuCtxSetSharedMemConfig" not found')
 *     err = (<CUresult (*)(CUsharedconfig) except ?CUDA_ERROR_NOT_FOUND nogil> __cuCtxSetSharedMemConfig)(config)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUsharedconfig))__pyx_v_4cuda_5_cuda_5ccuda___cuCtxSetSharedMemConfig)(__pyx_v_config); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 3077, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":3078
 *             raise RuntimeError('Function "cuCtxSetSharedMemConfig" not found')
 *     err = (<CUresult (*)(CUsharedconfig) except ?CUDA_ERROR_NOT_FOUND nogil> __cuCtxSetSharedMemConfig)(config)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuModuleLoad(CUmodule* module, const char* fname) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":3071
 *     return err
 * 
 * cdef CUresult _cuCtxSetSharedMemConfig(CUsharedconfig config) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuCtxSetSharedMemConfig
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuCtxSetSharedMemConfig", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":3080
 *     return err
 * 
 * cdef CUresult _cuModuleLoad(CUmodule* module, const char* fname) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuModuleLoad
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuModuleLoad(CUmodule *__pyx_v_module, char const *__pyx_v_fname) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuModuleLoad", 1);
  __Pyx_TraceCall("_cuModuleLoad", __pyx_f[0], 3080, 1, __PYX_ERR(0, 3080, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":3082
 * cdef CUresult _cuModuleLoad(CUmodule* module, const char* fname) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuModuleLoad
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuModuleLoad == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 3082, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":3083
 *     global __cuModuleLoad
 *     cuPythonInit()
 *     if __cuModuleLoad == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuModuleLoad" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuModuleLoad == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":3084
 *     cuPythonInit()
 *     if __cuModuleLoad == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuModuleLoad" not found')
 *     err = (<CUresult (*)(CUmodule*, const char*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuModuleLoad)(module, fname)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":3085
 *     if __cuModuleLoad == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuModuleLoad" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUmodule*, const char*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuModuleLoad)(module, fname)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__52, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 3085, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 3085, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":3084
 *     cuPythonInit()
 *     if __cuModuleLoad == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuModuleLoad" not found')
 *     err = (<CUresult (*)(CUmodule*, const char*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuModuleLoad)(module, fname)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":3083
 *     global __cuModuleLoad
 *     cuPythonInit()
 *     if __cuModuleLoad == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuModuleLoad" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":3086
 *         with gil:
 *             raise RuntimeError('Function "cuModuleLoad" not found')
 *     err = (<CUresult (*)(CUmodule*, const char*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuModuleLoad)(module, fname)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUmodule *, char const *))__pyx_v_4cuda_5_cuda_5ccuda___cuModuleLoad)(__pyx_v_module, __pyx_v_fname); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 3086, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":3087
 *             raise RuntimeError('Function "cuModuleLoad" not found')
 *     err = (<CUresult (*)(CUmodule*, const char*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuModuleLoad)(module, fname)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuModuleLoadData(CUmodule* module, const void* image) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":3080
 *     return err
 * 
 * cdef CUresult _cuModuleLoad(CUmodule* module, const char* fname) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuModuleLoad
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuModuleLoad", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":3089
 *     return err
 * 
 * cdef CUresult _cuModuleLoadData(CUmodule* module, const void* image) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuModuleLoadData
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuModuleLoadData(CUmodule *__pyx_v_module, void const *__pyx_v_image) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuModuleLoadData", 1);
  __Pyx_TraceCall("_cuModuleLoadData", __pyx_f[0], 3089, 1, __PYX_ERR(0, 3089, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":3091
 * cdef CUresult _cuModuleLoadData(CUmodule* module, const void* image) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuModuleLoadData
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuModuleLoadData == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 3091, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":3092
 *     global __cuModuleLoadData
 *     cuPythonInit()
 *     if __cuModuleLoadData == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuModuleLoadData" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuModuleLoadData == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":3093
 *     cuPythonInit()
 *     if __cuModuleLoadData == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuModuleLoadData" not found')
 *     err = (<CUresult (*)(CUmodule*, const void*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuModuleLoadData)(module, image)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":3094
 *     if __cuModuleLoadData == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuModuleLoadData" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUmodule*, const void*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuModuleLoadData)(module, image)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__53, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 3094, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 3094, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":3093
 *     cuPythonInit()
 *     if __cuModuleLoadData == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuModuleLoadData" not found')
 *     err = (<CUresult (*)(CUmodule*, const void*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuModuleLoadData)(module, image)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":3092
 *     global __cuModuleLoadData
 *     cuPythonInit()
 *     if __cuModuleLoadData == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuModuleLoadData" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":3095
 *         with gil:
 *             raise RuntimeError('Function "cuModuleLoadData" not found')
 *     err = (<CUresult (*)(CUmodule*, const void*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuModuleLoadData)(module, image)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUmodule *, void const *))__pyx_v_4cuda_5_cuda_5ccuda___cuModuleLoadData)(__pyx_v_module, __pyx_v_image); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 3095, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":3096
 *             raise RuntimeError('Function "cuModuleLoadData" not found')
 *     err = (<CUresult (*)(CUmodule*, const void*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuModuleLoadData)(module, image)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuModuleLoadDataEx(CUmodule* module, const void* image, unsigned int numOptions, CUjit_option* options, void** optionValues) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":3089
 *     return err
 * 
 * cdef CUresult _cuModuleLoadData(CUmodule* module, const void* image) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuModuleLoadData
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuModuleLoadData", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":3098
 *     return err
 * 
 * cdef CUresult _cuModuleLoadDataEx(CUmodule* module, const void* image, unsigned int numOptions, CUjit_option* options, void** optionValues) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuModuleLoadDataEx
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuModuleLoadDataEx(CUmodule *__pyx_v_module, void const *__pyx_v_image, unsigned int __pyx_v_numOptions, CUjit_option *__pyx_v_options, void **__pyx_v_optionValues) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuModuleLoadDataEx", 1);
  __Pyx_TraceCall("_cuModuleLoadDataEx", __pyx_f[0], 3098, 1, __PYX_ERR(0, 3098, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":3100
 * cdef CUresult _cuModuleLoadDataEx(CUmodule* module, const void* image, unsigned int numOptions, CUjit_option* options, void** optionValues) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuModuleLoadDataEx
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuModuleLoadDataEx == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 3100, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":3101
 *     global __cuModuleLoadDataEx
 *     cuPythonInit()
 *     if __cuModuleLoadDataEx == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuModuleLoadDataEx" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuModuleLoadDataEx == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":3102
 *     cuPythonInit()
 *     if __cuModuleLoadDataEx == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuModuleLoadDataEx" not found')
 *     err = (<CUresult (*)(CUmodule*, const void*, unsigned int, CUjit_option*, void**) except ?CUDA_ERROR_NOT_FOUND nogil> __cuModuleLoadDataEx)(module, image, numOptions, options, optionValues)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":3103
 *     if __cuModuleLoadDataEx == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuModuleLoadDataEx" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUmodule*, const void*, unsigned int, CUjit_option*, void**) except ?CUDA_ERROR_NOT_FOUND nogil> __cuModuleLoadDataEx)(module, image, numOptions, options, optionValues)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__54, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 3103, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 3103, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":3102
 *     cuPythonInit()
 *     if __cuModuleLoadDataEx == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuModuleLoadDataEx" not found')
 *     err = (<CUresult (*)(CUmodule*, const void*, unsigned int, CUjit_option*, void**) except ?CUDA_ERROR_NOT_FOUND nogil> __cuModuleLoadDataEx)(module, image, numOptions, options, optionValues)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":3101
 *     global __cuModuleLoadDataEx
 *     cuPythonInit()
 *     if __cuModuleLoadDataEx == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuModuleLoadDataEx" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":3104
 *         with gil:
 *             raise RuntimeError('Function "cuModuleLoadDataEx" not found')
 *     err = (<CUresult (*)(CUmodule*, const void*, unsigned int, CUjit_option*, void**) except ?CUDA_ERROR_NOT_FOUND nogil> __cuModuleLoadDataEx)(module, image, numOptions, options, optionValues)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUmodule *, void const *, unsigned int, CUjit_option *, void **))__pyx_v_4cuda_5_cuda_5ccuda___cuModuleLoadDataEx)(__pyx_v_module, __pyx_v_image, __pyx_v_numOptions, __pyx_v_options, __pyx_v_optionValues); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 3104, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":3105
 *             raise RuntimeError('Function "cuModuleLoadDataEx" not found')
 *     err = (<CUresult (*)(CUmodule*, const void*, unsigned int, CUjit_option*, void**) except ?CUDA_ERROR_NOT_FOUND nogil> __cuModuleLoadDataEx)(module, image, numOptions, options, optionValues)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuModuleLoadFatBinary(CUmodule* module, const void* fatCubin) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":3098
 *     return err
 * 
 * cdef CUresult _cuModuleLoadDataEx(CUmodule* module, const void* image, unsigned int numOptions, CUjit_option* options, void** optionValues) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuModuleLoadDataEx
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuModuleLoadDataEx", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":3107
 *     return err
 * 
 * cdef CUresult _cuModuleLoadFatBinary(CUmodule* module, const void* fatCubin) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuModuleLoadFatBinary
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuModuleLoadFatBinary(CUmodule *__pyx_v_module, void const *__pyx_v_fatCubin) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuModuleLoadFatBinary", 1);
  __Pyx_TraceCall("_cuModuleLoadFatBinary", __pyx_f[0], 3107, 1, __PYX_ERR(0, 3107, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":3109
 * cdef CUresult _cuModuleLoadFatBinary(CUmodule* module, const void* fatCubin) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuModuleLoadFatBinary
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuModuleLoadFatBinary == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 3109, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":3110
 *     global __cuModuleLoadFatBinary
 *     cuPythonInit()
 *     if __cuModuleLoadFatBinary == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuModuleLoadFatBinary" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuModuleLoadFatBinary == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":3111
 *     cuPythonInit()
 *     if __cuModuleLoadFatBinary == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuModuleLoadFatBinary" not found')
 *     err = (<CUresult (*)(CUmodule*, const void*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuModuleLoadFatBinary)(module, fatCubin)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":3112
 *     if __cuModuleLoadFatBinary == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuModuleLoadFatBinary" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUmodule*, const void*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuModuleLoadFatBinary)(module, fatCubin)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__55, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 3112, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 3112, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":3111
 *     cuPythonInit()
 *     if __cuModuleLoadFatBinary == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuModuleLoadFatBinary" not found')
 *     err = (<CUresult (*)(CUmodule*, const void*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuModuleLoadFatBinary)(module, fatCubin)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":3110
 *     global __cuModuleLoadFatBinary
 *     cuPythonInit()
 *     if __cuModuleLoadFatBinary == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuModuleLoadFatBinary" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":3113
 *         with gil:
 *             raise RuntimeError('Function "cuModuleLoadFatBinary" not found')
 *     err = (<CUresult (*)(CUmodule*, const void*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuModuleLoadFatBinary)(module, fatCubin)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUmodule *, void const *))__pyx_v_4cuda_5_cuda_5ccuda___cuModuleLoadFatBinary)(__pyx_v_module, __pyx_v_fatCubin); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 3113, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":3114
 *             raise RuntimeError('Function "cuModuleLoadFatBinary" not found')
 *     err = (<CUresult (*)(CUmodule*, const void*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuModuleLoadFatBinary)(module, fatCubin)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuModuleUnload(CUmodule hmod) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":3107
 *     return err
 * 
 * cdef CUresult _cuModuleLoadFatBinary(CUmodule* module, const void* fatCubin) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuModuleLoadFatBinary
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuModuleLoadFatBinary", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":3116
 *     return err
 * 
 * cdef CUresult _cuModuleUnload(CUmodule hmod) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuModuleUnload
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuModuleUnload(CUmodule __pyx_v_hmod) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuModuleUnload", 1);
  __Pyx_TraceCall("_cuModuleUnload", __pyx_f[0], 3116, 1, __PYX_ERR(0, 3116, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":3118
 * cdef CUresult _cuModuleUnload(CUmodule hmod) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuModuleUnload
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuModuleUnload == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 3118, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":3119
 *     global __cuModuleUnload
 *     cuPythonInit()
 *     if __cuModuleUnload == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuModuleUnload" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuModuleUnload == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":3120
 *     cuPythonInit()
 *     if __cuModuleUnload == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuModuleUnload" not found')
 *     err = (<CUresult (*)(CUmodule) except ?CUDA_ERROR_NOT_FOUND nogil> __cuModuleUnload)(hmod)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":3121
 *     if __cuModuleUnload == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuModuleUnload" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUmodule) except ?CUDA_ERROR_NOT_FOUND nogil> __cuModuleUnload)(hmod)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__56, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 3121, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 3121, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":3120
 *     cuPythonInit()
 *     if __cuModuleUnload == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuModuleUnload" not found')
 *     err = (<CUresult (*)(CUmodule) except ?CUDA_ERROR_NOT_FOUND nogil> __cuModuleUnload)(hmod)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":3119
 *     global __cuModuleUnload
 *     cuPythonInit()
 *     if __cuModuleUnload == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuModuleUnload" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":3122
 *         with gil:
 *             raise RuntimeError('Function "cuModuleUnload" not found')
 *     err = (<CUresult (*)(CUmodule) except ?CUDA_ERROR_NOT_FOUND nogil> __cuModuleUnload)(hmod)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUmodule))__pyx_v_4cuda_5_cuda_5ccuda___cuModuleUnload)(__pyx_v_hmod); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 3122, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":3123
 *             raise RuntimeError('Function "cuModuleUnload" not found')
 *     err = (<CUresult (*)(CUmodule) except ?CUDA_ERROR_NOT_FOUND nogil> __cuModuleUnload)(hmod)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuModuleGetLoadingMode(CUmoduleLoadingMode* mode) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":3116
 *     return err
 * 
 * cdef CUresult _cuModuleUnload(CUmodule hmod) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuModuleUnload
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuModuleUnload", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":3125
 *     return err
 * 
 * cdef CUresult _cuModuleGetLoadingMode(CUmoduleLoadingMode* mode) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuModuleGetLoadingMode
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuModuleGetLoadingMode(CUmoduleLoadingMode *__pyx_v_mode) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuModuleGetLoadingMode", 1);
  __Pyx_TraceCall("_cuModuleGetLoadingMode", __pyx_f[0], 3125, 1, __PYX_ERR(0, 3125, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":3127
 * cdef CUresult _cuModuleGetLoadingMode(CUmoduleLoadingMode* mode) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuModuleGetLoadingMode
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuModuleGetLoadingMode == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 3127, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":3128
 *     global __cuModuleGetLoadingMode
 *     cuPythonInit()
 *     if __cuModuleGetLoadingMode == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuModuleGetLoadingMode" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuModuleGetLoadingMode == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":3129
 *     cuPythonInit()
 *     if __cuModuleGetLoadingMode == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuModuleGetLoadingMode" not found')
 *     err = (<CUresult (*)(CUmoduleLoadingMode*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuModuleGetLoadingMode)(mode)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":3130
 *     if __cuModuleGetLoadingMode == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuModuleGetLoadingMode" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUmoduleLoadingMode*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuModuleGetLoadingMode)(mode)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__57, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 3130, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 3130, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":3129
 *     cuPythonInit()
 *     if __cuModuleGetLoadingMode == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuModuleGetLoadingMode" not found')
 *     err = (<CUresult (*)(CUmoduleLoadingMode*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuModuleGetLoadingMode)(mode)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":3128
 *     global __cuModuleGetLoadingMode
 *     cuPythonInit()
 *     if __cuModuleGetLoadingMode == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuModuleGetLoadingMode" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":3131
 *         with gil:
 *             raise RuntimeError('Function "cuModuleGetLoadingMode" not found')
 *     err = (<CUresult (*)(CUmoduleLoadingMode*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuModuleGetLoadingMode)(mode)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUmoduleLoadingMode *))__pyx_v_4cuda_5_cuda_5ccuda___cuModuleGetLoadingMode)(__pyx_v_mode); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 3131, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":3132
 *             raise RuntimeError('Function "cuModuleGetLoadingMode" not found')
 *     err = (<CUresult (*)(CUmoduleLoadingMode*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuModuleGetLoadingMode)(mode)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuModuleGetFunction(CUfunction* hfunc, CUmodule hmod, const char* name) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":3125
 *     return err
 * 
 * cdef CUresult _cuModuleGetLoadingMode(CUmoduleLoadingMode* mode) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuModuleGetLoadingMode
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuModuleGetLoadingMode", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":3134
 *     return err
 * 
 * cdef CUresult _cuModuleGetFunction(CUfunction* hfunc, CUmodule hmod, const char* name) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuModuleGetFunction
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuModuleGetFunction(CUfunction *__pyx_v_hfunc, CUmodule __pyx_v_hmod, char const *__pyx_v_name) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuModuleGetFunction", 1);
  __Pyx_TraceCall("_cuModuleGetFunction", __pyx_f[0], 3134, 1, __PYX_ERR(0, 3134, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":3136
 * cdef CUresult _cuModuleGetFunction(CUfunction* hfunc, CUmodule hmod, const char* name) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuModuleGetFunction
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuModuleGetFunction == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 3136, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":3137
 *     global __cuModuleGetFunction
 *     cuPythonInit()
 *     if __cuModuleGetFunction == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuModuleGetFunction" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuModuleGetFunction == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":3138
 *     cuPythonInit()
 *     if __cuModuleGetFunction == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuModuleGetFunction" not found')
 *     err = (<CUresult (*)(CUfunction*, CUmodule, const char*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuModuleGetFunction)(hfunc, hmod, name)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":3139
 *     if __cuModuleGetFunction == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuModuleGetFunction" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUfunction*, CUmodule, const char*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuModuleGetFunction)(hfunc, hmod, name)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__58, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 3139, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 3139, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":3138
 *     cuPythonInit()
 *     if __cuModuleGetFunction == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuModuleGetFunction" not found')
 *     err = (<CUresult (*)(CUfunction*, CUmodule, const char*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuModuleGetFunction)(hfunc, hmod, name)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":3137
 *     global __cuModuleGetFunction
 *     cuPythonInit()
 *     if __cuModuleGetFunction == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuModuleGetFunction" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":3140
 *         with gil:
 *             raise RuntimeError('Function "cuModuleGetFunction" not found')
 *     err = (<CUresult (*)(CUfunction*, CUmodule, const char*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuModuleGetFunction)(hfunc, hmod, name)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUfunction *, CUmodule, char const *))__pyx_v_4cuda_5_cuda_5ccuda___cuModuleGetFunction)(__pyx_v_hfunc, __pyx_v_hmod, __pyx_v_name); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 3140, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":3141
 *             raise RuntimeError('Function "cuModuleGetFunction" not found')
 *     err = (<CUresult (*)(CUfunction*, CUmodule, const char*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuModuleGetFunction)(hfunc, hmod, name)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuModuleGetFunctionCount(unsigned int* count, CUmodule mod) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":3134
 *     return err
 * 
 * cdef CUresult _cuModuleGetFunction(CUfunction* hfunc, CUmodule hmod, const char* name) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuModuleGetFunction
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuModuleGetFunction", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":3143
 *     return err
 * 
 * cdef CUresult _cuModuleGetFunctionCount(unsigned int* count, CUmodule mod) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuModuleGetFunctionCount
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuModuleGetFunctionCount(unsigned int *__pyx_v_count, CUmodule __pyx_v_mod) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuModuleGetFunctionCount", 1);
  __Pyx_TraceCall("_cuModuleGetFunctionCount", __pyx_f[0], 3143, 1, __PYX_ERR(0, 3143, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":3145
 * cdef CUresult _cuModuleGetFunctionCount(unsigned int* count, CUmodule mod) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuModuleGetFunctionCount
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuModuleGetFunctionCount == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 3145, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":3146
 *     global __cuModuleGetFunctionCount
 *     cuPythonInit()
 *     if __cuModuleGetFunctionCount == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuModuleGetFunctionCount" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuModuleGetFunctionCount == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":3147
 *     cuPythonInit()
 *     if __cuModuleGetFunctionCount == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuModuleGetFunctionCount" not found')
 *     err = (<CUresult (*)(unsigned int*, CUmodule) except ?CUDA_ERROR_NOT_FOUND nogil> __cuModuleGetFunctionCount)(count, mod)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":3148
 *     if __cuModuleGetFunctionCount == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuModuleGetFunctionCount" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(unsigned int*, CUmodule) except ?CUDA_ERROR_NOT_FOUND nogil> __cuModuleGetFunctionCount)(count, mod)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__59, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 3148, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 3148, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":3147
 *     cuPythonInit()
 *     if __cuModuleGetFunctionCount == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuModuleGetFunctionCount" not found')
 *     err = (<CUresult (*)(unsigned int*, CUmodule) except ?CUDA_ERROR_NOT_FOUND nogil> __cuModuleGetFunctionCount)(count, mod)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":3146
 *     global __cuModuleGetFunctionCount
 *     cuPythonInit()
 *     if __cuModuleGetFunctionCount == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuModuleGetFunctionCount" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":3149
 *         with gil:
 *             raise RuntimeError('Function "cuModuleGetFunctionCount" not found')
 *     err = (<CUresult (*)(unsigned int*, CUmodule) except ?CUDA_ERROR_NOT_FOUND nogil> __cuModuleGetFunctionCount)(count, mod)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(unsigned int *, CUmodule))__pyx_v_4cuda_5_cuda_5ccuda___cuModuleGetFunctionCount)(__pyx_v_count, __pyx_v_mod); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 3149, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":3150
 *             raise RuntimeError('Function "cuModuleGetFunctionCount" not found')
 *     err = (<CUresult (*)(unsigned int*, CUmodule) except ?CUDA_ERROR_NOT_FOUND nogil> __cuModuleGetFunctionCount)(count, mod)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuModuleEnumerateFunctions(CUfunction* functions, unsigned int numFunctions, CUmodule mod) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":3143
 *     return err
 * 
 * cdef CUresult _cuModuleGetFunctionCount(unsigned int* count, CUmodule mod) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuModuleGetFunctionCount
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuModuleGetFunctionCount", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":3152
 *     return err
 * 
 * cdef CUresult _cuModuleEnumerateFunctions(CUfunction* functions, unsigned int numFunctions, CUmodule mod) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuModuleEnumerateFunctions
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuModuleEnumerateFunctions(CUfunction *__pyx_v_functions, unsigned int __pyx_v_numFunctions, CUmodule __pyx_v_mod) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuModuleEnumerateFunctions", 1);
  __Pyx_TraceCall("_cuModuleEnumerateFunctions", __pyx_f[0], 3152, 1, __PYX_ERR(0, 3152, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":3154
 * cdef CUresult _cuModuleEnumerateFunctions(CUfunction* functions, unsigned int numFunctions, CUmodule mod) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuModuleEnumerateFunctions
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuModuleEnumerateFunctions == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 3154, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":3155
 *     global __cuModuleEnumerateFunctions
 *     cuPythonInit()
 *     if __cuModuleEnumerateFunctions == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuModuleEnumerateFunctions" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuModuleEnumerateFunctions == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":3156
 *     cuPythonInit()
 *     if __cuModuleEnumerateFunctions == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuModuleEnumerateFunctions" not found')
 *     err = (<CUresult (*)(CUfunction*, unsigned int, CUmodule) except ?CUDA_ERROR_NOT_FOUND nogil> __cuModuleEnumerateFunctions)(functions, numFunctions, mod)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":3157
 *     if __cuModuleEnumerateFunctions == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuModuleEnumerateFunctions" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUfunction*, unsigned int, CUmodule) except ?CUDA_ERROR_NOT_FOUND nogil> __cuModuleEnumerateFunctions)(functions, numFunctions, mod)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__60, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 3157, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 3157, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":3156
 *     cuPythonInit()
 *     if __cuModuleEnumerateFunctions == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuModuleEnumerateFunctions" not found')
 *     err = (<CUresult (*)(CUfunction*, unsigned int, CUmodule) except ?CUDA_ERROR_NOT_FOUND nogil> __cuModuleEnumerateFunctions)(functions, numFunctions, mod)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":3155
 *     global __cuModuleEnumerateFunctions
 *     cuPythonInit()
 *     if __cuModuleEnumerateFunctions == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuModuleEnumerateFunctions" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":3158
 *         with gil:
 *             raise RuntimeError('Function "cuModuleEnumerateFunctions" not found')
 *     err = (<CUresult (*)(CUfunction*, unsigned int, CUmodule) except ?CUDA_ERROR_NOT_FOUND nogil> __cuModuleEnumerateFunctions)(functions, numFunctions, mod)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUfunction *, unsigned int, CUmodule))__pyx_v_4cuda_5_cuda_5ccuda___cuModuleEnumerateFunctions)(__pyx_v_functions, __pyx_v_numFunctions, __pyx_v_mod); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 3158, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":3159
 *             raise RuntimeError('Function "cuModuleEnumerateFunctions" not found')
 *     err = (<CUresult (*)(CUfunction*, unsigned int, CUmodule) except ?CUDA_ERROR_NOT_FOUND nogil> __cuModuleEnumerateFunctions)(functions, numFunctions, mod)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuModuleGetGlobal_v2(CUdeviceptr* dptr, size_t* numbytes, CUmodule hmod, const char* name) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":3152
 *     return err
 * 
 * cdef CUresult _cuModuleEnumerateFunctions(CUfunction* functions, unsigned int numFunctions, CUmodule mod) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuModuleEnumerateFunctions
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuModuleEnumerateFunctions", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":3161
 *     return err
 * 
 * cdef CUresult _cuModuleGetGlobal_v2(CUdeviceptr* dptr, size_t* numbytes, CUmodule hmod, const char* name) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuModuleGetGlobal_v2
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuModuleGetGlobal_v2(CUdeviceptr *__pyx_v_dptr, size_t *__pyx_v_numbytes, CUmodule __pyx_v_hmod, char const *__pyx_v_name) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuModuleGetGlobal_v2", 1);
  __Pyx_TraceCall("_cuModuleGetGlobal_v2", __pyx_f[0], 3161, 1, __PYX_ERR(0, 3161, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":3163
 * cdef CUresult _cuModuleGetGlobal_v2(CUdeviceptr* dptr, size_t* numbytes, CUmodule hmod, const char* name) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuModuleGetGlobal_v2
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuModuleGetGlobal_v2 == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 3163, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":3164
 *     global __cuModuleGetGlobal_v2
 *     cuPythonInit()
 *     if __cuModuleGetGlobal_v2 == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuModuleGetGlobal_v2" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuModuleGetGlobal_v2 == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":3165
 *     cuPythonInit()
 *     if __cuModuleGetGlobal_v2 == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuModuleGetGlobal_v2" not found')
 *     err = (<CUresult (*)(CUdeviceptr*, size_t*, CUmodule, const char*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuModuleGetGlobal_v2)(dptr, numbytes, hmod, name)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":3166
 *     if __cuModuleGetGlobal_v2 == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuModuleGetGlobal_v2" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUdeviceptr*, size_t*, CUmodule, const char*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuModuleGetGlobal_v2)(dptr, numbytes, hmod, name)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__61, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 3166, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 3166, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":3165
 *     cuPythonInit()
 *     if __cuModuleGetGlobal_v2 == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuModuleGetGlobal_v2" not found')
 *     err = (<CUresult (*)(CUdeviceptr*, size_t*, CUmodule, const char*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuModuleGetGlobal_v2)(dptr, numbytes, hmod, name)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":3164
 *     global __cuModuleGetGlobal_v2
 *     cuPythonInit()
 *     if __cuModuleGetGlobal_v2 == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuModuleGetGlobal_v2" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":3167
 *         with gil:
 *             raise RuntimeError('Function "cuModuleGetGlobal_v2" not found')
 *     err = (<CUresult (*)(CUdeviceptr*, size_t*, CUmodule, const char*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuModuleGetGlobal_v2)(dptr, numbytes, hmod, name)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUdeviceptr *, size_t *, CUmodule, char const *))__pyx_v_4cuda_5_cuda_5ccuda___cuModuleGetGlobal_v2)(__pyx_v_dptr, __pyx_v_numbytes, __pyx_v_hmod, __pyx_v_name); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 3167, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":3168
 *             raise RuntimeError('Function "cuModuleGetGlobal_v2" not found')
 *     err = (<CUresult (*)(CUdeviceptr*, size_t*, CUmodule, const char*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuModuleGetGlobal_v2)(dptr, numbytes, hmod, name)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuLinkCreate_v2(unsigned int numOptions, CUjit_option* options, void** optionValues, CUlinkState* stateOut) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":3161
 *     return err
 * 
 * cdef CUresult _cuModuleGetGlobal_v2(CUdeviceptr* dptr, size_t* numbytes, CUmodule hmod, const char* name) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuModuleGetGlobal_v2
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuModuleGetGlobal_v2", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":3170
 *     return err
 * 
 * cdef CUresult _cuLinkCreate_v2(unsigned int numOptions, CUjit_option* options, void** optionValues, CUlinkState* stateOut) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuLinkCreate_v2
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuLinkCreate_v2(unsigned int __pyx_v_numOptions, CUjit_option *__pyx_v_options, void **__pyx_v_optionValues, CUlinkState *__pyx_v_stateOut) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuLinkCreate_v2", 1);
  __Pyx_TraceCall("_cuLinkCreate_v2", __pyx_f[0], 3170, 1, __PYX_ERR(0, 3170, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":3172
 * cdef CUresult _cuLinkCreate_v2(unsigned int numOptions, CUjit_option* options, void** optionValues, CUlinkState* stateOut) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuLinkCreate_v2
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuLinkCreate_v2 == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 3172, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":3173
 *     global __cuLinkCreate_v2
 *     cuPythonInit()
 *     if __cuLinkCreate_v2 == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuLinkCreate_v2" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuLinkCreate_v2 == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":3174
 *     cuPythonInit()
 *     if __cuLinkCreate_v2 == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuLinkCreate_v2" not found')
 *     err = (<CUresult (*)(unsigned int, CUjit_option*, void**, CUlinkState*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuLinkCreate_v2)(numOptions, options, optionValues, stateOut)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":3175
 *     if __cuLinkCreate_v2 == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuLinkCreate_v2" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(unsigned int, CUjit_option*, void**, CUlinkState*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuLinkCreate_v2)(numOptions, options, optionValues, stateOut)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__62, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 3175, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 3175, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":3174
 *     cuPythonInit()
 *     if __cuLinkCreate_v2 == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuLinkCreate_v2" not found')
 *     err = (<CUresult (*)(unsigned int, CUjit_option*, void**, CUlinkState*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuLinkCreate_v2)(numOptions, options, optionValues, stateOut)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":3173
 *     global __cuLinkCreate_v2
 *     cuPythonInit()
 *     if __cuLinkCreate_v2 == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuLinkCreate_v2" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":3176
 *         with gil:
 *             raise RuntimeError('Function "cuLinkCreate_v2" not found')
 *     err = (<CUresult (*)(unsigned int, CUjit_option*, void**, CUlinkState*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuLinkCreate_v2)(numOptions, options, optionValues, stateOut)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(unsigned int, CUjit_option *, void **, CUlinkState *))__pyx_v_4cuda_5_cuda_5ccuda___cuLinkCreate_v2)(__pyx_v_numOptions, __pyx_v_options, __pyx_v_optionValues, __pyx_v_stateOut); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 3176, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":3177
 *             raise RuntimeError('Function "cuLinkCreate_v2" not found')
 *     err = (<CUresult (*)(unsigned int, CUjit_option*, void**, CUlinkState*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuLinkCreate_v2)(numOptions, options, optionValues, stateOut)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuLinkAddData_v2(CUlinkState state, CUjitInputType typename, void* data, size_t size, const char* name, unsigned int numOptions, CUjit_option* options, void** optionValues) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":3170
 *     return err
 * 
 * cdef CUresult _cuLinkCreate_v2(unsigned int numOptions, CUjit_option* options, void** optionValues, CUlinkState* stateOut) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuLinkCreate_v2
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuLinkCreate_v2", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":3179
 *     return err
 * 
 * cdef CUresult _cuLinkAddData_v2(CUlinkState state, CUjitInputType typename, void* data, size_t size, const char* name, unsigned int numOptions, CUjit_option* options, void** optionValues) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuLinkAddData_v2
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuLinkAddData_v2(CUlinkState __pyx_v_state, CUjitInputType __pyx_v_typename, void *__pyx_v_data, size_t __pyx_v_size, char const *__pyx_v_name, unsigned int __pyx_v_numOptions, CUjit_option *__pyx_v_options, void **__pyx_v_optionValues) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuLinkAddData_v2", 1);
  __Pyx_TraceCall("_cuLinkAddData_v2", __pyx_f[0], 3179, 1, __PYX_ERR(0, 3179, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":3181
 * cdef CUresult _cuLinkAddData_v2(CUlinkState state, CUjitInputType typename, void* data, size_t size, const char* name, unsigned int numOptions, CUjit_option* options, void** optionValues) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuLinkAddData_v2
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuLinkAddData_v2 == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 3181, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":3182
 *     global __cuLinkAddData_v2
 *     cuPythonInit()
 *     if __cuLinkAddData_v2 == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuLinkAddData_v2" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuLinkAddData_v2 == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":3183
 *     cuPythonInit()
 *     if __cuLinkAddData_v2 == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuLinkAddData_v2" not found')
 *     err = (<CUresult (*)(CUlinkState, CUjitInputType, void*, size_t, const char*, unsigned int, CUjit_option*, void**) except ?CUDA_ERROR_NOT_FOUND nogil> __cuLinkAddData_v2)(state, typename, data, size, name, numOptions, options, optionValues)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":3184
 *     if __cuLinkAddData_v2 == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuLinkAddData_v2" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUlinkState, CUjitInputType, void*, size_t, const char*, unsigned int, CUjit_option*, void**) except ?CUDA_ERROR_NOT_FOUND nogil> __cuLinkAddData_v2)(state, typename, data, size, name, numOptions, options, optionValues)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__63, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 3184, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 3184, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":3183
 *     cuPythonInit()
 *     if __cuLinkAddData_v2 == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuLinkAddData_v2" not found')
 *     err = (<CUresult (*)(CUlinkState, CUjitInputType, void*, size_t, const char*, unsigned int, CUjit_option*, void**) except ?CUDA_ERROR_NOT_FOUND nogil> __cuLinkAddData_v2)(state, typename, data, size, name, numOptions, options, optionValues)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":3182
 *     global __cuLinkAddData_v2
 *     cuPythonInit()
 *     if __cuLinkAddData_v2 == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuLinkAddData_v2" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":3185
 *         with gil:
 *             raise RuntimeError('Function "cuLinkAddData_v2" not found')
 *     err = (<CUresult (*)(CUlinkState, CUjitInputType, void*, size_t, const char*, unsigned int, CUjit_option*, void**) except ?CUDA_ERROR_NOT_FOUND nogil> __cuLinkAddData_v2)(state, typename, data, size, name, numOptions, options, optionValues)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUlinkState, CUjitInputType, void *, size_t, char const *, unsigned int, CUjit_option *, void **))__pyx_v_4cuda_5_cuda_5ccuda___cuLinkAddData_v2)(__pyx_v_state, __pyx_v_typename, __pyx_v_data, __pyx_v_size, __pyx_v_name, __pyx_v_numOptions, __pyx_v_options, __pyx_v_optionValues); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 3185, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":3186
 *             raise RuntimeError('Function "cuLinkAddData_v2" not found')
 *     err = (<CUresult (*)(CUlinkState, CUjitInputType, void*, size_t, const char*, unsigned int, CUjit_option*, void**) except ?CUDA_ERROR_NOT_FOUND nogil> __cuLinkAddData_v2)(state, typename, data, size, name, numOptions, options, optionValues)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuLinkAddFile_v2(CUlinkState state, CUjitInputType typename, const char* path, unsigned int numOptions, CUjit_option* options, void** optionValues) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":3179
 *     return err
 * 
 * cdef CUresult _cuLinkAddData_v2(CUlinkState state, CUjitInputType typename, void* data, size_t size, const char* name, unsigned int numOptions, CUjit_option* options, void** optionValues) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuLinkAddData_v2
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuLinkAddData_v2", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":3188
 *     return err
 * 
 * cdef CUresult _cuLinkAddFile_v2(CUlinkState state, CUjitInputType typename, const char* path, unsigned int numOptions, CUjit_option* options, void** optionValues) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuLinkAddFile_v2
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuLinkAddFile_v2(CUlinkState __pyx_v_state, CUjitInputType __pyx_v_typename, char const *__pyx_v_path, unsigned int __pyx_v_numOptions, CUjit_option *__pyx_v_options, void **__pyx_v_optionValues) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuLinkAddFile_v2", 1);
  __Pyx_TraceCall("_cuLinkAddFile_v2", __pyx_f[0], 3188, 1, __PYX_ERR(0, 3188, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":3190
 * cdef CUresult _cuLinkAddFile_v2(CUlinkState state, CUjitInputType typename, const char* path, unsigned int numOptions, CUjit_option* options, void** optionValues) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuLinkAddFile_v2
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuLinkAddFile_v2 == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 3190, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":3191
 *     global __cuLinkAddFile_v2
 *     cuPythonInit()
 *     if __cuLinkAddFile_v2 == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuLinkAddFile_v2" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuLinkAddFile_v2 == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":3192
 *     cuPythonInit()
 *     if __cuLinkAddFile_v2 == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuLinkAddFile_v2" not found')
 *     err = (<CUresult (*)(CUlinkState, CUjitInputType, const char*, unsigned int, CUjit_option*, void**) except ?CUDA_ERROR_NOT_FOUND nogil> __cuLinkAddFile_v2)(state, typename, path, numOptions, options, optionValues)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":3193
 *     if __cuLinkAddFile_v2 == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuLinkAddFile_v2" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUlinkState, CUjitInputType, const char*, unsigned int, CUjit_option*, void**) except ?CUDA_ERROR_NOT_FOUND nogil> __cuLinkAddFile_v2)(state, typename, path, numOptions, options, optionValues)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__64, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 3193, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 3193, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":3192
 *     cuPythonInit()
 *     if __cuLinkAddFile_v2 == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuLinkAddFile_v2" not found')
 *     err = (<CUresult (*)(CUlinkState, CUjitInputType, const char*, unsigned int, CUjit_option*, void**) except ?CUDA_ERROR_NOT_FOUND nogil> __cuLinkAddFile_v2)(state, typename, path, numOptions, options, optionValues)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":3191
 *     global __cuLinkAddFile_v2
 *     cuPythonInit()
 *     if __cuLinkAddFile_v2 == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuLinkAddFile_v2" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":3194
 *         with gil:
 *             raise RuntimeError('Function "cuLinkAddFile_v2" not found')
 *     err = (<CUresult (*)(CUlinkState, CUjitInputType, const char*, unsigned int, CUjit_option*, void**) except ?CUDA_ERROR_NOT_FOUND nogil> __cuLinkAddFile_v2)(state, typename, path, numOptions, options, optionValues)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUlinkState, CUjitInputType, char const *, unsigned int, CUjit_option *, void **))__pyx_v_4cuda_5_cuda_5ccuda___cuLinkAddFile_v2)(__pyx_v_state, __pyx_v_typename, __pyx_v_path, __pyx_v_numOptions, __pyx_v_options, __pyx_v_optionValues); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 3194, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":3195
 *             raise RuntimeError('Function "cuLinkAddFile_v2" not found')
 *     err = (<CUresult (*)(CUlinkState, CUjitInputType, const char*, unsigned int, CUjit_option*, void**) except ?CUDA_ERROR_NOT_FOUND nogil> __cuLinkAddFile_v2)(state, typename, path, numOptions, options, optionValues)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuLinkComplete(CUlinkState state, void** cubinOut, size_t* sizeOut) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":3188
 *     return err
 * 
 * cdef CUresult _cuLinkAddFile_v2(CUlinkState state, CUjitInputType typename, const char* path, unsigned int numOptions, CUjit_option* options, void** optionValues) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuLinkAddFile_v2
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuLinkAddFile_v2", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":3197
 *     return err
 * 
 * cdef CUresult _cuLinkComplete(CUlinkState state, void** cubinOut, size_t* sizeOut) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuLinkComplete
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuLinkComplete(CUlinkState __pyx_v_state, void **__pyx_v_cubinOut, size_t *__pyx_v_sizeOut) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuLinkComplete", 1);
  __Pyx_TraceCall("_cuLinkComplete", __pyx_f[0], 3197, 1, __PYX_ERR(0, 3197, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":3199
 * cdef CUresult _cuLinkComplete(CUlinkState state, void** cubinOut, size_t* sizeOut) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuLinkComplete
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuLinkComplete == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 3199, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":3200
 *     global __cuLinkComplete
 *     cuPythonInit()
 *     if __cuLinkComplete == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuLinkComplete" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuLinkComplete == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":3201
 *     cuPythonInit()
 *     if __cuLinkComplete == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuLinkComplete" not found')
 *     err = (<CUresult (*)(CUlinkState, void**, size_t*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuLinkComplete)(state, cubinOut, sizeOut)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":3202
 *     if __cuLinkComplete == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuLinkComplete" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUlinkState, void**, size_t*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuLinkComplete)(state, cubinOut, sizeOut)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__65, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 3202, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 3202, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":3201
 *     cuPythonInit()
 *     if __cuLinkComplete == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuLinkComplete" not found')
 *     err = (<CUresult (*)(CUlinkState, void**, size_t*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuLinkComplete)(state, cubinOut, sizeOut)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":3200
 *     global __cuLinkComplete
 *     cuPythonInit()
 *     if __cuLinkComplete == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuLinkComplete" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":3203
 *         with gil:
 *             raise RuntimeError('Function "cuLinkComplete" not found')
 *     err = (<CUresult (*)(CUlinkState, void**, size_t*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuLinkComplete)(state, cubinOut, sizeOut)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUlinkState, void **, size_t *))__pyx_v_4cuda_5_cuda_5ccuda___cuLinkComplete)(__pyx_v_state, __pyx_v_cubinOut, __pyx_v_sizeOut); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 3203, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":3204
 *             raise RuntimeError('Function "cuLinkComplete" not found')
 *     err = (<CUresult (*)(CUlinkState, void**, size_t*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuLinkComplete)(state, cubinOut, sizeOut)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuLinkDestroy(CUlinkState state) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":3197
 *     return err
 * 
 * cdef CUresult _cuLinkComplete(CUlinkState state, void** cubinOut, size_t* sizeOut) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuLinkComplete
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuLinkComplete", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":3206
 *     return err
 * 
 * cdef CUresult _cuLinkDestroy(CUlinkState state) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuLinkDestroy
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuLinkDestroy(CUlinkState __pyx_v_state) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuLinkDestroy", 1);
  __Pyx_TraceCall("_cuLinkDestroy", __pyx_f[0], 3206, 1, __PYX_ERR(0, 3206, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":3208
 * cdef CUresult _cuLinkDestroy(CUlinkState state) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuLinkDestroy
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuLinkDestroy == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 3208, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":3209
 *     global __cuLinkDestroy
 *     cuPythonInit()
 *     if __cuLinkDestroy == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuLinkDestroy" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuLinkDestroy == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":3210
 *     cuPythonInit()
 *     if __cuLinkDestroy == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuLinkDestroy" not found')
 *     err = (<CUresult (*)(CUlinkState) except ?CUDA_ERROR_NOT_FOUND nogil> __cuLinkDestroy)(state)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":3211
 *     if __cuLinkDestroy == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuLinkDestroy" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUlinkState) except ?CUDA_ERROR_NOT_FOUND nogil> __cuLinkDestroy)(state)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__66, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 3211, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 3211, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":3210
 *     cuPythonInit()
 *     if __cuLinkDestroy == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuLinkDestroy" not found')
 *     err = (<CUresult (*)(CUlinkState) except ?CUDA_ERROR_NOT_FOUND nogil> __cuLinkDestroy)(state)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":3209
 *     global __cuLinkDestroy
 *     cuPythonInit()
 *     if __cuLinkDestroy == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuLinkDestroy" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":3212
 *         with gil:
 *             raise RuntimeError('Function "cuLinkDestroy" not found')
 *     err = (<CUresult (*)(CUlinkState) except ?CUDA_ERROR_NOT_FOUND nogil> __cuLinkDestroy)(state)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUlinkState))__pyx_v_4cuda_5_cuda_5ccuda___cuLinkDestroy)(__pyx_v_state); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 3212, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":3213
 *             raise RuntimeError('Function "cuLinkDestroy" not found')
 *     err = (<CUresult (*)(CUlinkState) except ?CUDA_ERROR_NOT_FOUND nogil> __cuLinkDestroy)(state)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuModuleGetTexRef(CUtexref* pTexRef, CUmodule hmod, const char* name) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":3206
 *     return err
 * 
 * cdef CUresult _cuLinkDestroy(CUlinkState state) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuLinkDestroy
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuLinkDestroy", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":3215
 *     return err
 * 
 * cdef CUresult _cuModuleGetTexRef(CUtexref* pTexRef, CUmodule hmod, const char* name) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuModuleGetTexRef
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuModuleGetTexRef(CUtexref *__pyx_v_pTexRef, CUmodule __pyx_v_hmod, char const *__pyx_v_name) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuModuleGetTexRef", 1);
  __Pyx_TraceCall("_cuModuleGetTexRef", __pyx_f[0], 3215, 1, __PYX_ERR(0, 3215, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":3217
 * cdef CUresult _cuModuleGetTexRef(CUtexref* pTexRef, CUmodule hmod, const char* name) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuModuleGetTexRef
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuModuleGetTexRef == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 3217, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":3218
 *     global __cuModuleGetTexRef
 *     cuPythonInit()
 *     if __cuModuleGetTexRef == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuModuleGetTexRef" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuModuleGetTexRef == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":3219
 *     cuPythonInit()
 *     if __cuModuleGetTexRef == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuModuleGetTexRef" not found')
 *     err = (<CUresult (*)(CUtexref*, CUmodule, const char*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuModuleGetTexRef)(pTexRef, hmod, name)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":3220
 *     if __cuModuleGetTexRef == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuModuleGetTexRef" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUtexref*, CUmodule, const char*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuModuleGetTexRef)(pTexRef, hmod, name)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__67, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 3220, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 3220, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":3219
 *     cuPythonInit()
 *     if __cuModuleGetTexRef == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuModuleGetTexRef" not found')
 *     err = (<CUresult (*)(CUtexref*, CUmodule, const char*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuModuleGetTexRef)(pTexRef, hmod, name)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":3218
 *     global __cuModuleGetTexRef
 *     cuPythonInit()
 *     if __cuModuleGetTexRef == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuModuleGetTexRef" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":3221
 *         with gil:
 *             raise RuntimeError('Function "cuModuleGetTexRef" not found')
 *     err = (<CUresult (*)(CUtexref*, CUmodule, const char*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuModuleGetTexRef)(pTexRef, hmod, name)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUtexref *, CUmodule, char const *))__pyx_v_4cuda_5_cuda_5ccuda___cuModuleGetTexRef)(__pyx_v_pTexRef, __pyx_v_hmod, __pyx_v_name); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 3221, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":3222
 *             raise RuntimeError('Function "cuModuleGetTexRef" not found')
 *     err = (<CUresult (*)(CUtexref*, CUmodule, const char*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuModuleGetTexRef)(pTexRef, hmod, name)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuModuleGetSurfRef(CUsurfref* pSurfRef, CUmodule hmod, const char* name) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":3215
 *     return err
 * 
 * cdef CUresult _cuModuleGetTexRef(CUtexref* pTexRef, CUmodule hmod, const char* name) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuModuleGetTexRef
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuModuleGetTexRef", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":3224
 *     return err
 * 
 * cdef CUresult _cuModuleGetSurfRef(CUsurfref* pSurfRef, CUmodule hmod, const char* name) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuModuleGetSurfRef
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuModuleGetSurfRef(CUsurfref *__pyx_v_pSurfRef, CUmodule __pyx_v_hmod, char const *__pyx_v_name) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuModuleGetSurfRef", 1);
  __Pyx_TraceCall("_cuModuleGetSurfRef", __pyx_f[0], 3224, 1, __PYX_ERR(0, 3224, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":3226
 * cdef CUresult _cuModuleGetSurfRef(CUsurfref* pSurfRef, CUmodule hmod, const char* name) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuModuleGetSurfRef
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuModuleGetSurfRef == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 3226, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":3227
 *     global __cuModuleGetSurfRef
 *     cuPythonInit()
 *     if __cuModuleGetSurfRef == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuModuleGetSurfRef" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuModuleGetSurfRef == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":3228
 *     cuPythonInit()
 *     if __cuModuleGetSurfRef == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuModuleGetSurfRef" not found')
 *     err = (<CUresult (*)(CUsurfref*, CUmodule, const char*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuModuleGetSurfRef)(pSurfRef, hmod, name)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":3229
 *     if __cuModuleGetSurfRef == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuModuleGetSurfRef" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUsurfref*, CUmodule, const char*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuModuleGetSurfRef)(pSurfRef, hmod, name)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__68, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 3229, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 3229, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":3228
 *     cuPythonInit()
 *     if __cuModuleGetSurfRef == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuModuleGetSurfRef" not found')
 *     err = (<CUresult (*)(CUsurfref*, CUmodule, const char*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuModuleGetSurfRef)(pSurfRef, hmod, name)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":3227
 *     global __cuModuleGetSurfRef
 *     cuPythonInit()
 *     if __cuModuleGetSurfRef == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuModuleGetSurfRef" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":3230
 *         with gil:
 *             raise RuntimeError('Function "cuModuleGetSurfRef" not found')
 *     err = (<CUresult (*)(CUsurfref*, CUmodule, const char*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuModuleGetSurfRef)(pSurfRef, hmod, name)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUsurfref *, CUmodule, char const *))__pyx_v_4cuda_5_cuda_5ccuda___cuModuleGetSurfRef)(__pyx_v_pSurfRef, __pyx_v_hmod, __pyx_v_name); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 3230, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":3231
 *             raise RuntimeError('Function "cuModuleGetSurfRef" not found')
 *     err = (<CUresult (*)(CUsurfref*, CUmodule, const char*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuModuleGetSurfRef)(pSurfRef, hmod, name)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuLibraryLoadData(CUlibrary* library, const void* code, CUjit_option* jitOptions, void** jitOptionsValues, unsigned int numJitOptions, CUlibraryOption* libraryOptions, void** libraryOptionValues, unsigned int numLibraryOptions) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":3224
 *     return err
 * 
 * cdef CUresult _cuModuleGetSurfRef(CUsurfref* pSurfRef, CUmodule hmod, const char* name) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuModuleGetSurfRef
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuModuleGetSurfRef", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":3233
 *     return err
 * 
 * cdef CUresult _cuLibraryLoadData(CUlibrary* library, const void* code, CUjit_option* jitOptions, void** jitOptionsValues, unsigned int numJitOptions, CUlibraryOption* libraryOptions, void** libraryOptionValues, unsigned int numLibraryOptions) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuLibraryLoadData
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuLibraryLoadData(CUlibrary *__pyx_v_library, void const *__pyx_v_code, CUjit_option *__pyx_v_jitOptions, void **__pyx_v_jitOptionsValues, unsigned int __pyx_v_numJitOptions, CUlibraryOption *__pyx_v_libraryOptions, void **__pyx_v_libraryOptionValues, unsigned int __pyx_v_numLibraryOptions) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuLibraryLoadData", 1);
  __Pyx_TraceCall("_cuLibraryLoadData", __pyx_f[0], 3233, 1, __PYX_ERR(0, 3233, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":3235
 * cdef CUresult _cuLibraryLoadData(CUlibrary* library, const void* code, CUjit_option* jitOptions, void** jitOptionsValues, unsigned int numJitOptions, CUlibraryOption* libraryOptions, void** libraryOptionValues, unsigned int numLibraryOptions) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuLibraryLoadData
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuLibraryLoadData == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 3235, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":3236
 *     global __cuLibraryLoadData
 *     cuPythonInit()
 *     if __cuLibraryLoadData == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuLibraryLoadData" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuLibraryLoadData == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":3237
 *     cuPythonInit()
 *     if __cuLibraryLoadData == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuLibraryLoadData" not found')
 *     err = (<CUresult (*)(CUlibrary*, const void*, CUjit_option*, void**, unsigned int, CUlibraryOption*, void**, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuLibraryLoadData)(library, code, jitOptions, jitOptionsValues, numJitOptions, libraryOptions, libraryOptionValues, numLibraryOptions)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":3238
 *     if __cuLibraryLoadData == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuLibraryLoadData" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUlibrary*, const void*, CUjit_option*, void**, unsigned int, CUlibraryOption*, void**, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuLibraryLoadData)(library, code, jitOptions, jitOptionsValues, numJitOptions, libraryOptions, libraryOptionValues, numLibraryOptions)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__69, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 3238, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 3238, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":3237
 *     cuPythonInit()
 *     if __cuLibraryLoadData == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuLibraryLoadData" not found')
 *     err = (<CUresult (*)(CUlibrary*, const void*, CUjit_option*, void**, unsigned int, CUlibraryOption*, void**, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuLibraryLoadData)(library, code, jitOptions, jitOptionsValues, numJitOptions, libraryOptions, libraryOptionValues, numLibraryOptions)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":3236
 *     global __cuLibraryLoadData
 *     cuPythonInit()
 *     if __cuLibraryLoadData == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuLibraryLoadData" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":3239
 *         with gil:
 *             raise RuntimeError('Function "cuLibraryLoadData" not found')
 *     err = (<CUresult (*)(CUlibrary*, const void*, CUjit_option*, void**, unsigned int, CUlibraryOption*, void**, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuLibraryLoadData)(library, code, jitOptions, jitOptionsValues, numJitOptions, libraryOptions, libraryOptionValues, numLibraryOptions)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUlibrary *, void const *, CUjit_option *, void **, unsigned int, CUlibraryOption *, void **, unsigned int))__pyx_v_4cuda_5_cuda_5ccuda___cuLibraryLoadData)(__pyx_v_library, __pyx_v_code, __pyx_v_jitOptions, __pyx_v_jitOptionsValues, __pyx_v_numJitOptions, __pyx_v_libraryOptions, __pyx_v_libraryOptionValues, __pyx_v_numLibraryOptions); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 3239, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":3240
 *             raise RuntimeError('Function "cuLibraryLoadData" not found')
 *     err = (<CUresult (*)(CUlibrary*, const void*, CUjit_option*, void**, unsigned int, CUlibraryOption*, void**, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuLibraryLoadData)(library, code, jitOptions, jitOptionsValues, numJitOptions, libraryOptions, libraryOptionValues, numLibraryOptions)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuLibraryLoadFromFile(CUlibrary* library, const char* fileName, CUjit_option* jitOptions, void** jitOptionsValues, unsigned int numJitOptions, CUlibraryOption* libraryOptions, void** libraryOptionValues, unsigned int numLibraryOptions) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":3233
 *     return err
 * 
 * cdef CUresult _cuLibraryLoadData(CUlibrary* library, const void* code, CUjit_option* jitOptions, void** jitOptionsValues, unsigned int numJitOptions, CUlibraryOption* libraryOptions, void** libraryOptionValues, unsigned int numLibraryOptions) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuLibraryLoadData
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuLibraryLoadData", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":3242
 *     return err
 * 
 * cdef CUresult _cuLibraryLoadFromFile(CUlibrary* library, const char* fileName, CUjit_option* jitOptions, void** jitOptionsValues, unsigned int numJitOptions, CUlibraryOption* libraryOptions, void** libraryOptionValues, unsigned int numLibraryOptions) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuLibraryLoadFromFile
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuLibraryLoadFromFile(CUlibrary *__pyx_v_library, char const *__pyx_v_fileName, CUjit_option *__pyx_v_jitOptions, void **__pyx_v_jitOptionsValues, unsigned int __pyx_v_numJitOptions, CUlibraryOption *__pyx_v_libraryOptions, void **__pyx_v_libraryOptionValues, unsigned int __pyx_v_numLibraryOptions) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuLibraryLoadFromFile", 1);
  __Pyx_TraceCall("_cuLibraryLoadFromFile", __pyx_f[0], 3242, 1, __PYX_ERR(0, 3242, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":3244
 * cdef CUresult _cuLibraryLoadFromFile(CUlibrary* library, const char* fileName, CUjit_option* jitOptions, void** jitOptionsValues, unsigned int numJitOptions, CUlibraryOption* libraryOptions, void** libraryOptionValues, unsigned int numLibraryOptions) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuLibraryLoadFromFile
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuLibraryLoadFromFile == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 3244, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":3245
 *     global __cuLibraryLoadFromFile
 *     cuPythonInit()
 *     if __cuLibraryLoadFromFile == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuLibraryLoadFromFile" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuLibraryLoadFromFile == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":3246
 *     cuPythonInit()
 *     if __cuLibraryLoadFromFile == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuLibraryLoadFromFile" not found')
 *     err = (<CUresult (*)(CUlibrary*, const char*, CUjit_option*, void**, unsigned int, CUlibraryOption*, void**, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuLibraryLoadFromFile)(library, fileName, jitOptions, jitOptionsValues, numJitOptions, libraryOptions, libraryOptionValues, numLibraryOptions)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":3247
 *     if __cuLibraryLoadFromFile == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuLibraryLoadFromFile" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUlibrary*, const char*, CUjit_option*, void**, unsigned int, CUlibraryOption*, void**, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuLibraryLoadFromFile)(library, fileName, jitOptions, jitOptionsValues, numJitOptions, libraryOptions, libraryOptionValues, numLibraryOptions)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__70, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 3247, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 3247, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":3246
 *     cuPythonInit()
 *     if __cuLibraryLoadFromFile == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuLibraryLoadFromFile" not found')
 *     err = (<CUresult (*)(CUlibrary*, const char*, CUjit_option*, void**, unsigned int, CUlibraryOption*, void**, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuLibraryLoadFromFile)(library, fileName, jitOptions, jitOptionsValues, numJitOptions, libraryOptions, libraryOptionValues, numLibraryOptions)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":3245
 *     global __cuLibraryLoadFromFile
 *     cuPythonInit()
 *     if __cuLibraryLoadFromFile == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuLibraryLoadFromFile" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":3248
 *         with gil:
 *             raise RuntimeError('Function "cuLibraryLoadFromFile" not found')
 *     err = (<CUresult (*)(CUlibrary*, const char*, CUjit_option*, void**, unsigned int, CUlibraryOption*, void**, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuLibraryLoadFromFile)(library, fileName, jitOptions, jitOptionsValues, numJitOptions, libraryOptions, libraryOptionValues, numLibraryOptions)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUlibrary *, char const *, CUjit_option *, void **, unsigned int, CUlibraryOption *, void **, unsigned int))__pyx_v_4cuda_5_cuda_5ccuda___cuLibraryLoadFromFile)(__pyx_v_library, __pyx_v_fileName, __pyx_v_jitOptions, __pyx_v_jitOptionsValues, __pyx_v_numJitOptions, __pyx_v_libraryOptions, __pyx_v_libraryOptionValues, __pyx_v_numLibraryOptions); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 3248, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":3249
 *             raise RuntimeError('Function "cuLibraryLoadFromFile" not found')
 *     err = (<CUresult (*)(CUlibrary*, const char*, CUjit_option*, void**, unsigned int, CUlibraryOption*, void**, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuLibraryLoadFromFile)(library, fileName, jitOptions, jitOptionsValues, numJitOptions, libraryOptions, libraryOptionValues, numLibraryOptions)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuLibraryUnload(CUlibrary library) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":3242
 *     return err
 * 
 * cdef CUresult _cuLibraryLoadFromFile(CUlibrary* library, const char* fileName, CUjit_option* jitOptions, void** jitOptionsValues, unsigned int numJitOptions, CUlibraryOption* libraryOptions, void** libraryOptionValues, unsigned int numLibraryOptions) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuLibraryLoadFromFile
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuLibraryLoadFromFile", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":3251
 *     return err
 * 
 * cdef CUresult _cuLibraryUnload(CUlibrary library) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuLibraryUnload
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuLibraryUnload(CUlibrary __pyx_v_library) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuLibraryUnload", 1);
  __Pyx_TraceCall("_cuLibraryUnload", __pyx_f[0], 3251, 1, __PYX_ERR(0, 3251, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":3253
 * cdef CUresult _cuLibraryUnload(CUlibrary library) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuLibraryUnload
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuLibraryUnload == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 3253, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":3254
 *     global __cuLibraryUnload
 *     cuPythonInit()
 *     if __cuLibraryUnload == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuLibraryUnload" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuLibraryUnload == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":3255
 *     cuPythonInit()
 *     if __cuLibraryUnload == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuLibraryUnload" not found')
 *     err = (<CUresult (*)(CUlibrary) except ?CUDA_ERROR_NOT_FOUND nogil> __cuLibraryUnload)(library)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":3256
 *     if __cuLibraryUnload == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuLibraryUnload" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUlibrary) except ?CUDA_ERROR_NOT_FOUND nogil> __cuLibraryUnload)(library)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__71, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 3256, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 3256, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":3255
 *     cuPythonInit()
 *     if __cuLibraryUnload == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuLibraryUnload" not found')
 *     err = (<CUresult (*)(CUlibrary) except ?CUDA_ERROR_NOT_FOUND nogil> __cuLibraryUnload)(library)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":3254
 *     global __cuLibraryUnload
 *     cuPythonInit()
 *     if __cuLibraryUnload == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuLibraryUnload" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":3257
 *         with gil:
 *             raise RuntimeError('Function "cuLibraryUnload" not found')
 *     err = (<CUresult (*)(CUlibrary) except ?CUDA_ERROR_NOT_FOUND nogil> __cuLibraryUnload)(library)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUlibrary))__pyx_v_4cuda_5_cuda_5ccuda___cuLibraryUnload)(__pyx_v_library); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 3257, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":3258
 *             raise RuntimeError('Function "cuLibraryUnload" not found')
 *     err = (<CUresult (*)(CUlibrary) except ?CUDA_ERROR_NOT_FOUND nogil> __cuLibraryUnload)(library)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuLibraryGetKernel(CUkernel* pKernel, CUlibrary library, const char* name) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":3251
 *     return err
 * 
 * cdef CUresult _cuLibraryUnload(CUlibrary library) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuLibraryUnload
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuLibraryUnload", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":3260
 *     return err
 * 
 * cdef CUresult _cuLibraryGetKernel(CUkernel* pKernel, CUlibrary library, const char* name) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuLibraryGetKernel
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuLibraryGetKernel(CUkernel *__pyx_v_pKernel, CUlibrary __pyx_v_library, char const *__pyx_v_name) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuLibraryGetKernel", 1);
  __Pyx_TraceCall("_cuLibraryGetKernel", __pyx_f[0], 3260, 1, __PYX_ERR(0, 3260, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":3262
 * cdef CUresult _cuLibraryGetKernel(CUkernel* pKernel, CUlibrary library, const char* name) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuLibraryGetKernel
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuLibraryGetKernel == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 3262, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":3263
 *     global __cuLibraryGetKernel
 *     cuPythonInit()
 *     if __cuLibraryGetKernel == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuLibraryGetKernel" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuLibraryGetKernel == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":3264
 *     cuPythonInit()
 *     if __cuLibraryGetKernel == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuLibraryGetKernel" not found')
 *     err = (<CUresult (*)(CUkernel*, CUlibrary, const char*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuLibraryGetKernel)(pKernel, library, name)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":3265
 *     if __cuLibraryGetKernel == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuLibraryGetKernel" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUkernel*, CUlibrary, const char*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuLibraryGetKernel)(pKernel, library, name)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__72, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 3265, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 3265, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":3264
 *     cuPythonInit()
 *     if __cuLibraryGetKernel == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuLibraryGetKernel" not found')
 *     err = (<CUresult (*)(CUkernel*, CUlibrary, const char*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuLibraryGetKernel)(pKernel, library, name)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":3263
 *     global __cuLibraryGetKernel
 *     cuPythonInit()
 *     if __cuLibraryGetKernel == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuLibraryGetKernel" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":3266
 *         with gil:
 *             raise RuntimeError('Function "cuLibraryGetKernel" not found')
 *     err = (<CUresult (*)(CUkernel*, CUlibrary, const char*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuLibraryGetKernel)(pKernel, library, name)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUkernel *, CUlibrary, char const *))__pyx_v_4cuda_5_cuda_5ccuda___cuLibraryGetKernel)(__pyx_v_pKernel, __pyx_v_library, __pyx_v_name); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 3266, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":3267
 *             raise RuntimeError('Function "cuLibraryGetKernel" not found')
 *     err = (<CUresult (*)(CUkernel*, CUlibrary, const char*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuLibraryGetKernel)(pKernel, library, name)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuLibraryGetKernelCount(unsigned int* count, CUlibrary lib) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":3260
 *     return err
 * 
 * cdef CUresult _cuLibraryGetKernel(CUkernel* pKernel, CUlibrary library, const char* name) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuLibraryGetKernel
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuLibraryGetKernel", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":3269
 *     return err
 * 
 * cdef CUresult _cuLibraryGetKernelCount(unsigned int* count, CUlibrary lib) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuLibraryGetKernelCount
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuLibraryGetKernelCount(unsigned int *__pyx_v_count, CUlibrary __pyx_v_lib) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuLibraryGetKernelCount", 1);
  __Pyx_TraceCall("_cuLibraryGetKernelCount", __pyx_f[0], 3269, 1, __PYX_ERR(0, 3269, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":3271
 * cdef CUresult _cuLibraryGetKernelCount(unsigned int* count, CUlibrary lib) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuLibraryGetKernelCount
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuLibraryGetKernelCount == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 3271, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":3272
 *     global __cuLibraryGetKernelCount
 *     cuPythonInit()
 *     if __cuLibraryGetKernelCount == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuLibraryGetKernelCount" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuLibraryGetKernelCount == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":3273
 *     cuPythonInit()
 *     if __cuLibraryGetKernelCount == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuLibraryGetKernelCount" not found')
 *     err = (<CUresult (*)(unsigned int*, CUlibrary) except ?CUDA_ERROR_NOT_FOUND nogil> __cuLibraryGetKernelCount)(count, lib)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":3274
 *     if __cuLibraryGetKernelCount == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuLibraryGetKernelCount" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(unsigned int*, CUlibrary) except ?CUDA_ERROR_NOT_FOUND nogil> __cuLibraryGetKernelCount)(count, lib)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__73, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 3274, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 3274, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":3273
 *     cuPythonInit()
 *     if __cuLibraryGetKernelCount == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuLibraryGetKernelCount" not found')
 *     err = (<CUresult (*)(unsigned int*, CUlibrary) except ?CUDA_ERROR_NOT_FOUND nogil> __cuLibraryGetKernelCount)(count, lib)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":3272
 *     global __cuLibraryGetKernelCount
 *     cuPythonInit()
 *     if __cuLibraryGetKernelCount == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuLibraryGetKernelCount" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":3275
 *         with gil:
 *             raise RuntimeError('Function "cuLibraryGetKernelCount" not found')
 *     err = (<CUresult (*)(unsigned int*, CUlibrary) except ?CUDA_ERROR_NOT_FOUND nogil> __cuLibraryGetKernelCount)(count, lib)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(unsigned int *, CUlibrary))__pyx_v_4cuda_5_cuda_5ccuda___cuLibraryGetKernelCount)(__pyx_v_count, __pyx_v_lib); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 3275, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":3276
 *             raise RuntimeError('Function "cuLibraryGetKernelCount" not found')
 *     err = (<CUresult (*)(unsigned int*, CUlibrary) except ?CUDA_ERROR_NOT_FOUND nogil> __cuLibraryGetKernelCount)(count, lib)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuLibraryEnumerateKernels(CUkernel* kernels, unsigned int numKernels, CUlibrary lib) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":3269
 *     return err
 * 
 * cdef CUresult _cuLibraryGetKernelCount(unsigned int* count, CUlibrary lib) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuLibraryGetKernelCount
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuLibraryGetKernelCount", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":3278
 *     return err
 * 
 * cdef CUresult _cuLibraryEnumerateKernels(CUkernel* kernels, unsigned int numKernels, CUlibrary lib) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuLibraryEnumerateKernels
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuLibraryEnumerateKernels(CUkernel *__pyx_v_kernels, unsigned int __pyx_v_numKernels, CUlibrary __pyx_v_lib) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuLibraryEnumerateKernels", 1);
  __Pyx_TraceCall("_cuLibraryEnumerateKernels", __pyx_f[0], 3278, 1, __PYX_ERR(0, 3278, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":3280
 * cdef CUresult _cuLibraryEnumerateKernels(CUkernel* kernels, unsigned int numKernels, CUlibrary lib) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuLibraryEnumerateKernels
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuLibraryEnumerateKernels == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 3280, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":3281
 *     global __cuLibraryEnumerateKernels
 *     cuPythonInit()
 *     if __cuLibraryEnumerateKernels == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuLibraryEnumerateKernels" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuLibraryEnumerateKernels == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":3282
 *     cuPythonInit()
 *     if __cuLibraryEnumerateKernels == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuLibraryEnumerateKernels" not found')
 *     err = (<CUresult (*)(CUkernel*, unsigned int, CUlibrary) except ?CUDA_ERROR_NOT_FOUND nogil> __cuLibraryEnumerateKernels)(kernels, numKernels, lib)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":3283
 *     if __cuLibraryEnumerateKernels == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuLibraryEnumerateKernels" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUkernel*, unsigned int, CUlibrary) except ?CUDA_ERROR_NOT_FOUND nogil> __cuLibraryEnumerateKernels)(kernels, numKernels, lib)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__74, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 3283, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 3283, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":3282
 *     cuPythonInit()
 *     if __cuLibraryEnumerateKernels == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuLibraryEnumerateKernels" not found')
 *     err = (<CUresult (*)(CUkernel*, unsigned int, CUlibrary) except ?CUDA_ERROR_NOT_FOUND nogil> __cuLibraryEnumerateKernels)(kernels, numKernels, lib)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":3281
 *     global __cuLibraryEnumerateKernels
 *     cuPythonInit()
 *     if __cuLibraryEnumerateKernels == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuLibraryEnumerateKernels" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":3284
 *         with gil:
 *             raise RuntimeError('Function "cuLibraryEnumerateKernels" not found')
 *     err = (<CUresult (*)(CUkernel*, unsigned int, CUlibrary) except ?CUDA_ERROR_NOT_FOUND nogil> __cuLibraryEnumerateKernels)(kernels, numKernels, lib)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUkernel *, unsigned int, CUlibrary))__pyx_v_4cuda_5_cuda_5ccuda___cuLibraryEnumerateKernels)(__pyx_v_kernels, __pyx_v_numKernels, __pyx_v_lib); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 3284, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":3285
 *             raise RuntimeError('Function "cuLibraryEnumerateKernels" not found')
 *     err = (<CUresult (*)(CUkernel*, unsigned int, CUlibrary) except ?CUDA_ERROR_NOT_FOUND nogil> __cuLibraryEnumerateKernels)(kernels, numKernels, lib)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuLibraryGetModule(CUmodule* pMod, CUlibrary library) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":3278
 *     return err
 * 
 * cdef CUresult _cuLibraryEnumerateKernels(CUkernel* kernels, unsigned int numKernels, CUlibrary lib) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuLibraryEnumerateKernels
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuLibraryEnumerateKernels", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":3287
 *     return err
 * 
 * cdef CUresult _cuLibraryGetModule(CUmodule* pMod, CUlibrary library) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuLibraryGetModule
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuLibraryGetModule(CUmodule *__pyx_v_pMod, CUlibrary __pyx_v_library) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuLibraryGetModule", 1);
  __Pyx_TraceCall("_cuLibraryGetModule", __pyx_f[0], 3287, 1, __PYX_ERR(0, 3287, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":3289
 * cdef CUresult _cuLibraryGetModule(CUmodule* pMod, CUlibrary library) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuLibraryGetModule
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuLibraryGetModule == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 3289, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":3290
 *     global __cuLibraryGetModule
 *     cuPythonInit()
 *     if __cuLibraryGetModule == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuLibraryGetModule" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuLibraryGetModule == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":3291
 *     cuPythonInit()
 *     if __cuLibraryGetModule == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuLibraryGetModule" not found')
 *     err = (<CUresult (*)(CUmodule*, CUlibrary) except ?CUDA_ERROR_NOT_FOUND nogil> __cuLibraryGetModule)(pMod, library)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":3292
 *     if __cuLibraryGetModule == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuLibraryGetModule" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUmodule*, CUlibrary) except ?CUDA_ERROR_NOT_FOUND nogil> __cuLibraryGetModule)(pMod, library)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__75, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 3292, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 3292, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":3291
 *     cuPythonInit()
 *     if __cuLibraryGetModule == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuLibraryGetModule" not found')
 *     err = (<CUresult (*)(CUmodule*, CUlibrary) except ?CUDA_ERROR_NOT_FOUND nogil> __cuLibraryGetModule)(pMod, library)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":3290
 *     global __cuLibraryGetModule
 *     cuPythonInit()
 *     if __cuLibraryGetModule == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuLibraryGetModule" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":3293
 *         with gil:
 *             raise RuntimeError('Function "cuLibraryGetModule" not found')
 *     err = (<CUresult (*)(CUmodule*, CUlibrary) except ?CUDA_ERROR_NOT_FOUND nogil> __cuLibraryGetModule)(pMod, library)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUmodule *, CUlibrary))__pyx_v_4cuda_5_cuda_5ccuda___cuLibraryGetModule)(__pyx_v_pMod, __pyx_v_library); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 3293, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":3294
 *             raise RuntimeError('Function "cuLibraryGetModule" not found')
 *     err = (<CUresult (*)(CUmodule*, CUlibrary) except ?CUDA_ERROR_NOT_FOUND nogil> __cuLibraryGetModule)(pMod, library)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuKernelGetFunction(CUfunction* pFunc, CUkernel kernel) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":3287
 *     return err
 * 
 * cdef CUresult _cuLibraryGetModule(CUmodule* pMod, CUlibrary library) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuLibraryGetModule
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuLibraryGetModule", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":3296
 *     return err
 * 
 * cdef CUresult _cuKernelGetFunction(CUfunction* pFunc, CUkernel kernel) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuKernelGetFunction
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuKernelGetFunction(CUfunction *__pyx_v_pFunc, CUkernel __pyx_v_kernel) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuKernelGetFunction", 1);
  __Pyx_TraceCall("_cuKernelGetFunction", __pyx_f[0], 3296, 1, __PYX_ERR(0, 3296, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":3298
 * cdef CUresult _cuKernelGetFunction(CUfunction* pFunc, CUkernel kernel) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuKernelGetFunction
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuKernelGetFunction == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 3298, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":3299
 *     global __cuKernelGetFunction
 *     cuPythonInit()
 *     if __cuKernelGetFunction == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuKernelGetFunction" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuKernelGetFunction == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":3300
 *     cuPythonInit()
 *     if __cuKernelGetFunction == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuKernelGetFunction" not found')
 *     err = (<CUresult (*)(CUfunction*, CUkernel) except ?CUDA_ERROR_NOT_FOUND nogil> __cuKernelGetFunction)(pFunc, kernel)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":3301
 *     if __cuKernelGetFunction == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuKernelGetFunction" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUfunction*, CUkernel) except ?CUDA_ERROR_NOT_FOUND nogil> __cuKernelGetFunction)(pFunc, kernel)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__76, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 3301, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 3301, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":3300
 *     cuPythonInit()
 *     if __cuKernelGetFunction == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuKernelGetFunction" not found')
 *     err = (<CUresult (*)(CUfunction*, CUkernel) except ?CUDA_ERROR_NOT_FOUND nogil> __cuKernelGetFunction)(pFunc, kernel)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":3299
 *     global __cuKernelGetFunction
 *     cuPythonInit()
 *     if __cuKernelGetFunction == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuKernelGetFunction" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":3302
 *         with gil:
 *             raise RuntimeError('Function "cuKernelGetFunction" not found')
 *     err = (<CUresult (*)(CUfunction*, CUkernel) except ?CUDA_ERROR_NOT_FOUND nogil> __cuKernelGetFunction)(pFunc, kernel)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUfunction *, CUkernel))__pyx_v_4cuda_5_cuda_5ccuda___cuKernelGetFunction)(__pyx_v_pFunc, __pyx_v_kernel); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 3302, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":3303
 *             raise RuntimeError('Function "cuKernelGetFunction" not found')
 *     err = (<CUresult (*)(CUfunction*, CUkernel) except ?CUDA_ERROR_NOT_FOUND nogil> __cuKernelGetFunction)(pFunc, kernel)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuLibraryGetGlobal(CUdeviceptr* dptr, size_t* numbytes, CUlibrary library, const char* name) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":3296
 *     return err
 * 
 * cdef CUresult _cuKernelGetFunction(CUfunction* pFunc, CUkernel kernel) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuKernelGetFunction
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuKernelGetFunction", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":3305
 *     return err
 * 
 * cdef CUresult _cuLibraryGetGlobal(CUdeviceptr* dptr, size_t* numbytes, CUlibrary library, const char* name) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuLibraryGetGlobal
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuLibraryGetGlobal(CUdeviceptr *__pyx_v_dptr, size_t *__pyx_v_numbytes, CUlibrary __pyx_v_library, char const *__pyx_v_name) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuLibraryGetGlobal", 1);
  __Pyx_TraceCall("_cuLibraryGetGlobal", __pyx_f[0], 3305, 1, __PYX_ERR(0, 3305, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":3307
 * cdef CUresult _cuLibraryGetGlobal(CUdeviceptr* dptr, size_t* numbytes, CUlibrary library, const char* name) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuLibraryGetGlobal
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuLibraryGetGlobal == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 3307, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":3308
 *     global __cuLibraryGetGlobal
 *     cuPythonInit()
 *     if __cuLibraryGetGlobal == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuLibraryGetGlobal" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuLibraryGetGlobal == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":3309
 *     cuPythonInit()
 *     if __cuLibraryGetGlobal == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuLibraryGetGlobal" not found')
 *     err = (<CUresult (*)(CUdeviceptr*, size_t*, CUlibrary, const char*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuLibraryGetGlobal)(dptr, numbytes, library, name)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":3310
 *     if __cuLibraryGetGlobal == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuLibraryGetGlobal" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUdeviceptr*, size_t*, CUlibrary, const char*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuLibraryGetGlobal)(dptr, numbytes, library, name)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__77, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 3310, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 3310, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":3309
 *     cuPythonInit()
 *     if __cuLibraryGetGlobal == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuLibraryGetGlobal" not found')
 *     err = (<CUresult (*)(CUdeviceptr*, size_t*, CUlibrary, const char*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuLibraryGetGlobal)(dptr, numbytes, library, name)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":3308
 *     global __cuLibraryGetGlobal
 *     cuPythonInit()
 *     if __cuLibraryGetGlobal == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuLibraryGetGlobal" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":3311
 *         with gil:
 *             raise RuntimeError('Function "cuLibraryGetGlobal" not found')
 *     err = (<CUresult (*)(CUdeviceptr*, size_t*, CUlibrary, const char*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuLibraryGetGlobal)(dptr, numbytes, library, name)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUdeviceptr *, size_t *, CUlibrary, char const *))__pyx_v_4cuda_5_cuda_5ccuda___cuLibraryGetGlobal)(__pyx_v_dptr, __pyx_v_numbytes, __pyx_v_library, __pyx_v_name); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 3311, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":3312
 *             raise RuntimeError('Function "cuLibraryGetGlobal" not found')
 *     err = (<CUresult (*)(CUdeviceptr*, size_t*, CUlibrary, const char*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuLibraryGetGlobal)(dptr, numbytes, library, name)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuLibraryGetManaged(CUdeviceptr* dptr, size_t* numbytes, CUlibrary library, const char* name) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":3305
 *     return err
 * 
 * cdef CUresult _cuLibraryGetGlobal(CUdeviceptr* dptr, size_t* numbytes, CUlibrary library, const char* name) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuLibraryGetGlobal
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuLibraryGetGlobal", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":3314
 *     return err
 * 
 * cdef CUresult _cuLibraryGetManaged(CUdeviceptr* dptr, size_t* numbytes, CUlibrary library, const char* name) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuLibraryGetManaged
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuLibraryGetManaged(CUdeviceptr *__pyx_v_dptr, size_t *__pyx_v_numbytes, CUlibrary __pyx_v_library, char const *__pyx_v_name) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuLibraryGetManaged", 1);
  __Pyx_TraceCall("_cuLibraryGetManaged", __pyx_f[0], 3314, 1, __PYX_ERR(0, 3314, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":3316
 * cdef CUresult _cuLibraryGetManaged(CUdeviceptr* dptr, size_t* numbytes, CUlibrary library, const char* name) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuLibraryGetManaged
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuLibraryGetManaged == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 3316, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":3317
 *     global __cuLibraryGetManaged
 *     cuPythonInit()
 *     if __cuLibraryGetManaged == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuLibraryGetManaged" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuLibraryGetManaged == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":3318
 *     cuPythonInit()
 *     if __cuLibraryGetManaged == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuLibraryGetManaged" not found')
 *     err = (<CUresult (*)(CUdeviceptr*, size_t*, CUlibrary, const char*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuLibraryGetManaged)(dptr, numbytes, library, name)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":3319
 *     if __cuLibraryGetManaged == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuLibraryGetManaged" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUdeviceptr*, size_t*, CUlibrary, const char*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuLibraryGetManaged)(dptr, numbytes, library, name)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__78, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 3319, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 3319, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":3318
 *     cuPythonInit()
 *     if __cuLibraryGetManaged == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuLibraryGetManaged" not found')
 *     err = (<CUresult (*)(CUdeviceptr*, size_t*, CUlibrary, const char*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuLibraryGetManaged)(dptr, numbytes, library, name)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":3317
 *     global __cuLibraryGetManaged
 *     cuPythonInit()
 *     if __cuLibraryGetManaged == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuLibraryGetManaged" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":3320
 *         with gil:
 *             raise RuntimeError('Function "cuLibraryGetManaged" not found')
 *     err = (<CUresult (*)(CUdeviceptr*, size_t*, CUlibrary, const char*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuLibraryGetManaged)(dptr, numbytes, library, name)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUdeviceptr *, size_t *, CUlibrary, char const *))__pyx_v_4cuda_5_cuda_5ccuda___cuLibraryGetManaged)(__pyx_v_dptr, __pyx_v_numbytes, __pyx_v_library, __pyx_v_name); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 3320, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":3321
 *             raise RuntimeError('Function "cuLibraryGetManaged" not found')
 *     err = (<CUresult (*)(CUdeviceptr*, size_t*, CUlibrary, const char*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuLibraryGetManaged)(dptr, numbytes, library, name)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuLibraryGetUnifiedFunction(void** fptr, CUlibrary library, const char* symbol) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":3314
 *     return err
 * 
 * cdef CUresult _cuLibraryGetManaged(CUdeviceptr* dptr, size_t* numbytes, CUlibrary library, const char* name) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuLibraryGetManaged
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuLibraryGetManaged", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":3323
 *     return err
 * 
 * cdef CUresult _cuLibraryGetUnifiedFunction(void** fptr, CUlibrary library, const char* symbol) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuLibraryGetUnifiedFunction
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuLibraryGetUnifiedFunction(void **__pyx_v_fptr, CUlibrary __pyx_v_library, char const *__pyx_v_symbol) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuLibraryGetUnifiedFunction", 1);
  __Pyx_TraceCall("_cuLibraryGetUnifiedFunction", __pyx_f[0], 3323, 1, __PYX_ERR(0, 3323, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":3325
 * cdef CUresult _cuLibraryGetUnifiedFunction(void** fptr, CUlibrary library, const char* symbol) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuLibraryGetUnifiedFunction
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuLibraryGetUnifiedFunction == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 3325, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":3326
 *     global __cuLibraryGetUnifiedFunction
 *     cuPythonInit()
 *     if __cuLibraryGetUnifiedFunction == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuLibraryGetUnifiedFunction" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuLibraryGetUnifiedFunction == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":3327
 *     cuPythonInit()
 *     if __cuLibraryGetUnifiedFunction == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuLibraryGetUnifiedFunction" not found')
 *     err = (<CUresult (*)(void**, CUlibrary, const char*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuLibraryGetUnifiedFunction)(fptr, library, symbol)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":3328
 *     if __cuLibraryGetUnifiedFunction == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuLibraryGetUnifiedFunction" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(void**, CUlibrary, const char*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuLibraryGetUnifiedFunction)(fptr, library, symbol)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__79, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 3328, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 3328, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":3327
 *     cuPythonInit()
 *     if __cuLibraryGetUnifiedFunction == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuLibraryGetUnifiedFunction" not found')
 *     err = (<CUresult (*)(void**, CUlibrary, const char*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuLibraryGetUnifiedFunction)(fptr, library, symbol)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":3326
 *     global __cuLibraryGetUnifiedFunction
 *     cuPythonInit()
 *     if __cuLibraryGetUnifiedFunction == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuLibraryGetUnifiedFunction" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":3329
 *         with gil:
 *             raise RuntimeError('Function "cuLibraryGetUnifiedFunction" not found')
 *     err = (<CUresult (*)(void**, CUlibrary, const char*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuLibraryGetUnifiedFunction)(fptr, library, symbol)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(void **, CUlibrary, char const *))__pyx_v_4cuda_5_cuda_5ccuda___cuLibraryGetUnifiedFunction)(__pyx_v_fptr, __pyx_v_library, __pyx_v_symbol); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 3329, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":3330
 *             raise RuntimeError('Function "cuLibraryGetUnifiedFunction" not found')
 *     err = (<CUresult (*)(void**, CUlibrary, const char*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuLibraryGetUnifiedFunction)(fptr, library, symbol)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuKernelGetAttribute(int* pi, CUfunction_attribute attrib, CUkernel kernel, CUdevice dev) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":3323
 *     return err
 * 
 * cdef CUresult _cuLibraryGetUnifiedFunction(void** fptr, CUlibrary library, const char* symbol) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuLibraryGetUnifiedFunction
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuLibraryGetUnifiedFunction", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":3332
 *     return err
 * 
 * cdef CUresult _cuKernelGetAttribute(int* pi, CUfunction_attribute attrib, CUkernel kernel, CUdevice dev) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuKernelGetAttribute
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuKernelGetAttribute(int *__pyx_v_pi, CUfunction_attribute __pyx_v_attrib, CUkernel __pyx_v_kernel, CUdevice __pyx_v_dev) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuKernelGetAttribute", 1);
  __Pyx_TraceCall("_cuKernelGetAttribute", __pyx_f[0], 3332, 1, __PYX_ERR(0, 3332, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":3334
 * cdef CUresult _cuKernelGetAttribute(int* pi, CUfunction_attribute attrib, CUkernel kernel, CUdevice dev) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuKernelGetAttribute
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuKernelGetAttribute == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 3334, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":3335
 *     global __cuKernelGetAttribute
 *     cuPythonInit()
 *     if __cuKernelGetAttribute == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuKernelGetAttribute" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuKernelGetAttribute == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":3336
 *     cuPythonInit()
 *     if __cuKernelGetAttribute == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuKernelGetAttribute" not found')
 *     err = (<CUresult (*)(int*, CUfunction_attribute, CUkernel, CUdevice) except ?CUDA_ERROR_NOT_FOUND nogil> __cuKernelGetAttribute)(pi, attrib, kernel, dev)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":3337
 *     if __cuKernelGetAttribute == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuKernelGetAttribute" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(int*, CUfunction_attribute, CUkernel, CUdevice) except ?CUDA_ERROR_NOT_FOUND nogil> __cuKernelGetAttribute)(pi, attrib, kernel, dev)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__80, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 3337, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 3337, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":3336
 *     cuPythonInit()
 *     if __cuKernelGetAttribute == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuKernelGetAttribute" not found')
 *     err = (<CUresult (*)(int*, CUfunction_attribute, CUkernel, CUdevice) except ?CUDA_ERROR_NOT_FOUND nogil> __cuKernelGetAttribute)(pi, attrib, kernel, dev)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":3335
 *     global __cuKernelGetAttribute
 *     cuPythonInit()
 *     if __cuKernelGetAttribute == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuKernelGetAttribute" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":3338
 *         with gil:
 *             raise RuntimeError('Function "cuKernelGetAttribute" not found')
 *     err = (<CUresult (*)(int*, CUfunction_attribute, CUkernel, CUdevice) except ?CUDA_ERROR_NOT_FOUND nogil> __cuKernelGetAttribute)(pi, attrib, kernel, dev)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(int *, CUfunction_attribute, CUkernel, CUdevice))__pyx_v_4cuda_5_cuda_5ccuda___cuKernelGetAttribute)(__pyx_v_pi, __pyx_v_attrib, __pyx_v_kernel, __pyx_v_dev); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 3338, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":3339
 *             raise RuntimeError('Function "cuKernelGetAttribute" not found')
 *     err = (<CUresult (*)(int*, CUfunction_attribute, CUkernel, CUdevice) except ?CUDA_ERROR_NOT_FOUND nogil> __cuKernelGetAttribute)(pi, attrib, kernel, dev)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuKernelSetAttribute(CUfunction_attribute attrib, int val, CUkernel kernel, CUdevice dev) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":3332
 *     return err
 * 
 * cdef CUresult _cuKernelGetAttribute(int* pi, CUfunction_attribute attrib, CUkernel kernel, CUdevice dev) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuKernelGetAttribute
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuKernelGetAttribute", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":3341
 *     return err
 * 
 * cdef CUresult _cuKernelSetAttribute(CUfunction_attribute attrib, int val, CUkernel kernel, CUdevice dev) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuKernelSetAttribute
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuKernelSetAttribute(CUfunction_attribute __pyx_v_attrib, int __pyx_v_val, CUkernel __pyx_v_kernel, CUdevice __pyx_v_dev) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuKernelSetAttribute", 1);
  __Pyx_TraceCall("_cuKernelSetAttribute", __pyx_f[0], 3341, 1, __PYX_ERR(0, 3341, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":3343
 * cdef CUresult _cuKernelSetAttribute(CUfunction_attribute attrib, int val, CUkernel kernel, CUdevice dev) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuKernelSetAttribute
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuKernelSetAttribute == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 3343, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":3344
 *     global __cuKernelSetAttribute
 *     cuPythonInit()
 *     if __cuKernelSetAttribute == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuKernelSetAttribute" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuKernelSetAttribute == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":3345
 *     cuPythonInit()
 *     if __cuKernelSetAttribute == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuKernelSetAttribute" not found')
 *     err = (<CUresult (*)(CUfunction_attribute, int, CUkernel, CUdevice) except ?CUDA_ERROR_NOT_FOUND nogil> __cuKernelSetAttribute)(attrib, val, kernel, dev)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":3346
 *     if __cuKernelSetAttribute == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuKernelSetAttribute" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUfunction_attribute, int, CUkernel, CUdevice) except ?CUDA_ERROR_NOT_FOUND nogil> __cuKernelSetAttribute)(attrib, val, kernel, dev)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__81, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 3346, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 3346, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":3345
 *     cuPythonInit()
 *     if __cuKernelSetAttribute == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuKernelSetAttribute" not found')
 *     err = (<CUresult (*)(CUfunction_attribute, int, CUkernel, CUdevice) except ?CUDA_ERROR_NOT_FOUND nogil> __cuKernelSetAttribute)(attrib, val, kernel, dev)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":3344
 *     global __cuKernelSetAttribute
 *     cuPythonInit()
 *     if __cuKernelSetAttribute == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuKernelSetAttribute" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":3347
 *         with gil:
 *             raise RuntimeError('Function "cuKernelSetAttribute" not found')
 *     err = (<CUresult (*)(CUfunction_attribute, int, CUkernel, CUdevice) except ?CUDA_ERROR_NOT_FOUND nogil> __cuKernelSetAttribute)(attrib, val, kernel, dev)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUfunction_attribute, int, CUkernel, CUdevice))__pyx_v_4cuda_5_cuda_5ccuda___cuKernelSetAttribute)(__pyx_v_attrib, __pyx_v_val, __pyx_v_kernel, __pyx_v_dev); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 3347, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":3348
 *             raise RuntimeError('Function "cuKernelSetAttribute" not found')
 *     err = (<CUresult (*)(CUfunction_attribute, int, CUkernel, CUdevice) except ?CUDA_ERROR_NOT_FOUND nogil> __cuKernelSetAttribute)(attrib, val, kernel, dev)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuKernelSetCacheConfig(CUkernel kernel, CUfunc_cache config, CUdevice dev) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":3341
 *     return err
 * 
 * cdef CUresult _cuKernelSetAttribute(CUfunction_attribute attrib, int val, CUkernel kernel, CUdevice dev) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuKernelSetAttribute
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuKernelSetAttribute", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":3350
 *     return err
 * 
 * cdef CUresult _cuKernelSetCacheConfig(CUkernel kernel, CUfunc_cache config, CUdevice dev) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuKernelSetCacheConfig
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuKernelSetCacheConfig(CUkernel __pyx_v_kernel, CUfunc_cache __pyx_v_config, CUdevice __pyx_v_dev) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuKernelSetCacheConfig", 1);
  __Pyx_TraceCall("_cuKernelSetCacheConfig", __pyx_f[0], 3350, 1, __PYX_ERR(0, 3350, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":3352
 * cdef CUresult _cuKernelSetCacheConfig(CUkernel kernel, CUfunc_cache config, CUdevice dev) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuKernelSetCacheConfig
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuKernelSetCacheConfig == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 3352, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":3353
 *     global __cuKernelSetCacheConfig
 *     cuPythonInit()
 *     if __cuKernelSetCacheConfig == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuKernelSetCacheConfig" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuKernelSetCacheConfig == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":3354
 *     cuPythonInit()
 *     if __cuKernelSetCacheConfig == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuKernelSetCacheConfig" not found')
 *     err = (<CUresult (*)(CUkernel, CUfunc_cache, CUdevice) except ?CUDA_ERROR_NOT_FOUND nogil> __cuKernelSetCacheConfig)(kernel, config, dev)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":3355
 *     if __cuKernelSetCacheConfig == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuKernelSetCacheConfig" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUkernel, CUfunc_cache, CUdevice) except ?CUDA_ERROR_NOT_FOUND nogil> __cuKernelSetCacheConfig)(kernel, config, dev)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__82, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 3355, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 3355, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":3354
 *     cuPythonInit()
 *     if __cuKernelSetCacheConfig == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuKernelSetCacheConfig" not found')
 *     err = (<CUresult (*)(CUkernel, CUfunc_cache, CUdevice) except ?CUDA_ERROR_NOT_FOUND nogil> __cuKernelSetCacheConfig)(kernel, config, dev)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":3353
 *     global __cuKernelSetCacheConfig
 *     cuPythonInit()
 *     if __cuKernelSetCacheConfig == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuKernelSetCacheConfig" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":3356
 *         with gil:
 *             raise RuntimeError('Function "cuKernelSetCacheConfig" not found')
 *     err = (<CUresult (*)(CUkernel, CUfunc_cache, CUdevice) except ?CUDA_ERROR_NOT_FOUND nogil> __cuKernelSetCacheConfig)(kernel, config, dev)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUkernel, CUfunc_cache, CUdevice))__pyx_v_4cuda_5_cuda_5ccuda___cuKernelSetCacheConfig)(__pyx_v_kernel, __pyx_v_config, __pyx_v_dev); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 3356, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":3357
 *             raise RuntimeError('Function "cuKernelSetCacheConfig" not found')
 *     err = (<CUresult (*)(CUkernel, CUfunc_cache, CUdevice) except ?CUDA_ERROR_NOT_FOUND nogil> __cuKernelSetCacheConfig)(kernel, config, dev)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuKernelGetName(const char** name, CUkernel hfunc) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":3350
 *     return err
 * 
 * cdef CUresult _cuKernelSetCacheConfig(CUkernel kernel, CUfunc_cache config, CUdevice dev) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuKernelSetCacheConfig
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuKernelSetCacheConfig", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":3359
 *     return err
 * 
 * cdef CUresult _cuKernelGetName(const char** name, CUkernel hfunc) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuKernelGetName
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuKernelGetName(char const **__pyx_v_name, CUkernel __pyx_v_hfunc) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuKernelGetName", 1);
  __Pyx_TraceCall("_cuKernelGetName", __pyx_f[0], 3359, 1, __PYX_ERR(0, 3359, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":3361
 * cdef CUresult _cuKernelGetName(const char** name, CUkernel hfunc) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuKernelGetName
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuKernelGetName == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 3361, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":3362
 *     global __cuKernelGetName
 *     cuPythonInit()
 *     if __cuKernelGetName == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuKernelGetName" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuKernelGetName == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":3363
 *     cuPythonInit()
 *     if __cuKernelGetName == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuKernelGetName" not found')
 *     err = (<CUresult (*)(const char**, CUkernel) except ?CUDA_ERROR_NOT_FOUND nogil> __cuKernelGetName)(name, hfunc)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":3364
 *     if __cuKernelGetName == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuKernelGetName" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(const char**, CUkernel) except ?CUDA_ERROR_NOT_FOUND nogil> __cuKernelGetName)(name, hfunc)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__83, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 3364, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 3364, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":3363
 *     cuPythonInit()
 *     if __cuKernelGetName == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuKernelGetName" not found')
 *     err = (<CUresult (*)(const char**, CUkernel) except ?CUDA_ERROR_NOT_FOUND nogil> __cuKernelGetName)(name, hfunc)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":3362
 *     global __cuKernelGetName
 *     cuPythonInit()
 *     if __cuKernelGetName == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuKernelGetName" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":3365
 *         with gil:
 *             raise RuntimeError('Function "cuKernelGetName" not found')
 *     err = (<CUresult (*)(const char**, CUkernel) except ?CUDA_ERROR_NOT_FOUND nogil> __cuKernelGetName)(name, hfunc)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(char const **, CUkernel))__pyx_v_4cuda_5_cuda_5ccuda___cuKernelGetName)(__pyx_v_name, __pyx_v_hfunc); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 3365, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":3366
 *             raise RuntimeError('Function "cuKernelGetName" not found')
 *     err = (<CUresult (*)(const char**, CUkernel) except ?CUDA_ERROR_NOT_FOUND nogil> __cuKernelGetName)(name, hfunc)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuKernelGetParamInfo(CUkernel kernel, size_t paramIndex, size_t* paramOffset, size_t* paramSize) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":3359
 *     return err
 * 
 * cdef CUresult _cuKernelGetName(const char** name, CUkernel hfunc) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuKernelGetName
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuKernelGetName", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":3368
 *     return err
 * 
 * cdef CUresult _cuKernelGetParamInfo(CUkernel kernel, size_t paramIndex, size_t* paramOffset, size_t* paramSize) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuKernelGetParamInfo
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuKernelGetParamInfo(CUkernel __pyx_v_kernel, size_t __pyx_v_paramIndex, size_t *__pyx_v_paramOffset, size_t *__pyx_v_paramSize) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuKernelGetParamInfo", 1);
  __Pyx_TraceCall("_cuKernelGetParamInfo", __pyx_f[0], 3368, 1, __PYX_ERR(0, 3368, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":3370
 * cdef CUresult _cuKernelGetParamInfo(CUkernel kernel, size_t paramIndex, size_t* paramOffset, size_t* paramSize) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuKernelGetParamInfo
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuKernelGetParamInfo == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 3370, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":3371
 *     global __cuKernelGetParamInfo
 *     cuPythonInit()
 *     if __cuKernelGetParamInfo == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuKernelGetParamInfo" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuKernelGetParamInfo == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":3372
 *     cuPythonInit()
 *     if __cuKernelGetParamInfo == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuKernelGetParamInfo" not found')
 *     err = (<CUresult (*)(CUkernel, size_t, size_t*, size_t*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuKernelGetParamInfo)(kernel, paramIndex, paramOffset, paramSize)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":3373
 *     if __cuKernelGetParamInfo == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuKernelGetParamInfo" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUkernel, size_t, size_t*, size_t*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuKernelGetParamInfo)(kernel, paramIndex, paramOffset, paramSize)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__84, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 3373, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 3373, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":3372
 *     cuPythonInit()
 *     if __cuKernelGetParamInfo == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuKernelGetParamInfo" not found')
 *     err = (<CUresult (*)(CUkernel, size_t, size_t*, size_t*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuKernelGetParamInfo)(kernel, paramIndex, paramOffset, paramSize)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":3371
 *     global __cuKernelGetParamInfo
 *     cuPythonInit()
 *     if __cuKernelGetParamInfo == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuKernelGetParamInfo" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":3374
 *         with gil:
 *             raise RuntimeError('Function "cuKernelGetParamInfo" not found')
 *     err = (<CUresult (*)(CUkernel, size_t, size_t*, size_t*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuKernelGetParamInfo)(kernel, paramIndex, paramOffset, paramSize)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUkernel, size_t, size_t *, size_t *))__pyx_v_4cuda_5_cuda_5ccuda___cuKernelGetParamInfo)(__pyx_v_kernel, __pyx_v_paramIndex, __pyx_v_paramOffset, __pyx_v_paramSize); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 3374, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":3375
 *             raise RuntimeError('Function "cuKernelGetParamInfo" not found')
 *     err = (<CUresult (*)(CUkernel, size_t, size_t*, size_t*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuKernelGetParamInfo)(kernel, paramIndex, paramOffset, paramSize)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuMemGetInfo_v2(size_t* free, size_t* total) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":3368
 *     return err
 * 
 * cdef CUresult _cuKernelGetParamInfo(CUkernel kernel, size_t paramIndex, size_t* paramOffset, size_t* paramSize) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuKernelGetParamInfo
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuKernelGetParamInfo", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":3377
 *     return err
 * 
 * cdef CUresult _cuMemGetInfo_v2(size_t* free, size_t* total) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuMemGetInfo_v2
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuMemGetInfo_v2(size_t *__pyx_v_free, size_t *__pyx_v_total) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuMemGetInfo_v2", 1);
  __Pyx_TraceCall("_cuMemGetInfo_v2", __pyx_f[0], 3377, 1, __PYX_ERR(0, 3377, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":3379
 * cdef CUresult _cuMemGetInfo_v2(size_t* free, size_t* total) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuMemGetInfo_v2
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuMemGetInfo_v2 == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 3379, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":3380
 *     global __cuMemGetInfo_v2
 *     cuPythonInit()
 *     if __cuMemGetInfo_v2 == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuMemGetInfo_v2" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuMemGetInfo_v2 == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":3381
 *     cuPythonInit()
 *     if __cuMemGetInfo_v2 == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuMemGetInfo_v2" not found')
 *     err = (<CUresult (*)(size_t*, size_t*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemGetInfo_v2)(free, total)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":3382
 *     if __cuMemGetInfo_v2 == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuMemGetInfo_v2" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(size_t*, size_t*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemGetInfo_v2)(free, total)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__85, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 3382, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 3382, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":3381
 *     cuPythonInit()
 *     if __cuMemGetInfo_v2 == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuMemGetInfo_v2" not found')
 *     err = (<CUresult (*)(size_t*, size_t*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemGetInfo_v2)(free, total)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":3380
 *     global __cuMemGetInfo_v2
 *     cuPythonInit()
 *     if __cuMemGetInfo_v2 == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuMemGetInfo_v2" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":3383
 *         with gil:
 *             raise RuntimeError('Function "cuMemGetInfo_v2" not found')
 *     err = (<CUresult (*)(size_t*, size_t*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemGetInfo_v2)(free, total)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(size_t *, size_t *))__pyx_v_4cuda_5_cuda_5ccuda___cuMemGetInfo_v2)(__pyx_v_free, __pyx_v_total); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 3383, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":3384
 *             raise RuntimeError('Function "cuMemGetInfo_v2" not found')
 *     err = (<CUresult (*)(size_t*, size_t*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemGetInfo_v2)(free, total)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuMemAlloc_v2(CUdeviceptr* dptr, size_t bytesize) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":3377
 *     return err
 * 
 * cdef CUresult _cuMemGetInfo_v2(size_t* free, size_t* total) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuMemGetInfo_v2
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuMemGetInfo_v2", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":3386
 *     return err
 * 
 * cdef CUresult _cuMemAlloc_v2(CUdeviceptr* dptr, size_t bytesize) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuMemAlloc_v2
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuMemAlloc_v2(CUdeviceptr *__pyx_v_dptr, size_t __pyx_v_bytesize) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuMemAlloc_v2", 1);
  __Pyx_TraceCall("_cuMemAlloc_v2", __pyx_f[0], 3386, 1, __PYX_ERR(0, 3386, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":3388
 * cdef CUresult _cuMemAlloc_v2(CUdeviceptr* dptr, size_t bytesize) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuMemAlloc_v2
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuMemAlloc_v2 == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 3388, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":3389
 *     global __cuMemAlloc_v2
 *     cuPythonInit()
 *     if __cuMemAlloc_v2 == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuMemAlloc_v2" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuMemAlloc_v2 == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":3390
 *     cuPythonInit()
 *     if __cuMemAlloc_v2 == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuMemAlloc_v2" not found')
 *     err = (<CUresult (*)(CUdeviceptr*, size_t) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemAlloc_v2)(dptr, bytesize)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":3391
 *     if __cuMemAlloc_v2 == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuMemAlloc_v2" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUdeviceptr*, size_t) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemAlloc_v2)(dptr, bytesize)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__86, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 3391, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 3391, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":3390
 *     cuPythonInit()
 *     if __cuMemAlloc_v2 == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuMemAlloc_v2" not found')
 *     err = (<CUresult (*)(CUdeviceptr*, size_t) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemAlloc_v2)(dptr, bytesize)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":3389
 *     global __cuMemAlloc_v2
 *     cuPythonInit()
 *     if __cuMemAlloc_v2 == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuMemAlloc_v2" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":3392
 *         with gil:
 *             raise RuntimeError('Function "cuMemAlloc_v2" not found')
 *     err = (<CUresult (*)(CUdeviceptr*, size_t) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemAlloc_v2)(dptr, bytesize)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUdeviceptr *, size_t))__pyx_v_4cuda_5_cuda_5ccuda___cuMemAlloc_v2)(__pyx_v_dptr, __pyx_v_bytesize); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 3392, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":3393
 *             raise RuntimeError('Function "cuMemAlloc_v2" not found')
 *     err = (<CUresult (*)(CUdeviceptr*, size_t) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemAlloc_v2)(dptr, bytesize)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuMemAllocPitch_v2(CUdeviceptr* dptr, size_t* pPitch, size_t WidthInBytes, size_t Height, unsigned int ElementSizeBytes) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":3386
 *     return err
 * 
 * cdef CUresult _cuMemAlloc_v2(CUdeviceptr* dptr, size_t bytesize) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuMemAlloc_v2
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuMemAlloc_v2", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":3395
 *     return err
 * 
 * cdef CUresult _cuMemAllocPitch_v2(CUdeviceptr* dptr, size_t* pPitch, size_t WidthInBytes, size_t Height, unsigned int ElementSizeBytes) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuMemAllocPitch_v2
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuMemAllocPitch_v2(CUdeviceptr *__pyx_v_dptr, size_t *__pyx_v_pPitch, size_t __pyx_v_WidthInBytes, size_t __pyx_v_Height, unsigned int __pyx_v_ElementSizeBytes) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuMemAllocPitch_v2", 1);
  __Pyx_TraceCall("_cuMemAllocPitch_v2", __pyx_f[0], 3395, 1, __PYX_ERR(0, 3395, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":3397
 * cdef CUresult _cuMemAllocPitch_v2(CUdeviceptr* dptr, size_t* pPitch, size_t WidthInBytes, size_t Height, unsigned int ElementSizeBytes) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuMemAllocPitch_v2
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuMemAllocPitch_v2 == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 3397, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":3398
 *     global __cuMemAllocPitch_v2
 *     cuPythonInit()
 *     if __cuMemAllocPitch_v2 == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuMemAllocPitch_v2" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuMemAllocPitch_v2 == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":3399
 *     cuPythonInit()
 *     if __cuMemAllocPitch_v2 == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuMemAllocPitch_v2" not found')
 *     err = (<CUresult (*)(CUdeviceptr*, size_t*, size_t, size_t, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemAllocPitch_v2)(dptr, pPitch, WidthInBytes, Height, ElementSizeBytes)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":3400
 *     if __cuMemAllocPitch_v2 == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuMemAllocPitch_v2" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUdeviceptr*, size_t*, size_t, size_t, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemAllocPitch_v2)(dptr, pPitch, WidthInBytes, Height, ElementSizeBytes)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__87, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 3400, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 3400, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":3399
 *     cuPythonInit()
 *     if __cuMemAllocPitch_v2 == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuMemAllocPitch_v2" not found')
 *     err = (<CUresult (*)(CUdeviceptr*, size_t*, size_t, size_t, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemAllocPitch_v2)(dptr, pPitch, WidthInBytes, Height, ElementSizeBytes)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":3398
 *     global __cuMemAllocPitch_v2
 *     cuPythonInit()
 *     if __cuMemAllocPitch_v2 == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuMemAllocPitch_v2" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":3401
 *         with gil:
 *             raise RuntimeError('Function "cuMemAllocPitch_v2" not found')
 *     err = (<CUresult (*)(CUdeviceptr*, size_t*, size_t, size_t, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemAllocPitch_v2)(dptr, pPitch, WidthInBytes, Height, ElementSizeBytes)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUdeviceptr *, size_t *, size_t, size_t, unsigned int))__pyx_v_4cuda_5_cuda_5ccuda___cuMemAllocPitch_v2)(__pyx_v_dptr, __pyx_v_pPitch, __pyx_v_WidthInBytes, __pyx_v_Height, __pyx_v_ElementSizeBytes); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 3401, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":3402
 *             raise RuntimeError('Function "cuMemAllocPitch_v2" not found')
 *     err = (<CUresult (*)(CUdeviceptr*, size_t*, size_t, size_t, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemAllocPitch_v2)(dptr, pPitch, WidthInBytes, Height, ElementSizeBytes)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuMemFree_v2(CUdeviceptr dptr) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":3395
 *     return err
 * 
 * cdef CUresult _cuMemAllocPitch_v2(CUdeviceptr* dptr, size_t* pPitch, size_t WidthInBytes, size_t Height, unsigned int ElementSizeBytes) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuMemAllocPitch_v2
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuMemAllocPitch_v2", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":3404
 *     return err
 * 
 * cdef CUresult _cuMemFree_v2(CUdeviceptr dptr) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuMemFree_v2
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuMemFree_v2(CUdeviceptr __pyx_v_dptr) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuMemFree_v2", 1);
  __Pyx_TraceCall("_cuMemFree_v2", __pyx_f[0], 3404, 1, __PYX_ERR(0, 3404, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":3406
 * cdef CUresult _cuMemFree_v2(CUdeviceptr dptr) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuMemFree_v2
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuMemFree_v2 == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 3406, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":3407
 *     global __cuMemFree_v2
 *     cuPythonInit()
 *     if __cuMemFree_v2 == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuMemFree_v2" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuMemFree_v2 == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":3408
 *     cuPythonInit()
 *     if __cuMemFree_v2 == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuMemFree_v2" not found')
 *     err = (<CUresult (*)(CUdeviceptr) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemFree_v2)(dptr)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":3409
 *     if __cuMemFree_v2 == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuMemFree_v2" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUdeviceptr) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemFree_v2)(dptr)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__88, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 3409, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 3409, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":3408
 *     cuPythonInit()
 *     if __cuMemFree_v2 == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuMemFree_v2" not found')
 *     err = (<CUresult (*)(CUdeviceptr) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemFree_v2)(dptr)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":3407
 *     global __cuMemFree_v2
 *     cuPythonInit()
 *     if __cuMemFree_v2 == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuMemFree_v2" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":3410
 *         with gil:
 *             raise RuntimeError('Function "cuMemFree_v2" not found')
 *     err = (<CUresult (*)(CUdeviceptr) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemFree_v2)(dptr)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUdeviceptr))__pyx_v_4cuda_5_cuda_5ccuda___cuMemFree_v2)(__pyx_v_dptr); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 3410, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":3411
 *             raise RuntimeError('Function "cuMemFree_v2" not found')
 *     err = (<CUresult (*)(CUdeviceptr) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemFree_v2)(dptr)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuMemGetAddressRange_v2(CUdeviceptr* pbase, size_t* psize, CUdeviceptr dptr) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":3404
 *     return err
 * 
 * cdef CUresult _cuMemFree_v2(CUdeviceptr dptr) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuMemFree_v2
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuMemFree_v2", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":3413
 *     return err
 * 
 * cdef CUresult _cuMemGetAddressRange_v2(CUdeviceptr* pbase, size_t* psize, CUdeviceptr dptr) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuMemGetAddressRange_v2
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuMemGetAddressRange_v2(CUdeviceptr *__pyx_v_pbase, size_t *__pyx_v_psize, CUdeviceptr __pyx_v_dptr) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuMemGetAddressRange_v2", 1);
  __Pyx_TraceCall("_cuMemGetAddressRange_v2", __pyx_f[0], 3413, 1, __PYX_ERR(0, 3413, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":3415
 * cdef CUresult _cuMemGetAddressRange_v2(CUdeviceptr* pbase, size_t* psize, CUdeviceptr dptr) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuMemGetAddressRange_v2
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuMemGetAddressRange_v2 == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 3415, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":3416
 *     global __cuMemGetAddressRange_v2
 *     cuPythonInit()
 *     if __cuMemGetAddressRange_v2 == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuMemGetAddressRange_v2" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuMemGetAddressRange_v2 == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":3417
 *     cuPythonInit()
 *     if __cuMemGetAddressRange_v2 == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuMemGetAddressRange_v2" not found')
 *     err = (<CUresult (*)(CUdeviceptr*, size_t*, CUdeviceptr) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemGetAddressRange_v2)(pbase, psize, dptr)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":3418
 *     if __cuMemGetAddressRange_v2 == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuMemGetAddressRange_v2" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUdeviceptr*, size_t*, CUdeviceptr) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemGetAddressRange_v2)(pbase, psize, dptr)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__89, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 3418, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 3418, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":3417
 *     cuPythonInit()
 *     if __cuMemGetAddressRange_v2 == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuMemGetAddressRange_v2" not found')
 *     err = (<CUresult (*)(CUdeviceptr*, size_t*, CUdeviceptr) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemGetAddressRange_v2)(pbase, psize, dptr)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":3416
 *     global __cuMemGetAddressRange_v2
 *     cuPythonInit()
 *     if __cuMemGetAddressRange_v2 == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuMemGetAddressRange_v2" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":3419
 *         with gil:
 *             raise RuntimeError('Function "cuMemGetAddressRange_v2" not found')
 *     err = (<CUresult (*)(CUdeviceptr*, size_t*, CUdeviceptr) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemGetAddressRange_v2)(pbase, psize, dptr)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUdeviceptr *, size_t *, CUdeviceptr))__pyx_v_4cuda_5_cuda_5ccuda___cuMemGetAddressRange_v2)(__pyx_v_pbase, __pyx_v_psize, __pyx_v_dptr); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 3419, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":3420
 *             raise RuntimeError('Function "cuMemGetAddressRange_v2" not found')
 *     err = (<CUresult (*)(CUdeviceptr*, size_t*, CUdeviceptr) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemGetAddressRange_v2)(pbase, psize, dptr)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuMemAllocHost_v2(void** pp, size_t bytesize) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":3413
 *     return err
 * 
 * cdef CUresult _cuMemGetAddressRange_v2(CUdeviceptr* pbase, size_t* psize, CUdeviceptr dptr) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuMemGetAddressRange_v2
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuMemGetAddressRange_v2", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":3422
 *     return err
 * 
 * cdef CUresult _cuMemAllocHost_v2(void** pp, size_t bytesize) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuMemAllocHost_v2
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuMemAllocHost_v2(void **__pyx_v_pp, size_t __pyx_v_bytesize) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuMemAllocHost_v2", 1);
  __Pyx_TraceCall("_cuMemAllocHost_v2", __pyx_f[0], 3422, 1, __PYX_ERR(0, 3422, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":3424
 * cdef CUresult _cuMemAllocHost_v2(void** pp, size_t bytesize) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuMemAllocHost_v2
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuMemAllocHost_v2 == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 3424, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":3425
 *     global __cuMemAllocHost_v2
 *     cuPythonInit()
 *     if __cuMemAllocHost_v2 == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuMemAllocHost_v2" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuMemAllocHost_v2 == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":3426
 *     cuPythonInit()
 *     if __cuMemAllocHost_v2 == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuMemAllocHost_v2" not found')
 *     err = (<CUresult (*)(void**, size_t) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemAllocHost_v2)(pp, bytesize)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":3427
 *     if __cuMemAllocHost_v2 == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuMemAllocHost_v2" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(void**, size_t) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemAllocHost_v2)(pp, bytesize)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__90, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 3427, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 3427, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":3426
 *     cuPythonInit()
 *     if __cuMemAllocHost_v2 == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuMemAllocHost_v2" not found')
 *     err = (<CUresult (*)(void**, size_t) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemAllocHost_v2)(pp, bytesize)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":3425
 *     global __cuMemAllocHost_v2
 *     cuPythonInit()
 *     if __cuMemAllocHost_v2 == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuMemAllocHost_v2" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":3428
 *         with gil:
 *             raise RuntimeError('Function "cuMemAllocHost_v2" not found')
 *     err = (<CUresult (*)(void**, size_t) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemAllocHost_v2)(pp, bytesize)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(void **, size_t))__pyx_v_4cuda_5_cuda_5ccuda___cuMemAllocHost_v2)(__pyx_v_pp, __pyx_v_bytesize); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 3428, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":3429
 *             raise RuntimeError('Function "cuMemAllocHost_v2" not found')
 *     err = (<CUresult (*)(void**, size_t) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemAllocHost_v2)(pp, bytesize)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuMemFreeHost(void* p) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":3422
 *     return err
 * 
 * cdef CUresult _cuMemAllocHost_v2(void** pp, size_t bytesize) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuMemAllocHost_v2
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuMemAllocHost_v2", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":3431
 *     return err
 * 
 * cdef CUresult _cuMemFreeHost(void* p) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuMemFreeHost
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuMemFreeHost(void *__pyx_v_p) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuMemFreeHost", 1);
  __Pyx_TraceCall("_cuMemFreeHost", __pyx_f[0], 3431, 1, __PYX_ERR(0, 3431, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":3433
 * cdef CUresult _cuMemFreeHost(void* p) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuMemFreeHost
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuMemFreeHost == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 3433, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":3434
 *     global __cuMemFreeHost
 *     cuPythonInit()
 *     if __cuMemFreeHost == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuMemFreeHost" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuMemFreeHost == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":3435
 *     cuPythonInit()
 *     if __cuMemFreeHost == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuMemFreeHost" not found')
 *     err = (<CUresult (*)(void*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemFreeHost)(p)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":3436
 *     if __cuMemFreeHost == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuMemFreeHost" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(void*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemFreeHost)(p)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__91, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 3436, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 3436, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":3435
 *     cuPythonInit()
 *     if __cuMemFreeHost == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuMemFreeHost" not found')
 *     err = (<CUresult (*)(void*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemFreeHost)(p)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":3434
 *     global __cuMemFreeHost
 *     cuPythonInit()
 *     if __cuMemFreeHost == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuMemFreeHost" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":3437
 *         with gil:
 *             raise RuntimeError('Function "cuMemFreeHost" not found')
 *     err = (<CUresult (*)(void*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemFreeHost)(p)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(void *))__pyx_v_4cuda_5_cuda_5ccuda___cuMemFreeHost)(__pyx_v_p); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 3437, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":3438
 *             raise RuntimeError('Function "cuMemFreeHost" not found')
 *     err = (<CUresult (*)(void*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemFreeHost)(p)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuMemHostAlloc(void** pp, size_t bytesize, unsigned int Flags) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":3431
 *     return err
 * 
 * cdef CUresult _cuMemFreeHost(void* p) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuMemFreeHost
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuMemFreeHost", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":3440
 *     return err
 * 
 * cdef CUresult _cuMemHostAlloc(void** pp, size_t bytesize, unsigned int Flags) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuMemHostAlloc
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuMemHostAlloc(void **__pyx_v_pp, size_t __pyx_v_bytesize, unsigned int __pyx_v_Flags) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuMemHostAlloc", 1);
  __Pyx_TraceCall("_cuMemHostAlloc", __pyx_f[0], 3440, 1, __PYX_ERR(0, 3440, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":3442
 * cdef CUresult _cuMemHostAlloc(void** pp, size_t bytesize, unsigned int Flags) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuMemHostAlloc
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuMemHostAlloc == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 3442, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":3443
 *     global __cuMemHostAlloc
 *     cuPythonInit()
 *     if __cuMemHostAlloc == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuMemHostAlloc" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuMemHostAlloc == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":3444
 *     cuPythonInit()
 *     if __cuMemHostAlloc == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuMemHostAlloc" not found')
 *     err = (<CUresult (*)(void**, size_t, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemHostAlloc)(pp, bytesize, Flags)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":3445
 *     if __cuMemHostAlloc == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuMemHostAlloc" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(void**, size_t, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemHostAlloc)(pp, bytesize, Flags)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__92, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 3445, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 3445, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":3444
 *     cuPythonInit()
 *     if __cuMemHostAlloc == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuMemHostAlloc" not found')
 *     err = (<CUresult (*)(void**, size_t, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemHostAlloc)(pp, bytesize, Flags)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":3443
 *     global __cuMemHostAlloc
 *     cuPythonInit()
 *     if __cuMemHostAlloc == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuMemHostAlloc" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":3446
 *         with gil:
 *             raise RuntimeError('Function "cuMemHostAlloc" not found')
 *     err = (<CUresult (*)(void**, size_t, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemHostAlloc)(pp, bytesize, Flags)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(void **, size_t, unsigned int))__pyx_v_4cuda_5_cuda_5ccuda___cuMemHostAlloc)(__pyx_v_pp, __pyx_v_bytesize, __pyx_v_Flags); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 3446, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":3447
 *             raise RuntimeError('Function "cuMemHostAlloc" not found')
 *     err = (<CUresult (*)(void**, size_t, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemHostAlloc)(pp, bytesize, Flags)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuMemHostGetDevicePointer_v2(CUdeviceptr* pdptr, void* p, unsigned int Flags) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":3440
 *     return err
 * 
 * cdef CUresult _cuMemHostAlloc(void** pp, size_t bytesize, unsigned int Flags) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuMemHostAlloc
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuMemHostAlloc", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":3449
 *     return err
 * 
 * cdef CUresult _cuMemHostGetDevicePointer_v2(CUdeviceptr* pdptr, void* p, unsigned int Flags) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuMemHostGetDevicePointer_v2
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuMemHostGetDevicePointer_v2(CUdeviceptr *__pyx_v_pdptr, void *__pyx_v_p, unsigned int __pyx_v_Flags) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuMemHostGetDevicePointer_v2", 1);
  __Pyx_TraceCall("_cuMemHostGetDevicePointer_v2", __pyx_f[0], 3449, 1, __PYX_ERR(0, 3449, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":3451
 * cdef CUresult _cuMemHostGetDevicePointer_v2(CUdeviceptr* pdptr, void* p, unsigned int Flags) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuMemHostGetDevicePointer_v2
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuMemHostGetDevicePointer_v2 == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 3451, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":3452
 *     global __cuMemHostGetDevicePointer_v2
 *     cuPythonInit()
 *     if __cuMemHostGetDevicePointer_v2 == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuMemHostGetDevicePointer_v2" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuMemHostGetDevicePointer_v2 == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":3453
 *     cuPythonInit()
 *     if __cuMemHostGetDevicePointer_v2 == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuMemHostGetDevicePointer_v2" not found')
 *     err = (<CUresult (*)(CUdeviceptr*, void*, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemHostGetDevicePointer_v2)(pdptr, p, Flags)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":3454
 *     if __cuMemHostGetDevicePointer_v2 == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuMemHostGetDevicePointer_v2" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUdeviceptr*, void*, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemHostGetDevicePointer_v2)(pdptr, p, Flags)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__93, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 3454, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 3454, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":3453
 *     cuPythonInit()
 *     if __cuMemHostGetDevicePointer_v2 == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuMemHostGetDevicePointer_v2" not found')
 *     err = (<CUresult (*)(CUdeviceptr*, void*, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemHostGetDevicePointer_v2)(pdptr, p, Flags)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":3452
 *     global __cuMemHostGetDevicePointer_v2
 *     cuPythonInit()
 *     if __cuMemHostGetDevicePointer_v2 == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuMemHostGetDevicePointer_v2" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":3455
 *         with gil:
 *             raise RuntimeError('Function "cuMemHostGetDevicePointer_v2" not found')
 *     err = (<CUresult (*)(CUdeviceptr*, void*, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemHostGetDevicePointer_v2)(pdptr, p, Flags)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUdeviceptr *, void *, unsigned int))__pyx_v_4cuda_5_cuda_5ccuda___cuMemHostGetDevicePointer_v2)(__pyx_v_pdptr, __pyx_v_p, __pyx_v_Flags); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 3455, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":3456
 *             raise RuntimeError('Function "cuMemHostGetDevicePointer_v2" not found')
 *     err = (<CUresult (*)(CUdeviceptr*, void*, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemHostGetDevicePointer_v2)(pdptr, p, Flags)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuMemHostGetFlags(unsigned int* pFlags, void* p) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":3449
 *     return err
 * 
 * cdef CUresult _cuMemHostGetDevicePointer_v2(CUdeviceptr* pdptr, void* p, unsigned int Flags) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuMemHostGetDevicePointer_v2
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuMemHostGetDevicePointer_v2", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":3458
 *     return err
 * 
 * cdef CUresult _cuMemHostGetFlags(unsigned int* pFlags, void* p) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuMemHostGetFlags
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuMemHostGetFlags(unsigned int *__pyx_v_pFlags, void *__pyx_v_p) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuMemHostGetFlags", 1);
  __Pyx_TraceCall("_cuMemHostGetFlags", __pyx_f[0], 3458, 1, __PYX_ERR(0, 3458, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":3460
 * cdef CUresult _cuMemHostGetFlags(unsigned int* pFlags, void* p) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuMemHostGetFlags
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuMemHostGetFlags == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 3460, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":3461
 *     global __cuMemHostGetFlags
 *     cuPythonInit()
 *     if __cuMemHostGetFlags == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuMemHostGetFlags" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuMemHostGetFlags == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":3462
 *     cuPythonInit()
 *     if __cuMemHostGetFlags == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuMemHostGetFlags" not found')
 *     err = (<CUresult (*)(unsigned int*, void*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemHostGetFlags)(pFlags, p)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":3463
 *     if __cuMemHostGetFlags == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuMemHostGetFlags" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(unsigned int*, void*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemHostGetFlags)(pFlags, p)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__94, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 3463, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 3463, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":3462
 *     cuPythonInit()
 *     if __cuMemHostGetFlags == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuMemHostGetFlags" not found')
 *     err = (<CUresult (*)(unsigned int*, void*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemHostGetFlags)(pFlags, p)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":3461
 *     global __cuMemHostGetFlags
 *     cuPythonInit()
 *     if __cuMemHostGetFlags == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuMemHostGetFlags" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":3464
 *         with gil:
 *             raise RuntimeError('Function "cuMemHostGetFlags" not found')
 *     err = (<CUresult (*)(unsigned int*, void*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemHostGetFlags)(pFlags, p)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(unsigned int *, void *))__pyx_v_4cuda_5_cuda_5ccuda___cuMemHostGetFlags)(__pyx_v_pFlags, __pyx_v_p); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 3464, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":3465
 *             raise RuntimeError('Function "cuMemHostGetFlags" not found')
 *     err = (<CUresult (*)(unsigned int*, void*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemHostGetFlags)(pFlags, p)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuMemAllocManaged(CUdeviceptr* dptr, size_t bytesize, unsigned int flags) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":3458
 *     return err
 * 
 * cdef CUresult _cuMemHostGetFlags(unsigned int* pFlags, void* p) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuMemHostGetFlags
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuMemHostGetFlags", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":3467
 *     return err
 * 
 * cdef CUresult _cuMemAllocManaged(CUdeviceptr* dptr, size_t bytesize, unsigned int flags) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuMemAllocManaged
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuMemAllocManaged(CUdeviceptr *__pyx_v_dptr, size_t __pyx_v_bytesize, unsigned int __pyx_v_flags) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuMemAllocManaged", 1);
  __Pyx_TraceCall("_cuMemAllocManaged", __pyx_f[0], 3467, 1, __PYX_ERR(0, 3467, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":3469
 * cdef CUresult _cuMemAllocManaged(CUdeviceptr* dptr, size_t bytesize, unsigned int flags) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuMemAllocManaged
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuMemAllocManaged == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 3469, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":3470
 *     global __cuMemAllocManaged
 *     cuPythonInit()
 *     if __cuMemAllocManaged == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuMemAllocManaged" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuMemAllocManaged == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":3471
 *     cuPythonInit()
 *     if __cuMemAllocManaged == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuMemAllocManaged" not found')
 *     err = (<CUresult (*)(CUdeviceptr*, size_t, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemAllocManaged)(dptr, bytesize, flags)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":3472
 *     if __cuMemAllocManaged == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuMemAllocManaged" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUdeviceptr*, size_t, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemAllocManaged)(dptr, bytesize, flags)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__95, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 3472, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 3472, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":3471
 *     cuPythonInit()
 *     if __cuMemAllocManaged == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuMemAllocManaged" not found')
 *     err = (<CUresult (*)(CUdeviceptr*, size_t, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemAllocManaged)(dptr, bytesize, flags)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":3470
 *     global __cuMemAllocManaged
 *     cuPythonInit()
 *     if __cuMemAllocManaged == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuMemAllocManaged" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":3473
 *         with gil:
 *             raise RuntimeError('Function "cuMemAllocManaged" not found')
 *     err = (<CUresult (*)(CUdeviceptr*, size_t, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemAllocManaged)(dptr, bytesize, flags)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUdeviceptr *, size_t, unsigned int))__pyx_v_4cuda_5_cuda_5ccuda___cuMemAllocManaged)(__pyx_v_dptr, __pyx_v_bytesize, __pyx_v_flags); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 3473, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":3474
 *             raise RuntimeError('Function "cuMemAllocManaged" not found')
 *     err = (<CUresult (*)(CUdeviceptr*, size_t, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemAllocManaged)(dptr, bytesize, flags)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuDeviceRegisterAsyncNotification(CUdevice device, CUasyncCallback callbackFunc, void* userData, CUasyncCallbackHandle* callback) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":3467
 *     return err
 * 
 * cdef CUresult _cuMemAllocManaged(CUdeviceptr* dptr, size_t bytesize, unsigned int flags) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuMemAllocManaged
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuMemAllocManaged", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":3476
 *     return err
 * 
 * cdef CUresult _cuDeviceRegisterAsyncNotification(CUdevice device, CUasyncCallback callbackFunc, void* userData, CUasyncCallbackHandle* callback) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuDeviceRegisterAsyncNotification
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuDeviceRegisterAsyncNotification(CUdevice __pyx_v_device, CUasyncCallback __pyx_v_callbackFunc, void *__pyx_v_userData, CUasyncCallbackHandle *__pyx_v_callback) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuDeviceRegisterAsyncNotification", 1);
  __Pyx_TraceCall("_cuDeviceRegisterAsyncNotification", __pyx_f[0], 3476, 1, __PYX_ERR(0, 3476, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":3478
 * cdef CUresult _cuDeviceRegisterAsyncNotification(CUdevice device, CUasyncCallback callbackFunc, void* userData, CUasyncCallbackHandle* callback) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuDeviceRegisterAsyncNotification
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuDeviceRegisterAsyncNotification == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 3478, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":3479
 *     global __cuDeviceRegisterAsyncNotification
 *     cuPythonInit()
 *     if __cuDeviceRegisterAsyncNotification == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuDeviceRegisterAsyncNotification" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuDeviceRegisterAsyncNotification == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":3480
 *     cuPythonInit()
 *     if __cuDeviceRegisterAsyncNotification == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuDeviceRegisterAsyncNotification" not found')
 *     err = (<CUresult (*)(CUdevice, CUasyncCallback, void*, CUasyncCallbackHandle*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuDeviceRegisterAsyncNotification)(device, callbackFunc, userData, callback)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":3481
 *     if __cuDeviceRegisterAsyncNotification == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuDeviceRegisterAsyncNotification" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUdevice, CUasyncCallback, void*, CUasyncCallbackHandle*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuDeviceRegisterAsyncNotification)(device, callbackFunc, userData, callback)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__96, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 3481, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 3481, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":3480
 *     cuPythonInit()
 *     if __cuDeviceRegisterAsyncNotification == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuDeviceRegisterAsyncNotification" not found')
 *     err = (<CUresult (*)(CUdevice, CUasyncCallback, void*, CUasyncCallbackHandle*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuDeviceRegisterAsyncNotification)(device, callbackFunc, userData, callback)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":3479
 *     global __cuDeviceRegisterAsyncNotification
 *     cuPythonInit()
 *     if __cuDeviceRegisterAsyncNotification == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuDeviceRegisterAsyncNotification" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":3482
 *         with gil:
 *             raise RuntimeError('Function "cuDeviceRegisterAsyncNotification" not found')
 *     err = (<CUresult (*)(CUdevice, CUasyncCallback, void*, CUasyncCallbackHandle*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuDeviceRegisterAsyncNotification)(device, callbackFunc, userData, callback)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUdevice, CUasyncCallback, void *, CUasyncCallbackHandle *))__pyx_v_4cuda_5_cuda_5ccuda___cuDeviceRegisterAsyncNotification)(__pyx_v_device, __pyx_v_callbackFunc, __pyx_v_userData, __pyx_v_callback); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 3482, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":3483
 *             raise RuntimeError('Function "cuDeviceRegisterAsyncNotification" not found')
 *     err = (<CUresult (*)(CUdevice, CUasyncCallback, void*, CUasyncCallbackHandle*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuDeviceRegisterAsyncNotification)(device, callbackFunc, userData, callback)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuDeviceUnregisterAsyncNotification(CUdevice device, CUasyncCallbackHandle callback) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":3476
 *     return err
 * 
 * cdef CUresult _cuDeviceRegisterAsyncNotification(CUdevice device, CUasyncCallback callbackFunc, void* userData, CUasyncCallbackHandle* callback) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuDeviceRegisterAsyncNotification
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuDeviceRegisterAsyncNotification", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":3485
 *     return err
 * 
 * cdef CUresult _cuDeviceUnregisterAsyncNotification(CUdevice device, CUasyncCallbackHandle callback) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuDeviceUnregisterAsyncNotification
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuDeviceUnregisterAsyncNotification(CUdevice __pyx_v_device, CUasyncCallbackHandle __pyx_v_callback) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuDeviceUnregisterAsyncNotification", 1);
  __Pyx_TraceCall("_cuDeviceUnregisterAsyncNotification", __pyx_f[0], 3485, 1, __PYX_ERR(0, 3485, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":3487
 * cdef CUresult _cuDeviceUnregisterAsyncNotification(CUdevice device, CUasyncCallbackHandle callback) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuDeviceUnregisterAsyncNotification
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuDeviceUnregisterAsyncNotification == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 3487, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":3488
 *     global __cuDeviceUnregisterAsyncNotification
 *     cuPythonInit()
 *     if __cuDeviceUnregisterAsyncNotification == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuDeviceUnregisterAsyncNotification" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuDeviceUnregisterAsyncNotification == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":3489
 *     cuPythonInit()
 *     if __cuDeviceUnregisterAsyncNotification == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuDeviceUnregisterAsyncNotification" not found')
 *     err = (<CUresult (*)(CUdevice, CUasyncCallbackHandle) except ?CUDA_ERROR_NOT_FOUND nogil> __cuDeviceUnregisterAsyncNotification)(device, callback)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":3490
 *     if __cuDeviceUnregisterAsyncNotification == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuDeviceUnregisterAsyncNotification" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUdevice, CUasyncCallbackHandle) except ?CUDA_ERROR_NOT_FOUND nogil> __cuDeviceUnregisterAsyncNotification)(device, callback)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__97, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 3490, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 3490, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":3489
 *     cuPythonInit()
 *     if __cuDeviceUnregisterAsyncNotification == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuDeviceUnregisterAsyncNotification" not found')
 *     err = (<CUresult (*)(CUdevice, CUasyncCallbackHandle) except ?CUDA_ERROR_NOT_FOUND nogil> __cuDeviceUnregisterAsyncNotification)(device, callback)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":3488
 *     global __cuDeviceUnregisterAsyncNotification
 *     cuPythonInit()
 *     if __cuDeviceUnregisterAsyncNotification == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuDeviceUnregisterAsyncNotification" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":3491
 *         with gil:
 *             raise RuntimeError('Function "cuDeviceUnregisterAsyncNotification" not found')
 *     err = (<CUresult (*)(CUdevice, CUasyncCallbackHandle) except ?CUDA_ERROR_NOT_FOUND nogil> __cuDeviceUnregisterAsyncNotification)(device, callback)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUdevice, CUasyncCallbackHandle))__pyx_v_4cuda_5_cuda_5ccuda___cuDeviceUnregisterAsyncNotification)(__pyx_v_device, __pyx_v_callback); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 3491, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":3492
 *             raise RuntimeError('Function "cuDeviceUnregisterAsyncNotification" not found')
 *     err = (<CUresult (*)(CUdevice, CUasyncCallbackHandle) except ?CUDA_ERROR_NOT_FOUND nogil> __cuDeviceUnregisterAsyncNotification)(device, callback)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuDeviceGetByPCIBusId(CUdevice* dev, const char* pciBusId) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":3485
 *     return err
 * 
 * cdef CUresult _cuDeviceUnregisterAsyncNotification(CUdevice device, CUasyncCallbackHandle callback) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuDeviceUnregisterAsyncNotification
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuDeviceUnregisterAsyncNotification", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":3494
 *     return err
 * 
 * cdef CUresult _cuDeviceGetByPCIBusId(CUdevice* dev, const char* pciBusId) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuDeviceGetByPCIBusId
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuDeviceGetByPCIBusId(CUdevice *__pyx_v_dev, char const *__pyx_v_pciBusId) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuDeviceGetByPCIBusId", 1);
  __Pyx_TraceCall("_cuDeviceGetByPCIBusId", __pyx_f[0], 3494, 1, __PYX_ERR(0, 3494, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":3496
 * cdef CUresult _cuDeviceGetByPCIBusId(CUdevice* dev, const char* pciBusId) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuDeviceGetByPCIBusId
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuDeviceGetByPCIBusId == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 3496, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":3497
 *     global __cuDeviceGetByPCIBusId
 *     cuPythonInit()
 *     if __cuDeviceGetByPCIBusId == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuDeviceGetByPCIBusId" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuDeviceGetByPCIBusId == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":3498
 *     cuPythonInit()
 *     if __cuDeviceGetByPCIBusId == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuDeviceGetByPCIBusId" not found')
 *     err = (<CUresult (*)(CUdevice*, const char*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuDeviceGetByPCIBusId)(dev, pciBusId)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":3499
 *     if __cuDeviceGetByPCIBusId == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuDeviceGetByPCIBusId" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUdevice*, const char*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuDeviceGetByPCIBusId)(dev, pciBusId)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__98, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 3499, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 3499, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":3498
 *     cuPythonInit()
 *     if __cuDeviceGetByPCIBusId == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuDeviceGetByPCIBusId" not found')
 *     err = (<CUresult (*)(CUdevice*, const char*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuDeviceGetByPCIBusId)(dev, pciBusId)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":3497
 *     global __cuDeviceGetByPCIBusId
 *     cuPythonInit()
 *     if __cuDeviceGetByPCIBusId == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuDeviceGetByPCIBusId" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":3500
 *         with gil:
 *             raise RuntimeError('Function "cuDeviceGetByPCIBusId" not found')
 *     err = (<CUresult (*)(CUdevice*, const char*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuDeviceGetByPCIBusId)(dev, pciBusId)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUdevice *, char const *))__pyx_v_4cuda_5_cuda_5ccuda___cuDeviceGetByPCIBusId)(__pyx_v_dev, __pyx_v_pciBusId); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 3500, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":3501
 *             raise RuntimeError('Function "cuDeviceGetByPCIBusId" not found')
 *     err = (<CUresult (*)(CUdevice*, const char*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuDeviceGetByPCIBusId)(dev, pciBusId)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuDeviceGetPCIBusId(char* pciBusId, int length, CUdevice dev) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":3494
 *     return err
 * 
 * cdef CUresult _cuDeviceGetByPCIBusId(CUdevice* dev, const char* pciBusId) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuDeviceGetByPCIBusId
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuDeviceGetByPCIBusId", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":3503
 *     return err
 * 
 * cdef CUresult _cuDeviceGetPCIBusId(char* pciBusId, int length, CUdevice dev) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuDeviceGetPCIBusId
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuDeviceGetPCIBusId(char *__pyx_v_pciBusId, int __pyx_v_length, CUdevice __pyx_v_dev) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuDeviceGetPCIBusId", 1);
  __Pyx_TraceCall("_cuDeviceGetPCIBusId", __pyx_f[0], 3503, 1, __PYX_ERR(0, 3503, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":3505
 * cdef CUresult _cuDeviceGetPCIBusId(char* pciBusId, int length, CUdevice dev) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuDeviceGetPCIBusId
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuDeviceGetPCIBusId == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 3505, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":3506
 *     global __cuDeviceGetPCIBusId
 *     cuPythonInit()
 *     if __cuDeviceGetPCIBusId == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuDeviceGetPCIBusId" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuDeviceGetPCIBusId == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":3507
 *     cuPythonInit()
 *     if __cuDeviceGetPCIBusId == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuDeviceGetPCIBusId" not found')
 *     err = (<CUresult (*)(char*, int, CUdevice) except ?CUDA_ERROR_NOT_FOUND nogil> __cuDeviceGetPCIBusId)(pciBusId, length, dev)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":3508
 *     if __cuDeviceGetPCIBusId == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuDeviceGetPCIBusId" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(char*, int, CUdevice) except ?CUDA_ERROR_NOT_FOUND nogil> __cuDeviceGetPCIBusId)(pciBusId, length, dev)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__99, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 3508, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 3508, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":3507
 *     cuPythonInit()
 *     if __cuDeviceGetPCIBusId == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuDeviceGetPCIBusId" not found')
 *     err = (<CUresult (*)(char*, int, CUdevice) except ?CUDA_ERROR_NOT_FOUND nogil> __cuDeviceGetPCIBusId)(pciBusId, length, dev)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":3506
 *     global __cuDeviceGetPCIBusId
 *     cuPythonInit()
 *     if __cuDeviceGetPCIBusId == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuDeviceGetPCIBusId" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":3509
 *         with gil:
 *             raise RuntimeError('Function "cuDeviceGetPCIBusId" not found')
 *     err = (<CUresult (*)(char*, int, CUdevice) except ?CUDA_ERROR_NOT_FOUND nogil> __cuDeviceGetPCIBusId)(pciBusId, length, dev)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(char *, int, CUdevice))__pyx_v_4cuda_5_cuda_5ccuda___cuDeviceGetPCIBusId)(__pyx_v_pciBusId, __pyx_v_length, __pyx_v_dev); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 3509, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":3510
 *             raise RuntimeError('Function "cuDeviceGetPCIBusId" not found')
 *     err = (<CUresult (*)(char*, int, CUdevice) except ?CUDA_ERROR_NOT_FOUND nogil> __cuDeviceGetPCIBusId)(pciBusId, length, dev)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuIpcGetEventHandle(CUipcEventHandle* pHandle, CUevent event) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":3503
 *     return err
 * 
 * cdef CUresult _cuDeviceGetPCIBusId(char* pciBusId, int length, CUdevice dev) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuDeviceGetPCIBusId
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuDeviceGetPCIBusId", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":3512
 *     return err
 * 
 * cdef CUresult _cuIpcGetEventHandle(CUipcEventHandle* pHandle, CUevent event) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuIpcGetEventHandle
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuIpcGetEventHandle(CUipcEventHandle *__pyx_v_pHandle, CUevent __pyx_v_event) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuIpcGetEventHandle", 1);
  __Pyx_TraceCall("_cuIpcGetEventHandle", __pyx_f[0], 3512, 1, __PYX_ERR(0, 3512, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":3514
 * cdef CUresult _cuIpcGetEventHandle(CUipcEventHandle* pHandle, CUevent event) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuIpcGetEventHandle
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuIpcGetEventHandle == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 3514, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":3515
 *     global __cuIpcGetEventHandle
 *     cuPythonInit()
 *     if __cuIpcGetEventHandle == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuIpcGetEventHandle" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuIpcGetEventHandle == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":3516
 *     cuPythonInit()
 *     if __cuIpcGetEventHandle == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuIpcGetEventHandle" not found')
 *     err = (<CUresult (*)(CUipcEventHandle*, CUevent) except ?CUDA_ERROR_NOT_FOUND nogil> __cuIpcGetEventHandle)(pHandle, event)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":3517
 *     if __cuIpcGetEventHandle == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuIpcGetEventHandle" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUipcEventHandle*, CUevent) except ?CUDA_ERROR_NOT_FOUND nogil> __cuIpcGetEventHandle)(pHandle, event)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__100, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 3517, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 3517, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":3516
 *     cuPythonInit()
 *     if __cuIpcGetEventHandle == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuIpcGetEventHandle" not found')
 *     err = (<CUresult (*)(CUipcEventHandle*, CUevent) except ?CUDA_ERROR_NOT_FOUND nogil> __cuIpcGetEventHandle)(pHandle, event)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":3515
 *     global __cuIpcGetEventHandle
 *     cuPythonInit()
 *     if __cuIpcGetEventHandle == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuIpcGetEventHandle" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":3518
 *         with gil:
 *             raise RuntimeError('Function "cuIpcGetEventHandle" not found')
 *     err = (<CUresult (*)(CUipcEventHandle*, CUevent) except ?CUDA_ERROR_NOT_FOUND nogil> __cuIpcGetEventHandle)(pHandle, event)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUipcEventHandle *, CUevent))__pyx_v_4cuda_5_cuda_5ccuda___cuIpcGetEventHandle)(__pyx_v_pHandle, __pyx_v_event); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 3518, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":3519
 *             raise RuntimeError('Function "cuIpcGetEventHandle" not found')
 *     err = (<CUresult (*)(CUipcEventHandle*, CUevent) except ?CUDA_ERROR_NOT_FOUND nogil> __cuIpcGetEventHandle)(pHandle, event)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuIpcOpenEventHandle(CUevent* phEvent, CUipcEventHandle handle) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":3512
 *     return err
 * 
 * cdef CUresult _cuIpcGetEventHandle(CUipcEventHandle* pHandle, CUevent event) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuIpcGetEventHandle
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuIpcGetEventHandle", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":3521
 *     return err
 * 
 * cdef CUresult _cuIpcOpenEventHandle(CUevent* phEvent, CUipcEventHandle handle) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuIpcOpenEventHandle
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuIpcOpenEventHandle(CUevent *__pyx_v_phEvent, CUipcEventHandle __pyx_v_handle) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuIpcOpenEventHandle", 1);
  __Pyx_TraceCall("_cuIpcOpenEventHandle", __pyx_f[0], 3521, 1, __PYX_ERR(0, 3521, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":3523
 * cdef CUresult _cuIpcOpenEventHandle(CUevent* phEvent, CUipcEventHandle handle) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuIpcOpenEventHandle
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuIpcOpenEventHandle == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 3523, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":3524
 *     global __cuIpcOpenEventHandle
 *     cuPythonInit()
 *     if __cuIpcOpenEventHandle == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuIpcOpenEventHandle" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuIpcOpenEventHandle == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":3525
 *     cuPythonInit()
 *     if __cuIpcOpenEventHandle == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuIpcOpenEventHandle" not found')
 *     err = (<CUresult (*)(CUevent*, CUipcEventHandle) except ?CUDA_ERROR_NOT_FOUND nogil> __cuIpcOpenEventHandle)(phEvent, handle)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":3526
 *     if __cuIpcOpenEventHandle == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuIpcOpenEventHandle" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUevent*, CUipcEventHandle) except ?CUDA_ERROR_NOT_FOUND nogil> __cuIpcOpenEventHandle)(phEvent, handle)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__101, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 3526, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 3526, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":3525
 *     cuPythonInit()
 *     if __cuIpcOpenEventHandle == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuIpcOpenEventHandle" not found')
 *     err = (<CUresult (*)(CUevent*, CUipcEventHandle) except ?CUDA_ERROR_NOT_FOUND nogil> __cuIpcOpenEventHandle)(phEvent, handle)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":3524
 *     global __cuIpcOpenEventHandle
 *     cuPythonInit()
 *     if __cuIpcOpenEventHandle == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuIpcOpenEventHandle" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":3527
 *         with gil:
 *             raise RuntimeError('Function "cuIpcOpenEventHandle" not found')
 *     err = (<CUresult (*)(CUevent*, CUipcEventHandle) except ?CUDA_ERROR_NOT_FOUND nogil> __cuIpcOpenEventHandle)(phEvent, handle)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUevent *, CUipcEventHandle))__pyx_v_4cuda_5_cuda_5ccuda___cuIpcOpenEventHandle)(__pyx_v_phEvent, __pyx_v_handle); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 3527, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":3528
 *             raise RuntimeError('Function "cuIpcOpenEventHandle" not found')
 *     err = (<CUresult (*)(CUevent*, CUipcEventHandle) except ?CUDA_ERROR_NOT_FOUND nogil> __cuIpcOpenEventHandle)(phEvent, handle)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuIpcGetMemHandle(CUipcMemHandle* pHandle, CUdeviceptr dptr) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":3521
 *     return err
 * 
 * cdef CUresult _cuIpcOpenEventHandle(CUevent* phEvent, CUipcEventHandle handle) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuIpcOpenEventHandle
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuIpcOpenEventHandle", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":3530
 *     return err
 * 
 * cdef CUresult _cuIpcGetMemHandle(CUipcMemHandle* pHandle, CUdeviceptr dptr) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuIpcGetMemHandle
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuIpcGetMemHandle(CUipcMemHandle *__pyx_v_pHandle, CUdeviceptr __pyx_v_dptr) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuIpcGetMemHandle", 1);
  __Pyx_TraceCall("_cuIpcGetMemHandle", __pyx_f[0], 3530, 1, __PYX_ERR(0, 3530, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":3532
 * cdef CUresult _cuIpcGetMemHandle(CUipcMemHandle* pHandle, CUdeviceptr dptr) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuIpcGetMemHandle
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuIpcGetMemHandle == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 3532, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":3533
 *     global __cuIpcGetMemHandle
 *     cuPythonInit()
 *     if __cuIpcGetMemHandle == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuIpcGetMemHandle" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuIpcGetMemHandle == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":3534
 *     cuPythonInit()
 *     if __cuIpcGetMemHandle == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuIpcGetMemHandle" not found')
 *     err = (<CUresult (*)(CUipcMemHandle*, CUdeviceptr) except ?CUDA_ERROR_NOT_FOUND nogil> __cuIpcGetMemHandle)(pHandle, dptr)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":3535
 *     if __cuIpcGetMemHandle == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuIpcGetMemHandle" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUipcMemHandle*, CUdeviceptr) except ?CUDA_ERROR_NOT_FOUND nogil> __cuIpcGetMemHandle)(pHandle, dptr)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__102, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 3535, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 3535, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":3534
 *     cuPythonInit()
 *     if __cuIpcGetMemHandle == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuIpcGetMemHandle" not found')
 *     err = (<CUresult (*)(CUipcMemHandle*, CUdeviceptr) except ?CUDA_ERROR_NOT_FOUND nogil> __cuIpcGetMemHandle)(pHandle, dptr)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":3533
 *     global __cuIpcGetMemHandle
 *     cuPythonInit()
 *     if __cuIpcGetMemHandle == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuIpcGetMemHandle" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":3536
 *         with gil:
 *             raise RuntimeError('Function "cuIpcGetMemHandle" not found')
 *     err = (<CUresult (*)(CUipcMemHandle*, CUdeviceptr) except ?CUDA_ERROR_NOT_FOUND nogil> __cuIpcGetMemHandle)(pHandle, dptr)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUipcMemHandle *, CUdeviceptr))__pyx_v_4cuda_5_cuda_5ccuda___cuIpcGetMemHandle)(__pyx_v_pHandle, __pyx_v_dptr); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 3536, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":3537
 *             raise RuntimeError('Function "cuIpcGetMemHandle" not found')
 *     err = (<CUresult (*)(CUipcMemHandle*, CUdeviceptr) except ?CUDA_ERROR_NOT_FOUND nogil> __cuIpcGetMemHandle)(pHandle, dptr)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuIpcOpenMemHandle_v2(CUdeviceptr* pdptr, CUipcMemHandle handle, unsigned int Flags) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":3530
 *     return err
 * 
 * cdef CUresult _cuIpcGetMemHandle(CUipcMemHandle* pHandle, CUdeviceptr dptr) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuIpcGetMemHandle
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuIpcGetMemHandle", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":3539
 *     return err
 * 
 * cdef CUresult _cuIpcOpenMemHandle_v2(CUdeviceptr* pdptr, CUipcMemHandle handle, unsigned int Flags) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuIpcOpenMemHandle_v2
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuIpcOpenMemHandle_v2(CUdeviceptr *__pyx_v_pdptr, CUipcMemHandle __pyx_v_handle, unsigned int __pyx_v_Flags) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuIpcOpenMemHandle_v2", 1);
  __Pyx_TraceCall("_cuIpcOpenMemHandle_v2", __pyx_f[0], 3539, 1, __PYX_ERR(0, 3539, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":3541
 * cdef CUresult _cuIpcOpenMemHandle_v2(CUdeviceptr* pdptr, CUipcMemHandle handle, unsigned int Flags) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuIpcOpenMemHandle_v2
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuIpcOpenMemHandle_v2 == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 3541, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":3542
 *     global __cuIpcOpenMemHandle_v2
 *     cuPythonInit()
 *     if __cuIpcOpenMemHandle_v2 == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuIpcOpenMemHandle_v2" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuIpcOpenMemHandle_v2 == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":3543
 *     cuPythonInit()
 *     if __cuIpcOpenMemHandle_v2 == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuIpcOpenMemHandle_v2" not found')
 *     err = (<CUresult (*)(CUdeviceptr*, CUipcMemHandle, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuIpcOpenMemHandle_v2)(pdptr, handle, Flags)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":3544
 *     if __cuIpcOpenMemHandle_v2 == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuIpcOpenMemHandle_v2" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUdeviceptr*, CUipcMemHandle, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuIpcOpenMemHandle_v2)(pdptr, handle, Flags)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__103, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 3544, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 3544, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":3543
 *     cuPythonInit()
 *     if __cuIpcOpenMemHandle_v2 == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuIpcOpenMemHandle_v2" not found')
 *     err = (<CUresult (*)(CUdeviceptr*, CUipcMemHandle, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuIpcOpenMemHandle_v2)(pdptr, handle, Flags)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":3542
 *     global __cuIpcOpenMemHandle_v2
 *     cuPythonInit()
 *     if __cuIpcOpenMemHandle_v2 == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuIpcOpenMemHandle_v2" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":3545
 *         with gil:
 *             raise RuntimeError('Function "cuIpcOpenMemHandle_v2" not found')
 *     err = (<CUresult (*)(CUdeviceptr*, CUipcMemHandle, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuIpcOpenMemHandle_v2)(pdptr, handle, Flags)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUdeviceptr *, CUipcMemHandle, unsigned int))__pyx_v_4cuda_5_cuda_5ccuda___cuIpcOpenMemHandle_v2)(__pyx_v_pdptr, __pyx_v_handle, __pyx_v_Flags); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 3545, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":3546
 *             raise RuntimeError('Function "cuIpcOpenMemHandle_v2" not found')
 *     err = (<CUresult (*)(CUdeviceptr*, CUipcMemHandle, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuIpcOpenMemHandle_v2)(pdptr, handle, Flags)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuIpcCloseMemHandle(CUdeviceptr dptr) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":3539
 *     return err
 * 
 * cdef CUresult _cuIpcOpenMemHandle_v2(CUdeviceptr* pdptr, CUipcMemHandle handle, unsigned int Flags) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuIpcOpenMemHandle_v2
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuIpcOpenMemHandle_v2", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":3548
 *     return err
 * 
 * cdef CUresult _cuIpcCloseMemHandle(CUdeviceptr dptr) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuIpcCloseMemHandle
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuIpcCloseMemHandle(CUdeviceptr __pyx_v_dptr) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuIpcCloseMemHandle", 1);
  __Pyx_TraceCall("_cuIpcCloseMemHandle", __pyx_f[0], 3548, 1, __PYX_ERR(0, 3548, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":3550
 * cdef CUresult _cuIpcCloseMemHandle(CUdeviceptr dptr) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuIpcCloseMemHandle
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuIpcCloseMemHandle == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 3550, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":3551
 *     global __cuIpcCloseMemHandle
 *     cuPythonInit()
 *     if __cuIpcCloseMemHandle == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuIpcCloseMemHandle" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuIpcCloseMemHandle == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":3552
 *     cuPythonInit()
 *     if __cuIpcCloseMemHandle == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuIpcCloseMemHandle" not found')
 *     err = (<CUresult (*)(CUdeviceptr) except ?CUDA_ERROR_NOT_FOUND nogil> __cuIpcCloseMemHandle)(dptr)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":3553
 *     if __cuIpcCloseMemHandle == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuIpcCloseMemHandle" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUdeviceptr) except ?CUDA_ERROR_NOT_FOUND nogil> __cuIpcCloseMemHandle)(dptr)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__104, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 3553, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 3553, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":3552
 *     cuPythonInit()
 *     if __cuIpcCloseMemHandle == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuIpcCloseMemHandle" not found')
 *     err = (<CUresult (*)(CUdeviceptr) except ?CUDA_ERROR_NOT_FOUND nogil> __cuIpcCloseMemHandle)(dptr)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":3551
 *     global __cuIpcCloseMemHandle
 *     cuPythonInit()
 *     if __cuIpcCloseMemHandle == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuIpcCloseMemHandle" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":3554
 *         with gil:
 *             raise RuntimeError('Function "cuIpcCloseMemHandle" not found')
 *     err = (<CUresult (*)(CUdeviceptr) except ?CUDA_ERROR_NOT_FOUND nogil> __cuIpcCloseMemHandle)(dptr)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUdeviceptr))__pyx_v_4cuda_5_cuda_5ccuda___cuIpcCloseMemHandle)(__pyx_v_dptr); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 3554, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":3555
 *             raise RuntimeError('Function "cuIpcCloseMemHandle" not found')
 *     err = (<CUresult (*)(CUdeviceptr) except ?CUDA_ERROR_NOT_FOUND nogil> __cuIpcCloseMemHandle)(dptr)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuMemHostRegister_v2(void* p, size_t bytesize, unsigned int Flags) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":3548
 *     return err
 * 
 * cdef CUresult _cuIpcCloseMemHandle(CUdeviceptr dptr) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuIpcCloseMemHandle
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuIpcCloseMemHandle", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":3557
 *     return err
 * 
 * cdef CUresult _cuMemHostRegister_v2(void* p, size_t bytesize, unsigned int Flags) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuMemHostRegister_v2
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuMemHostRegister_v2(void *__pyx_v_p, size_t __pyx_v_bytesize, unsigned int __pyx_v_Flags) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuMemHostRegister_v2", 1);
  __Pyx_TraceCall("_cuMemHostRegister_v2", __pyx_f[0], 3557, 1, __PYX_ERR(0, 3557, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":3559
 * cdef CUresult _cuMemHostRegister_v2(void* p, size_t bytesize, unsigned int Flags) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuMemHostRegister_v2
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuMemHostRegister_v2 == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 3559, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":3560
 *     global __cuMemHostRegister_v2
 *     cuPythonInit()
 *     if __cuMemHostRegister_v2 == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuMemHostRegister_v2" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuMemHostRegister_v2 == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":3561
 *     cuPythonInit()
 *     if __cuMemHostRegister_v2 == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuMemHostRegister_v2" not found')
 *     err = (<CUresult (*)(void*, size_t, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemHostRegister_v2)(p, bytesize, Flags)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":3562
 *     if __cuMemHostRegister_v2 == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuMemHostRegister_v2" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(void*, size_t, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemHostRegister_v2)(p, bytesize, Flags)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__105, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 3562, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 3562, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":3561
 *     cuPythonInit()
 *     if __cuMemHostRegister_v2 == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuMemHostRegister_v2" not found')
 *     err = (<CUresult (*)(void*, size_t, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemHostRegister_v2)(p, bytesize, Flags)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":3560
 *     global __cuMemHostRegister_v2
 *     cuPythonInit()
 *     if __cuMemHostRegister_v2 == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuMemHostRegister_v2" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":3563
 *         with gil:
 *             raise RuntimeError('Function "cuMemHostRegister_v2" not found')
 *     err = (<CUresult (*)(void*, size_t, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemHostRegister_v2)(p, bytesize, Flags)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(void *, size_t, unsigned int))__pyx_v_4cuda_5_cuda_5ccuda___cuMemHostRegister_v2)(__pyx_v_p, __pyx_v_bytesize, __pyx_v_Flags); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 3563, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":3564
 *             raise RuntimeError('Function "cuMemHostRegister_v2" not found')
 *     err = (<CUresult (*)(void*, size_t, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemHostRegister_v2)(p, bytesize, Flags)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuMemHostUnregister(void* p) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":3557
 *     return err
 * 
 * cdef CUresult _cuMemHostRegister_v2(void* p, size_t bytesize, unsigned int Flags) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuMemHostRegister_v2
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuMemHostRegister_v2", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":3566
 *     return err
 * 
 * cdef CUresult _cuMemHostUnregister(void* p) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuMemHostUnregister
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuMemHostUnregister(void *__pyx_v_p) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuMemHostUnregister", 1);
  __Pyx_TraceCall("_cuMemHostUnregister", __pyx_f[0], 3566, 1, __PYX_ERR(0, 3566, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":3568
 * cdef CUresult _cuMemHostUnregister(void* p) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuMemHostUnregister
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuMemHostUnregister == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 3568, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":3569
 *     global __cuMemHostUnregister
 *     cuPythonInit()
 *     if __cuMemHostUnregister == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuMemHostUnregister" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuMemHostUnregister == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":3570
 *     cuPythonInit()
 *     if __cuMemHostUnregister == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuMemHostUnregister" not found')
 *     err = (<CUresult (*)(void*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemHostUnregister)(p)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":3571
 *     if __cuMemHostUnregister == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuMemHostUnregister" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(void*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemHostUnregister)(p)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__106, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 3571, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 3571, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":3570
 *     cuPythonInit()
 *     if __cuMemHostUnregister == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuMemHostUnregister" not found')
 *     err = (<CUresult (*)(void*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemHostUnregister)(p)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":3569
 *     global __cuMemHostUnregister
 *     cuPythonInit()
 *     if __cuMemHostUnregister == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuMemHostUnregister" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":3572
 *         with gil:
 *             raise RuntimeError('Function "cuMemHostUnregister" not found')
 *     err = (<CUresult (*)(void*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemHostUnregister)(p)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(void *))__pyx_v_4cuda_5_cuda_5ccuda___cuMemHostUnregister)(__pyx_v_p); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 3572, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":3573
 *             raise RuntimeError('Function "cuMemHostUnregister" not found')
 *     err = (<CUresult (*)(void*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemHostUnregister)(p)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuMemcpy(CUdeviceptr dst, CUdeviceptr src, size_t ByteCount) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":3566
 *     return err
 * 
 * cdef CUresult _cuMemHostUnregister(void* p) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuMemHostUnregister
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuMemHostUnregister", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":3575
 *     return err
 * 
 * cdef CUresult _cuMemcpy(CUdeviceptr dst, CUdeviceptr src, size_t ByteCount) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuMemcpy
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuMemcpy(CUdeviceptr __pyx_v_dst, CUdeviceptr __pyx_v_src, size_t __pyx_v_ByteCount) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuMemcpy", 1);
  __Pyx_TraceCall("_cuMemcpy", __pyx_f[0], 3575, 1, __PYX_ERR(0, 3575, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":3577
 * cdef CUresult _cuMemcpy(CUdeviceptr dst, CUdeviceptr src, size_t ByteCount) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuMemcpy
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuMemcpy == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 3577, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":3578
 *     global __cuMemcpy
 *     cuPythonInit()
 *     if __cuMemcpy == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuMemcpy" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuMemcpy == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":3579
 *     cuPythonInit()
 *     if __cuMemcpy == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuMemcpy" not found')
 *     err = (<CUresult (*)(CUdeviceptr, CUdeviceptr, size_t) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemcpy)(dst, src, ByteCount)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":3580
 *     if __cuMemcpy == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuMemcpy" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUdeviceptr, CUdeviceptr, size_t) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemcpy)(dst, src, ByteCount)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__107, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 3580, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 3580, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":3579
 *     cuPythonInit()
 *     if __cuMemcpy == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuMemcpy" not found')
 *     err = (<CUresult (*)(CUdeviceptr, CUdeviceptr, size_t) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemcpy)(dst, src, ByteCount)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":3578
 *     global __cuMemcpy
 *     cuPythonInit()
 *     if __cuMemcpy == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuMemcpy" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":3581
 *         with gil:
 *             raise RuntimeError('Function "cuMemcpy" not found')
 *     err = (<CUresult (*)(CUdeviceptr, CUdeviceptr, size_t) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemcpy)(dst, src, ByteCount)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUdeviceptr, CUdeviceptr, size_t))__pyx_v_4cuda_5_cuda_5ccuda___cuMemcpy)(__pyx_v_dst, __pyx_v_src, __pyx_v_ByteCount); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 3581, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":3582
 *             raise RuntimeError('Function "cuMemcpy" not found')
 *     err = (<CUresult (*)(CUdeviceptr, CUdeviceptr, size_t) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemcpy)(dst, src, ByteCount)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuMemcpyPeer(CUdeviceptr dstDevice, CUcontext dstContext, CUdeviceptr srcDevice, CUcontext srcContext, size_t ByteCount) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":3575
 *     return err
 * 
 * cdef CUresult _cuMemcpy(CUdeviceptr dst, CUdeviceptr src, size_t ByteCount) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuMemcpy
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuMemcpy", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":3584
 *     return err
 * 
 * cdef CUresult _cuMemcpyPeer(CUdeviceptr dstDevice, CUcontext dstContext, CUdeviceptr srcDevice, CUcontext srcContext, size_t ByteCount) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuMemcpyPeer
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuMemcpyPeer(CUdeviceptr __pyx_v_dstDevice, CUcontext __pyx_v_dstContext, CUdeviceptr __pyx_v_srcDevice, CUcontext __pyx_v_srcContext, size_t __pyx_v_ByteCount) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuMemcpyPeer", 1);
  __Pyx_TraceCall("_cuMemcpyPeer", __pyx_f[0], 3584, 1, __PYX_ERR(0, 3584, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":3586
 * cdef CUresult _cuMemcpyPeer(CUdeviceptr dstDevice, CUcontext dstContext, CUdeviceptr srcDevice, CUcontext srcContext, size_t ByteCount) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuMemcpyPeer
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuMemcpyPeer == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 3586, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":3587
 *     global __cuMemcpyPeer
 *     cuPythonInit()
 *     if __cuMemcpyPeer == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuMemcpyPeer" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuMemcpyPeer == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":3588
 *     cuPythonInit()
 *     if __cuMemcpyPeer == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuMemcpyPeer" not found')
 *     err = (<CUresult (*)(CUdeviceptr, CUcontext, CUdeviceptr, CUcontext, size_t) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemcpyPeer)(dstDevice, dstContext, srcDevice, srcContext, ByteCount)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":3589
 *     if __cuMemcpyPeer == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuMemcpyPeer" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUdeviceptr, CUcontext, CUdeviceptr, CUcontext, size_t) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemcpyPeer)(dstDevice, dstContext, srcDevice, srcContext, ByteCount)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__108, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 3589, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 3589, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":3588
 *     cuPythonInit()
 *     if __cuMemcpyPeer == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuMemcpyPeer" not found')
 *     err = (<CUresult (*)(CUdeviceptr, CUcontext, CUdeviceptr, CUcontext, size_t) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemcpyPeer)(dstDevice, dstContext, srcDevice, srcContext, ByteCount)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":3587
 *     global __cuMemcpyPeer
 *     cuPythonInit()
 *     if __cuMemcpyPeer == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuMemcpyPeer" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":3590
 *         with gil:
 *             raise RuntimeError('Function "cuMemcpyPeer" not found')
 *     err = (<CUresult (*)(CUdeviceptr, CUcontext, CUdeviceptr, CUcontext, size_t) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemcpyPeer)(dstDevice, dstContext, srcDevice, srcContext, ByteCount)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUdeviceptr, CUcontext, CUdeviceptr, CUcontext, size_t))__pyx_v_4cuda_5_cuda_5ccuda___cuMemcpyPeer)(__pyx_v_dstDevice, __pyx_v_dstContext, __pyx_v_srcDevice, __pyx_v_srcContext, __pyx_v_ByteCount); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 3590, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":3591
 *             raise RuntimeError('Function "cuMemcpyPeer" not found')
 *     err = (<CUresult (*)(CUdeviceptr, CUcontext, CUdeviceptr, CUcontext, size_t) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemcpyPeer)(dstDevice, dstContext, srcDevice, srcContext, ByteCount)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuMemcpyHtoD_v2(CUdeviceptr dstDevice, const void* srcHost, size_t ByteCount) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":3584
 *     return err
 * 
 * cdef CUresult _cuMemcpyPeer(CUdeviceptr dstDevice, CUcontext dstContext, CUdeviceptr srcDevice, CUcontext srcContext, size_t ByteCount) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuMemcpyPeer
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuMemcpyPeer", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":3593
 *     return err
 * 
 * cdef CUresult _cuMemcpyHtoD_v2(CUdeviceptr dstDevice, const void* srcHost, size_t ByteCount) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuMemcpyHtoD_v2
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuMemcpyHtoD_v2(CUdeviceptr __pyx_v_dstDevice, void const *__pyx_v_srcHost, size_t __pyx_v_ByteCount) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuMemcpyHtoD_v2", 1);
  __Pyx_TraceCall("_cuMemcpyHtoD_v2", __pyx_f[0], 3593, 1, __PYX_ERR(0, 3593, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":3595
 * cdef CUresult _cuMemcpyHtoD_v2(CUdeviceptr dstDevice, const void* srcHost, size_t ByteCount) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuMemcpyHtoD_v2
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuMemcpyHtoD_v2 == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 3595, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":3596
 *     global __cuMemcpyHtoD_v2
 *     cuPythonInit()
 *     if __cuMemcpyHtoD_v2 == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuMemcpyHtoD_v2" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuMemcpyHtoD_v2 == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":3597
 *     cuPythonInit()
 *     if __cuMemcpyHtoD_v2 == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuMemcpyHtoD_v2" not found')
 *     err = (<CUresult (*)(CUdeviceptr, const void*, size_t) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemcpyHtoD_v2)(dstDevice, srcHost, ByteCount)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":3598
 *     if __cuMemcpyHtoD_v2 == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuMemcpyHtoD_v2" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUdeviceptr, const void*, size_t) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemcpyHtoD_v2)(dstDevice, srcHost, ByteCount)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__109, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 3598, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 3598, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":3597
 *     cuPythonInit()
 *     if __cuMemcpyHtoD_v2 == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuMemcpyHtoD_v2" not found')
 *     err = (<CUresult (*)(CUdeviceptr, const void*, size_t) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemcpyHtoD_v2)(dstDevice, srcHost, ByteCount)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":3596
 *     global __cuMemcpyHtoD_v2
 *     cuPythonInit()
 *     if __cuMemcpyHtoD_v2 == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuMemcpyHtoD_v2" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":3599
 *         with gil:
 *             raise RuntimeError('Function "cuMemcpyHtoD_v2" not found')
 *     err = (<CUresult (*)(CUdeviceptr, const void*, size_t) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemcpyHtoD_v2)(dstDevice, srcHost, ByteCount)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUdeviceptr, void const *, size_t))__pyx_v_4cuda_5_cuda_5ccuda___cuMemcpyHtoD_v2)(__pyx_v_dstDevice, __pyx_v_srcHost, __pyx_v_ByteCount); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 3599, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":3600
 *             raise RuntimeError('Function "cuMemcpyHtoD_v2" not found')
 *     err = (<CUresult (*)(CUdeviceptr, const void*, size_t) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemcpyHtoD_v2)(dstDevice, srcHost, ByteCount)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuMemcpyDtoH_v2(void* dstHost, CUdeviceptr srcDevice, size_t ByteCount) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":3593
 *     return err
 * 
 * cdef CUresult _cuMemcpyHtoD_v2(CUdeviceptr dstDevice, const void* srcHost, size_t ByteCount) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuMemcpyHtoD_v2
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuMemcpyHtoD_v2", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":3602
 *     return err
 * 
 * cdef CUresult _cuMemcpyDtoH_v2(void* dstHost, CUdeviceptr srcDevice, size_t ByteCount) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuMemcpyDtoH_v2
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuMemcpyDtoH_v2(void *__pyx_v_dstHost, CUdeviceptr __pyx_v_srcDevice, size_t __pyx_v_ByteCount) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuMemcpyDtoH_v2", 1);
  __Pyx_TraceCall("_cuMemcpyDtoH_v2", __pyx_f[0], 3602, 1, __PYX_ERR(0, 3602, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":3604
 * cdef CUresult _cuMemcpyDtoH_v2(void* dstHost, CUdeviceptr srcDevice, size_t ByteCount) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuMemcpyDtoH_v2
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuMemcpyDtoH_v2 == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 3604, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":3605
 *     global __cuMemcpyDtoH_v2
 *     cuPythonInit()
 *     if __cuMemcpyDtoH_v2 == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuMemcpyDtoH_v2" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuMemcpyDtoH_v2 == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":3606
 *     cuPythonInit()
 *     if __cuMemcpyDtoH_v2 == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuMemcpyDtoH_v2" not found')
 *     err = (<CUresult (*)(void*, CUdeviceptr, size_t) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemcpyDtoH_v2)(dstHost, srcDevice, ByteCount)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":3607
 *     if __cuMemcpyDtoH_v2 == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuMemcpyDtoH_v2" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(void*, CUdeviceptr, size_t) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemcpyDtoH_v2)(dstHost, srcDevice, ByteCount)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__110, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 3607, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 3607, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":3606
 *     cuPythonInit()
 *     if __cuMemcpyDtoH_v2 == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuMemcpyDtoH_v2" not found')
 *     err = (<CUresult (*)(void*, CUdeviceptr, size_t) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemcpyDtoH_v2)(dstHost, srcDevice, ByteCount)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":3605
 *     global __cuMemcpyDtoH_v2
 *     cuPythonInit()
 *     if __cuMemcpyDtoH_v2 == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuMemcpyDtoH_v2" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":3608
 *         with gil:
 *             raise RuntimeError('Function "cuMemcpyDtoH_v2" not found')
 *     err = (<CUresult (*)(void*, CUdeviceptr, size_t) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemcpyDtoH_v2)(dstHost, srcDevice, ByteCount)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(void *, CUdeviceptr, size_t))__pyx_v_4cuda_5_cuda_5ccuda___cuMemcpyDtoH_v2)(__pyx_v_dstHost, __pyx_v_srcDevice, __pyx_v_ByteCount); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 3608, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":3609
 *             raise RuntimeError('Function "cuMemcpyDtoH_v2" not found')
 *     err = (<CUresult (*)(void*, CUdeviceptr, size_t) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemcpyDtoH_v2)(dstHost, srcDevice, ByteCount)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuMemcpyDtoD_v2(CUdeviceptr dstDevice, CUdeviceptr srcDevice, size_t ByteCount) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":3602
 *     return err
 * 
 * cdef CUresult _cuMemcpyDtoH_v2(void* dstHost, CUdeviceptr srcDevice, size_t ByteCount) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuMemcpyDtoH_v2
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuMemcpyDtoH_v2", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":3611
 *     return err
 * 
 * cdef CUresult _cuMemcpyDtoD_v2(CUdeviceptr dstDevice, CUdeviceptr srcDevice, size_t ByteCount) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuMemcpyDtoD_v2
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuMemcpyDtoD_v2(CUdeviceptr __pyx_v_dstDevice, CUdeviceptr __pyx_v_srcDevice, size_t __pyx_v_ByteCount) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuMemcpyDtoD_v2", 1);
  __Pyx_TraceCall("_cuMemcpyDtoD_v2", __pyx_f[0], 3611, 1, __PYX_ERR(0, 3611, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":3613
 * cdef CUresult _cuMemcpyDtoD_v2(CUdeviceptr dstDevice, CUdeviceptr srcDevice, size_t ByteCount) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuMemcpyDtoD_v2
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuMemcpyDtoD_v2 == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 3613, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":3614
 *     global __cuMemcpyDtoD_v2
 *     cuPythonInit()
 *     if __cuMemcpyDtoD_v2 == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuMemcpyDtoD_v2" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuMemcpyDtoD_v2 == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":3615
 *     cuPythonInit()
 *     if __cuMemcpyDtoD_v2 == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuMemcpyDtoD_v2" not found')
 *     err = (<CUresult (*)(CUdeviceptr, CUdeviceptr, size_t) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemcpyDtoD_v2)(dstDevice, srcDevice, ByteCount)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":3616
 *     if __cuMemcpyDtoD_v2 == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuMemcpyDtoD_v2" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUdeviceptr, CUdeviceptr, size_t) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemcpyDtoD_v2)(dstDevice, srcDevice, ByteCount)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__111, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 3616, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 3616, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":3615
 *     cuPythonInit()
 *     if __cuMemcpyDtoD_v2 == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuMemcpyDtoD_v2" not found')
 *     err = (<CUresult (*)(CUdeviceptr, CUdeviceptr, size_t) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemcpyDtoD_v2)(dstDevice, srcDevice, ByteCount)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":3614
 *     global __cuMemcpyDtoD_v2
 *     cuPythonInit()
 *     if __cuMemcpyDtoD_v2 == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuMemcpyDtoD_v2" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":3617
 *         with gil:
 *             raise RuntimeError('Function "cuMemcpyDtoD_v2" not found')
 *     err = (<CUresult (*)(CUdeviceptr, CUdeviceptr, size_t) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemcpyDtoD_v2)(dstDevice, srcDevice, ByteCount)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUdeviceptr, CUdeviceptr, size_t))__pyx_v_4cuda_5_cuda_5ccuda___cuMemcpyDtoD_v2)(__pyx_v_dstDevice, __pyx_v_srcDevice, __pyx_v_ByteCount); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 3617, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":3618
 *             raise RuntimeError('Function "cuMemcpyDtoD_v2" not found')
 *     err = (<CUresult (*)(CUdeviceptr, CUdeviceptr, size_t) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemcpyDtoD_v2)(dstDevice, srcDevice, ByteCount)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuMemcpyDtoA_v2(CUarray dstArray, size_t dstOffset, CUdeviceptr srcDevice, size_t ByteCount) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":3611
 *     return err
 * 
 * cdef CUresult _cuMemcpyDtoD_v2(CUdeviceptr dstDevice, CUdeviceptr srcDevice, size_t ByteCount) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuMemcpyDtoD_v2
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuMemcpyDtoD_v2", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":3620
 *     return err
 * 
 * cdef CUresult _cuMemcpyDtoA_v2(CUarray dstArray, size_t dstOffset, CUdeviceptr srcDevice, size_t ByteCount) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuMemcpyDtoA_v2
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuMemcpyDtoA_v2(CUarray __pyx_v_dstArray, size_t __pyx_v_dstOffset, CUdeviceptr __pyx_v_srcDevice, size_t __pyx_v_ByteCount) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuMemcpyDtoA_v2", 1);
  __Pyx_TraceCall("_cuMemcpyDtoA_v2", __pyx_f[0], 3620, 1, __PYX_ERR(0, 3620, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":3622
 * cdef CUresult _cuMemcpyDtoA_v2(CUarray dstArray, size_t dstOffset, CUdeviceptr srcDevice, size_t ByteCount) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuMemcpyDtoA_v2
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuMemcpyDtoA_v2 == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 3622, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":3623
 *     global __cuMemcpyDtoA_v2
 *     cuPythonInit()
 *     if __cuMemcpyDtoA_v2 == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuMemcpyDtoA_v2" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuMemcpyDtoA_v2 == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":3624
 *     cuPythonInit()
 *     if __cuMemcpyDtoA_v2 == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuMemcpyDtoA_v2" not found')
 *     err = (<CUresult (*)(CUarray, size_t, CUdeviceptr, size_t) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemcpyDtoA_v2)(dstArray, dstOffset, srcDevice, ByteCount)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":3625
 *     if __cuMemcpyDtoA_v2 == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuMemcpyDtoA_v2" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUarray, size_t, CUdeviceptr, size_t) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemcpyDtoA_v2)(dstArray, dstOffset, srcDevice, ByteCount)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__112, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 3625, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 3625, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":3624
 *     cuPythonInit()
 *     if __cuMemcpyDtoA_v2 == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuMemcpyDtoA_v2" not found')
 *     err = (<CUresult (*)(CUarray, size_t, CUdeviceptr, size_t) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemcpyDtoA_v2)(dstArray, dstOffset, srcDevice, ByteCount)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":3623
 *     global __cuMemcpyDtoA_v2
 *     cuPythonInit()
 *     if __cuMemcpyDtoA_v2 == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuMemcpyDtoA_v2" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":3626
 *         with gil:
 *             raise RuntimeError('Function "cuMemcpyDtoA_v2" not found')
 *     err = (<CUresult (*)(CUarray, size_t, CUdeviceptr, size_t) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemcpyDtoA_v2)(dstArray, dstOffset, srcDevice, ByteCount)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUarray, size_t, CUdeviceptr, size_t))__pyx_v_4cuda_5_cuda_5ccuda___cuMemcpyDtoA_v2)(__pyx_v_dstArray, __pyx_v_dstOffset, __pyx_v_srcDevice, __pyx_v_ByteCount); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 3626, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":3627
 *             raise RuntimeError('Function "cuMemcpyDtoA_v2" not found')
 *     err = (<CUresult (*)(CUarray, size_t, CUdeviceptr, size_t) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemcpyDtoA_v2)(dstArray, dstOffset, srcDevice, ByteCount)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuMemcpyAtoD_v2(CUdeviceptr dstDevice, CUarray srcArray, size_t srcOffset, size_t ByteCount) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":3620
 *     return err
 * 
 * cdef CUresult _cuMemcpyDtoA_v2(CUarray dstArray, size_t dstOffset, CUdeviceptr srcDevice, size_t ByteCount) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuMemcpyDtoA_v2
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuMemcpyDtoA_v2", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":3629
 *     return err
 * 
 * cdef CUresult _cuMemcpyAtoD_v2(CUdeviceptr dstDevice, CUarray srcArray, size_t srcOffset, size_t ByteCount) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuMemcpyAtoD_v2
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuMemcpyAtoD_v2(CUdeviceptr __pyx_v_dstDevice, CUarray __pyx_v_srcArray, size_t __pyx_v_srcOffset, size_t __pyx_v_ByteCount) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuMemcpyAtoD_v2", 1);
  __Pyx_TraceCall("_cuMemcpyAtoD_v2", __pyx_f[0], 3629, 1, __PYX_ERR(0, 3629, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":3631
 * cdef CUresult _cuMemcpyAtoD_v2(CUdeviceptr dstDevice, CUarray srcArray, size_t srcOffset, size_t ByteCount) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuMemcpyAtoD_v2
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuMemcpyAtoD_v2 == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 3631, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":3632
 *     global __cuMemcpyAtoD_v2
 *     cuPythonInit()
 *     if __cuMemcpyAtoD_v2 == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuMemcpyAtoD_v2" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuMemcpyAtoD_v2 == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":3633
 *     cuPythonInit()
 *     if __cuMemcpyAtoD_v2 == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuMemcpyAtoD_v2" not found')
 *     err = (<CUresult (*)(CUdeviceptr, CUarray, size_t, size_t) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemcpyAtoD_v2)(dstDevice, srcArray, srcOffset, ByteCount)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":3634
 *     if __cuMemcpyAtoD_v2 == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuMemcpyAtoD_v2" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUdeviceptr, CUarray, size_t, size_t) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemcpyAtoD_v2)(dstDevice, srcArray, srcOffset, ByteCount)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__113, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 3634, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 3634, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":3633
 *     cuPythonInit()
 *     if __cuMemcpyAtoD_v2 == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuMemcpyAtoD_v2" not found')
 *     err = (<CUresult (*)(CUdeviceptr, CUarray, size_t, size_t) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemcpyAtoD_v2)(dstDevice, srcArray, srcOffset, ByteCount)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":3632
 *     global __cuMemcpyAtoD_v2
 *     cuPythonInit()
 *     if __cuMemcpyAtoD_v2 == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuMemcpyAtoD_v2" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":3635
 *         with gil:
 *             raise RuntimeError('Function "cuMemcpyAtoD_v2" not found')
 *     err = (<CUresult (*)(CUdeviceptr, CUarray, size_t, size_t) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemcpyAtoD_v2)(dstDevice, srcArray, srcOffset, ByteCount)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUdeviceptr, CUarray, size_t, size_t))__pyx_v_4cuda_5_cuda_5ccuda___cuMemcpyAtoD_v2)(__pyx_v_dstDevice, __pyx_v_srcArray, __pyx_v_srcOffset, __pyx_v_ByteCount); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 3635, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":3636
 *             raise RuntimeError('Function "cuMemcpyAtoD_v2" not found')
 *     err = (<CUresult (*)(CUdeviceptr, CUarray, size_t, size_t) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemcpyAtoD_v2)(dstDevice, srcArray, srcOffset, ByteCount)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuMemcpyHtoA_v2(CUarray dstArray, size_t dstOffset, const void* srcHost, size_t ByteCount) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":3629
 *     return err
 * 
 * cdef CUresult _cuMemcpyAtoD_v2(CUdeviceptr dstDevice, CUarray srcArray, size_t srcOffset, size_t ByteCount) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuMemcpyAtoD_v2
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuMemcpyAtoD_v2", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":3638
 *     return err
 * 
 * cdef CUresult _cuMemcpyHtoA_v2(CUarray dstArray, size_t dstOffset, const void* srcHost, size_t ByteCount) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuMemcpyHtoA_v2
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuMemcpyHtoA_v2(CUarray __pyx_v_dstArray, size_t __pyx_v_dstOffset, void const *__pyx_v_srcHost, size_t __pyx_v_ByteCount) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuMemcpyHtoA_v2", 1);
  __Pyx_TraceCall("_cuMemcpyHtoA_v2", __pyx_f[0], 3638, 1, __PYX_ERR(0, 3638, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":3640
 * cdef CUresult _cuMemcpyHtoA_v2(CUarray dstArray, size_t dstOffset, const void* srcHost, size_t ByteCount) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuMemcpyHtoA_v2
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuMemcpyHtoA_v2 == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 3640, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":3641
 *     global __cuMemcpyHtoA_v2
 *     cuPythonInit()
 *     if __cuMemcpyHtoA_v2 == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuMemcpyHtoA_v2" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuMemcpyHtoA_v2 == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":3642
 *     cuPythonInit()
 *     if __cuMemcpyHtoA_v2 == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuMemcpyHtoA_v2" not found')
 *     err = (<CUresult (*)(CUarray, size_t, const void*, size_t) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemcpyHtoA_v2)(dstArray, dstOffset, srcHost, ByteCount)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":3643
 *     if __cuMemcpyHtoA_v2 == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuMemcpyHtoA_v2" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUarray, size_t, const void*, size_t) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemcpyHtoA_v2)(dstArray, dstOffset, srcHost, ByteCount)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__114, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 3643, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 3643, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":3642
 *     cuPythonInit()
 *     if __cuMemcpyHtoA_v2 == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuMemcpyHtoA_v2" not found')
 *     err = (<CUresult (*)(CUarray, size_t, const void*, size_t) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemcpyHtoA_v2)(dstArray, dstOffset, srcHost, ByteCount)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":3641
 *     global __cuMemcpyHtoA_v2
 *     cuPythonInit()
 *     if __cuMemcpyHtoA_v2 == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuMemcpyHtoA_v2" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":3644
 *         with gil:
 *             raise RuntimeError('Function "cuMemcpyHtoA_v2" not found')
 *     err = (<CUresult (*)(CUarray, size_t, const void*, size_t) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemcpyHtoA_v2)(dstArray, dstOffset, srcHost, ByteCount)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUarray, size_t, void const *, size_t))__pyx_v_4cuda_5_cuda_5ccuda___cuMemcpyHtoA_v2)(__pyx_v_dstArray, __pyx_v_dstOffset, __pyx_v_srcHost, __pyx_v_ByteCount); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 3644, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":3645
 *             raise RuntimeError('Function "cuMemcpyHtoA_v2" not found')
 *     err = (<CUresult (*)(CUarray, size_t, const void*, size_t) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemcpyHtoA_v2)(dstArray, dstOffset, srcHost, ByteCount)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuMemcpyAtoH_v2(void* dstHost, CUarray srcArray, size_t srcOffset, size_t ByteCount) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":3638
 *     return err
 * 
 * cdef CUresult _cuMemcpyHtoA_v2(CUarray dstArray, size_t dstOffset, const void* srcHost, size_t ByteCount) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuMemcpyHtoA_v2
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuMemcpyHtoA_v2", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":3647
 *     return err
 * 
 * cdef CUresult _cuMemcpyAtoH_v2(void* dstHost, CUarray srcArray, size_t srcOffset, size_t ByteCount) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuMemcpyAtoH_v2
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuMemcpyAtoH_v2(void *__pyx_v_dstHost, CUarray __pyx_v_srcArray, size_t __pyx_v_srcOffset, size_t __pyx_v_ByteCount) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuMemcpyAtoH_v2", 1);
  __Pyx_TraceCall("_cuMemcpyAtoH_v2", __pyx_f[0], 3647, 1, __PYX_ERR(0, 3647, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":3649
 * cdef CUresult _cuMemcpyAtoH_v2(void* dstHost, CUarray srcArray, size_t srcOffset, size_t ByteCount) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuMemcpyAtoH_v2
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuMemcpyAtoH_v2 == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 3649, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":3650
 *     global __cuMemcpyAtoH_v2
 *     cuPythonInit()
 *     if __cuMemcpyAtoH_v2 == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuMemcpyAtoH_v2" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuMemcpyAtoH_v2 == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":3651
 *     cuPythonInit()
 *     if __cuMemcpyAtoH_v2 == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuMemcpyAtoH_v2" not found')
 *     err = (<CUresult (*)(void*, CUarray, size_t, size_t) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemcpyAtoH_v2)(dstHost, srcArray, srcOffset, ByteCount)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":3652
 *     if __cuMemcpyAtoH_v2 == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuMemcpyAtoH_v2" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(void*, CUarray, size_t, size_t) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemcpyAtoH_v2)(dstHost, srcArray, srcOffset, ByteCount)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__115, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 3652, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 3652, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":3651
 *     cuPythonInit()
 *     if __cuMemcpyAtoH_v2 == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuMemcpyAtoH_v2" not found')
 *     err = (<CUresult (*)(void*, CUarray, size_t, size_t) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemcpyAtoH_v2)(dstHost, srcArray, srcOffset, ByteCount)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":3650
 *     global __cuMemcpyAtoH_v2
 *     cuPythonInit()
 *     if __cuMemcpyAtoH_v2 == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuMemcpyAtoH_v2" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":3653
 *         with gil:
 *             raise RuntimeError('Function "cuMemcpyAtoH_v2" not found')
 *     err = (<CUresult (*)(void*, CUarray, size_t, size_t) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemcpyAtoH_v2)(dstHost, srcArray, srcOffset, ByteCount)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(void *, CUarray, size_t, size_t))__pyx_v_4cuda_5_cuda_5ccuda___cuMemcpyAtoH_v2)(__pyx_v_dstHost, __pyx_v_srcArray, __pyx_v_srcOffset, __pyx_v_ByteCount); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 3653, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":3654
 *             raise RuntimeError('Function "cuMemcpyAtoH_v2" not found')
 *     err = (<CUresult (*)(void*, CUarray, size_t, size_t) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemcpyAtoH_v2)(dstHost, srcArray, srcOffset, ByteCount)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuMemcpyAtoA_v2(CUarray dstArray, size_t dstOffset, CUarray srcArray, size_t srcOffset, size_t ByteCount) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":3647
 *     return err
 * 
 * cdef CUresult _cuMemcpyAtoH_v2(void* dstHost, CUarray srcArray, size_t srcOffset, size_t ByteCount) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuMemcpyAtoH_v2
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuMemcpyAtoH_v2", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":3656
 *     return err
 * 
 * cdef CUresult _cuMemcpyAtoA_v2(CUarray dstArray, size_t dstOffset, CUarray srcArray, size_t srcOffset, size_t ByteCount) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuMemcpyAtoA_v2
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuMemcpyAtoA_v2(CUarray __pyx_v_dstArray, size_t __pyx_v_dstOffset, CUarray __pyx_v_srcArray, size_t __pyx_v_srcOffset, size_t __pyx_v_ByteCount) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuMemcpyAtoA_v2", 1);
  __Pyx_TraceCall("_cuMemcpyAtoA_v2", __pyx_f[0], 3656, 1, __PYX_ERR(0, 3656, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":3658
 * cdef CUresult _cuMemcpyAtoA_v2(CUarray dstArray, size_t dstOffset, CUarray srcArray, size_t srcOffset, size_t ByteCount) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuMemcpyAtoA_v2
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuMemcpyAtoA_v2 == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 3658, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":3659
 *     global __cuMemcpyAtoA_v2
 *     cuPythonInit()
 *     if __cuMemcpyAtoA_v2 == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuMemcpyAtoA_v2" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuMemcpyAtoA_v2 == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":3660
 *     cuPythonInit()
 *     if __cuMemcpyAtoA_v2 == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuMemcpyAtoA_v2" not found')
 *     err = (<CUresult (*)(CUarray, size_t, CUarray, size_t, size_t) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemcpyAtoA_v2)(dstArray, dstOffset, srcArray, srcOffset, ByteCount)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":3661
 *     if __cuMemcpyAtoA_v2 == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuMemcpyAtoA_v2" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUarray, size_t, CUarray, size_t, size_t) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemcpyAtoA_v2)(dstArray, dstOffset, srcArray, srcOffset, ByteCount)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__116, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 3661, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 3661, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":3660
 *     cuPythonInit()
 *     if __cuMemcpyAtoA_v2 == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuMemcpyAtoA_v2" not found')
 *     err = (<CUresult (*)(CUarray, size_t, CUarray, size_t, size_t) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemcpyAtoA_v2)(dstArray, dstOffset, srcArray, srcOffset, ByteCount)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":3659
 *     global __cuMemcpyAtoA_v2
 *     cuPythonInit()
 *     if __cuMemcpyAtoA_v2 == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuMemcpyAtoA_v2" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":3662
 *         with gil:
 *             raise RuntimeError('Function "cuMemcpyAtoA_v2" not found')
 *     err = (<CUresult (*)(CUarray, size_t, CUarray, size_t, size_t) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemcpyAtoA_v2)(dstArray, dstOffset, srcArray, srcOffset, ByteCount)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUarray, size_t, CUarray, size_t, size_t))__pyx_v_4cuda_5_cuda_5ccuda___cuMemcpyAtoA_v2)(__pyx_v_dstArray, __pyx_v_dstOffset, __pyx_v_srcArray, __pyx_v_srcOffset, __pyx_v_ByteCount); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 3662, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":3663
 *             raise RuntimeError('Function "cuMemcpyAtoA_v2" not found')
 *     err = (<CUresult (*)(CUarray, size_t, CUarray, size_t, size_t) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemcpyAtoA_v2)(dstArray, dstOffset, srcArray, srcOffset, ByteCount)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuMemcpy2D_v2(const CUDA_MEMCPY2D* pCopy) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":3656
 *     return err
 * 
 * cdef CUresult _cuMemcpyAtoA_v2(CUarray dstArray, size_t dstOffset, CUarray srcArray, size_t srcOffset, size_t ByteCount) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuMemcpyAtoA_v2
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuMemcpyAtoA_v2", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":3665
 *     return err
 * 
 * cdef CUresult _cuMemcpy2D_v2(const CUDA_MEMCPY2D* pCopy) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuMemcpy2D_v2
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuMemcpy2D_v2(CUDA_MEMCPY2D const *__pyx_v_pCopy) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuMemcpy2D_v2", 1);
  __Pyx_TraceCall("_cuMemcpy2D_v2", __pyx_f[0], 3665, 1, __PYX_ERR(0, 3665, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":3667
 * cdef CUresult _cuMemcpy2D_v2(const CUDA_MEMCPY2D* pCopy) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuMemcpy2D_v2
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuMemcpy2D_v2 == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 3667, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":3668
 *     global __cuMemcpy2D_v2
 *     cuPythonInit()
 *     if __cuMemcpy2D_v2 == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuMemcpy2D_v2" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuMemcpy2D_v2 == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":3669
 *     cuPythonInit()
 *     if __cuMemcpy2D_v2 == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuMemcpy2D_v2" not found')
 *     err = (<CUresult (*)(const CUDA_MEMCPY2D*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemcpy2D_v2)(pCopy)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":3670
 *     if __cuMemcpy2D_v2 == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuMemcpy2D_v2" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(const CUDA_MEMCPY2D*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemcpy2D_v2)(pCopy)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__117, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 3670, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 3670, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":3669
 *     cuPythonInit()
 *     if __cuMemcpy2D_v2 == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuMemcpy2D_v2" not found')
 *     err = (<CUresult (*)(const CUDA_MEMCPY2D*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemcpy2D_v2)(pCopy)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":3668
 *     global __cuMemcpy2D_v2
 *     cuPythonInit()
 *     if __cuMemcpy2D_v2 == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuMemcpy2D_v2" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":3671
 *         with gil:
 *             raise RuntimeError('Function "cuMemcpy2D_v2" not found')
 *     err = (<CUresult (*)(const CUDA_MEMCPY2D*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemcpy2D_v2)(pCopy)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUDA_MEMCPY2D const *))__pyx_v_4cuda_5_cuda_5ccuda___cuMemcpy2D_v2)(__pyx_v_pCopy); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 3671, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":3672
 *             raise RuntimeError('Function "cuMemcpy2D_v2" not found')
 *     err = (<CUresult (*)(const CUDA_MEMCPY2D*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemcpy2D_v2)(pCopy)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuMemcpy2DUnaligned_v2(const CUDA_MEMCPY2D* pCopy) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":3665
 *     return err
 * 
 * cdef CUresult _cuMemcpy2D_v2(const CUDA_MEMCPY2D* pCopy) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuMemcpy2D_v2
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuMemcpy2D_v2", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":3674
 *     return err
 * 
 * cdef CUresult _cuMemcpy2DUnaligned_v2(const CUDA_MEMCPY2D* pCopy) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuMemcpy2DUnaligned_v2
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuMemcpy2DUnaligned_v2(CUDA_MEMCPY2D const *__pyx_v_pCopy) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuMemcpy2DUnaligned_v2", 1);
  __Pyx_TraceCall("_cuMemcpy2DUnaligned_v2", __pyx_f[0], 3674, 1, __PYX_ERR(0, 3674, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":3676
 * cdef CUresult _cuMemcpy2DUnaligned_v2(const CUDA_MEMCPY2D* pCopy) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuMemcpy2DUnaligned_v2
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuMemcpy2DUnaligned_v2 == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 3676, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":3677
 *     global __cuMemcpy2DUnaligned_v2
 *     cuPythonInit()
 *     if __cuMemcpy2DUnaligned_v2 == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuMemcpy2DUnaligned_v2" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuMemcpy2DUnaligned_v2 == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":3678
 *     cuPythonInit()
 *     if __cuMemcpy2DUnaligned_v2 == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuMemcpy2DUnaligned_v2" not found')
 *     err = (<CUresult (*)(const CUDA_MEMCPY2D*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemcpy2DUnaligned_v2)(pCopy)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":3679
 *     if __cuMemcpy2DUnaligned_v2 == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuMemcpy2DUnaligned_v2" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(const CUDA_MEMCPY2D*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemcpy2DUnaligned_v2)(pCopy)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__118, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 3679, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 3679, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":3678
 *     cuPythonInit()
 *     if __cuMemcpy2DUnaligned_v2 == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuMemcpy2DUnaligned_v2" not found')
 *     err = (<CUresult (*)(const CUDA_MEMCPY2D*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemcpy2DUnaligned_v2)(pCopy)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":3677
 *     global __cuMemcpy2DUnaligned_v2
 *     cuPythonInit()
 *     if __cuMemcpy2DUnaligned_v2 == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuMemcpy2DUnaligned_v2" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":3680
 *         with gil:
 *             raise RuntimeError('Function "cuMemcpy2DUnaligned_v2" not found')
 *     err = (<CUresult (*)(const CUDA_MEMCPY2D*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemcpy2DUnaligned_v2)(pCopy)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUDA_MEMCPY2D const *))__pyx_v_4cuda_5_cuda_5ccuda___cuMemcpy2DUnaligned_v2)(__pyx_v_pCopy); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 3680, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":3681
 *             raise RuntimeError('Function "cuMemcpy2DUnaligned_v2" not found')
 *     err = (<CUresult (*)(const CUDA_MEMCPY2D*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemcpy2DUnaligned_v2)(pCopy)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuMemcpy3D_v2(const CUDA_MEMCPY3D* pCopy) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":3674
 *     return err
 * 
 * cdef CUresult _cuMemcpy2DUnaligned_v2(const CUDA_MEMCPY2D* pCopy) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuMemcpy2DUnaligned_v2
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuMemcpy2DUnaligned_v2", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":3683
 *     return err
 * 
 * cdef CUresult _cuMemcpy3D_v2(const CUDA_MEMCPY3D* pCopy) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuMemcpy3D_v2
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuMemcpy3D_v2(CUDA_MEMCPY3D const *__pyx_v_pCopy) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuMemcpy3D_v2", 1);
  __Pyx_TraceCall("_cuMemcpy3D_v2", __pyx_f[0], 3683, 1, __PYX_ERR(0, 3683, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":3685
 * cdef CUresult _cuMemcpy3D_v2(const CUDA_MEMCPY3D* pCopy) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuMemcpy3D_v2
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuMemcpy3D_v2 == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 3685, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":3686
 *     global __cuMemcpy3D_v2
 *     cuPythonInit()
 *     if __cuMemcpy3D_v2 == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuMemcpy3D_v2" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuMemcpy3D_v2 == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":3687
 *     cuPythonInit()
 *     if __cuMemcpy3D_v2 == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuMemcpy3D_v2" not found')
 *     err = (<CUresult (*)(const CUDA_MEMCPY3D*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemcpy3D_v2)(pCopy)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":3688
 *     if __cuMemcpy3D_v2 == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuMemcpy3D_v2" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(const CUDA_MEMCPY3D*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemcpy3D_v2)(pCopy)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__119, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 3688, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 3688, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":3687
 *     cuPythonInit()
 *     if __cuMemcpy3D_v2 == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuMemcpy3D_v2" not found')
 *     err = (<CUresult (*)(const CUDA_MEMCPY3D*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemcpy3D_v2)(pCopy)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":3686
 *     global __cuMemcpy3D_v2
 *     cuPythonInit()
 *     if __cuMemcpy3D_v2 == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuMemcpy3D_v2" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":3689
 *         with gil:
 *             raise RuntimeError('Function "cuMemcpy3D_v2" not found')
 *     err = (<CUresult (*)(const CUDA_MEMCPY3D*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemcpy3D_v2)(pCopy)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUDA_MEMCPY3D const *))__pyx_v_4cuda_5_cuda_5ccuda___cuMemcpy3D_v2)(__pyx_v_pCopy); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 3689, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":3690
 *             raise RuntimeError('Function "cuMemcpy3D_v2" not found')
 *     err = (<CUresult (*)(const CUDA_MEMCPY3D*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemcpy3D_v2)(pCopy)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuMemcpy3DPeer(const CUDA_MEMCPY3D_PEER* pCopy) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":3683
 *     return err
 * 
 * cdef CUresult _cuMemcpy3D_v2(const CUDA_MEMCPY3D* pCopy) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuMemcpy3D_v2
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuMemcpy3D_v2", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":3692
 *     return err
 * 
 * cdef CUresult _cuMemcpy3DPeer(const CUDA_MEMCPY3D_PEER* pCopy) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuMemcpy3DPeer
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuMemcpy3DPeer(CUDA_MEMCPY3D_PEER const *__pyx_v_pCopy) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuMemcpy3DPeer", 1);
  __Pyx_TraceCall("_cuMemcpy3DPeer", __pyx_f[0], 3692, 1, __PYX_ERR(0, 3692, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":3694
 * cdef CUresult _cuMemcpy3DPeer(const CUDA_MEMCPY3D_PEER* pCopy) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuMemcpy3DPeer
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuMemcpy3DPeer == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 3694, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":3695
 *     global __cuMemcpy3DPeer
 *     cuPythonInit()
 *     if __cuMemcpy3DPeer == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuMemcpy3DPeer" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuMemcpy3DPeer == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":3696
 *     cuPythonInit()
 *     if __cuMemcpy3DPeer == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuMemcpy3DPeer" not found')
 *     err = (<CUresult (*)(const CUDA_MEMCPY3D_PEER*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemcpy3DPeer)(pCopy)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":3697
 *     if __cuMemcpy3DPeer == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuMemcpy3DPeer" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(const CUDA_MEMCPY3D_PEER*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemcpy3DPeer)(pCopy)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__120, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 3697, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 3697, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":3696
 *     cuPythonInit()
 *     if __cuMemcpy3DPeer == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuMemcpy3DPeer" not found')
 *     err = (<CUresult (*)(const CUDA_MEMCPY3D_PEER*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemcpy3DPeer)(pCopy)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":3695
 *     global __cuMemcpy3DPeer
 *     cuPythonInit()
 *     if __cuMemcpy3DPeer == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuMemcpy3DPeer" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":3698
 *         with gil:
 *             raise RuntimeError('Function "cuMemcpy3DPeer" not found')
 *     err = (<CUresult (*)(const CUDA_MEMCPY3D_PEER*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemcpy3DPeer)(pCopy)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUDA_MEMCPY3D_PEER const *))__pyx_v_4cuda_5_cuda_5ccuda___cuMemcpy3DPeer)(__pyx_v_pCopy); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 3698, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":3699
 *             raise RuntimeError('Function "cuMemcpy3DPeer" not found')
 *     err = (<CUresult (*)(const CUDA_MEMCPY3D_PEER*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemcpy3DPeer)(pCopy)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuMemcpyAsync(CUdeviceptr dst, CUdeviceptr src, size_t ByteCount, CUstream hStream) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":3692
 *     return err
 * 
 * cdef CUresult _cuMemcpy3DPeer(const CUDA_MEMCPY3D_PEER* pCopy) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuMemcpy3DPeer
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuMemcpy3DPeer", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":3701
 *     return err
 * 
 * cdef CUresult _cuMemcpyAsync(CUdeviceptr dst, CUdeviceptr src, size_t ByteCount, CUstream hStream) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuMemcpyAsync
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuMemcpyAsync(CUdeviceptr __pyx_v_dst, CUdeviceptr __pyx_v_src, size_t __pyx_v_ByteCount, CUstream __pyx_v_hStream) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuMemcpyAsync", 1);
  __Pyx_TraceCall("_cuMemcpyAsync", __pyx_f[0], 3701, 1, __PYX_ERR(0, 3701, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":3703
 * cdef CUresult _cuMemcpyAsync(CUdeviceptr dst, CUdeviceptr src, size_t ByteCount, CUstream hStream) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuMemcpyAsync
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuMemcpyAsync == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 3703, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":3704
 *     global __cuMemcpyAsync
 *     cuPythonInit()
 *     if __cuMemcpyAsync == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuMemcpyAsync" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuMemcpyAsync == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":3705
 *     cuPythonInit()
 *     if __cuMemcpyAsync == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuMemcpyAsync" not found')
 *     err = (<CUresult (*)(CUdeviceptr, CUdeviceptr, size_t, CUstream) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemcpyAsync)(dst, src, ByteCount, hStream)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":3706
 *     if __cuMemcpyAsync == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuMemcpyAsync" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUdeviceptr, CUdeviceptr, size_t, CUstream) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemcpyAsync)(dst, src, ByteCount, hStream)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__121, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 3706, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 3706, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":3705
 *     cuPythonInit()
 *     if __cuMemcpyAsync == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuMemcpyAsync" not found')
 *     err = (<CUresult (*)(CUdeviceptr, CUdeviceptr, size_t, CUstream) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemcpyAsync)(dst, src, ByteCount, hStream)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":3704
 *     global __cuMemcpyAsync
 *     cuPythonInit()
 *     if __cuMemcpyAsync == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuMemcpyAsync" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":3707
 *         with gil:
 *             raise RuntimeError('Function "cuMemcpyAsync" not found')
 *     err = (<CUresult (*)(CUdeviceptr, CUdeviceptr, size_t, CUstream) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemcpyAsync)(dst, src, ByteCount, hStream)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUdeviceptr, CUdeviceptr, size_t, CUstream))__pyx_v_4cuda_5_cuda_5ccuda___cuMemcpyAsync)(__pyx_v_dst, __pyx_v_src, __pyx_v_ByteCount, __pyx_v_hStream); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 3707, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":3708
 *             raise RuntimeError('Function "cuMemcpyAsync" not found')
 *     err = (<CUresult (*)(CUdeviceptr, CUdeviceptr, size_t, CUstream) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemcpyAsync)(dst, src, ByteCount, hStream)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuMemcpyPeerAsync(CUdeviceptr dstDevice, CUcontext dstContext, CUdeviceptr srcDevice, CUcontext srcContext, size_t ByteCount, CUstream hStream) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":3701
 *     return err
 * 
 * cdef CUresult _cuMemcpyAsync(CUdeviceptr dst, CUdeviceptr src, size_t ByteCount, CUstream hStream) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuMemcpyAsync
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuMemcpyAsync", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":3710
 *     return err
 * 
 * cdef CUresult _cuMemcpyPeerAsync(CUdeviceptr dstDevice, CUcontext dstContext, CUdeviceptr srcDevice, CUcontext srcContext, size_t ByteCount, CUstream hStream) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuMemcpyPeerAsync
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuMemcpyPeerAsync(CUdeviceptr __pyx_v_dstDevice, CUcontext __pyx_v_dstContext, CUdeviceptr __pyx_v_srcDevice, CUcontext __pyx_v_srcContext, size_t __pyx_v_ByteCount, CUstream __pyx_v_hStream) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuMemcpyPeerAsync", 1);
  __Pyx_TraceCall("_cuMemcpyPeerAsync", __pyx_f[0], 3710, 1, __PYX_ERR(0, 3710, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":3712
 * cdef CUresult _cuMemcpyPeerAsync(CUdeviceptr dstDevice, CUcontext dstContext, CUdeviceptr srcDevice, CUcontext srcContext, size_t ByteCount, CUstream hStream) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuMemcpyPeerAsync
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuMemcpyPeerAsync == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 3712, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":3713
 *     global __cuMemcpyPeerAsync
 *     cuPythonInit()
 *     if __cuMemcpyPeerAsync == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuMemcpyPeerAsync" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuMemcpyPeerAsync == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":3714
 *     cuPythonInit()
 *     if __cuMemcpyPeerAsync == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuMemcpyPeerAsync" not found')
 *     err = (<CUresult (*)(CUdeviceptr, CUcontext, CUdeviceptr, CUcontext, size_t, CUstream) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemcpyPeerAsync)(dstDevice, dstContext, srcDevice, srcContext, ByteCount, hStream)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":3715
 *     if __cuMemcpyPeerAsync == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuMemcpyPeerAsync" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUdeviceptr, CUcontext, CUdeviceptr, CUcontext, size_t, CUstream) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemcpyPeerAsync)(dstDevice, dstContext, srcDevice, srcContext, ByteCount, hStream)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__122, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 3715, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 3715, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":3714
 *     cuPythonInit()
 *     if __cuMemcpyPeerAsync == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuMemcpyPeerAsync" not found')
 *     err = (<CUresult (*)(CUdeviceptr, CUcontext, CUdeviceptr, CUcontext, size_t, CUstream) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemcpyPeerAsync)(dstDevice, dstContext, srcDevice, srcContext, ByteCount, hStream)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":3713
 *     global __cuMemcpyPeerAsync
 *     cuPythonInit()
 *     if __cuMemcpyPeerAsync == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuMemcpyPeerAsync" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":3716
 *         with gil:
 *             raise RuntimeError('Function "cuMemcpyPeerAsync" not found')
 *     err = (<CUresult (*)(CUdeviceptr, CUcontext, CUdeviceptr, CUcontext, size_t, CUstream) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemcpyPeerAsync)(dstDevice, dstContext, srcDevice, srcContext, ByteCount, hStream)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUdeviceptr, CUcontext, CUdeviceptr, CUcontext, size_t, CUstream))__pyx_v_4cuda_5_cuda_5ccuda___cuMemcpyPeerAsync)(__pyx_v_dstDevice, __pyx_v_dstContext, __pyx_v_srcDevice, __pyx_v_srcContext, __pyx_v_ByteCount, __pyx_v_hStream); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 3716, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":3717
 *             raise RuntimeError('Function "cuMemcpyPeerAsync" not found')
 *     err = (<CUresult (*)(CUdeviceptr, CUcontext, CUdeviceptr, CUcontext, size_t, CUstream) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemcpyPeerAsync)(dstDevice, dstContext, srcDevice, srcContext, ByteCount, hStream)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuMemcpyHtoDAsync_v2(CUdeviceptr dstDevice, const void* srcHost, size_t ByteCount, CUstream hStream) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":3710
 *     return err
 * 
 * cdef CUresult _cuMemcpyPeerAsync(CUdeviceptr dstDevice, CUcontext dstContext, CUdeviceptr srcDevice, CUcontext srcContext, size_t ByteCount, CUstream hStream) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuMemcpyPeerAsync
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuMemcpyPeerAsync", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":3719
 *     return err
 * 
 * cdef CUresult _cuMemcpyHtoDAsync_v2(CUdeviceptr dstDevice, const void* srcHost, size_t ByteCount, CUstream hStream) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuMemcpyHtoDAsync_v2
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuMemcpyHtoDAsync_v2(CUdeviceptr __pyx_v_dstDevice, void const *__pyx_v_srcHost, size_t __pyx_v_ByteCount, CUstream __pyx_v_hStream) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuMemcpyHtoDAsync_v2", 1);
  __Pyx_TraceCall("_cuMemcpyHtoDAsync_v2", __pyx_f[0], 3719, 1, __PYX_ERR(0, 3719, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":3721
 * cdef CUresult _cuMemcpyHtoDAsync_v2(CUdeviceptr dstDevice, const void* srcHost, size_t ByteCount, CUstream hStream) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuMemcpyHtoDAsync_v2
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuMemcpyHtoDAsync_v2 == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 3721, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":3722
 *     global __cuMemcpyHtoDAsync_v2
 *     cuPythonInit()
 *     if __cuMemcpyHtoDAsync_v2 == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuMemcpyHtoDAsync_v2" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuMemcpyHtoDAsync_v2 == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":3723
 *     cuPythonInit()
 *     if __cuMemcpyHtoDAsync_v2 == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuMemcpyHtoDAsync_v2" not found')
 *     err = (<CUresult (*)(CUdeviceptr, const void*, size_t, CUstream) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemcpyHtoDAsync_v2)(dstDevice, srcHost, ByteCount, hStream)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":3724
 *     if __cuMemcpyHtoDAsync_v2 == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuMemcpyHtoDAsync_v2" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUdeviceptr, const void*, size_t, CUstream) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemcpyHtoDAsync_v2)(dstDevice, srcHost, ByteCount, hStream)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__123, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 3724, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 3724, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":3723
 *     cuPythonInit()
 *     if __cuMemcpyHtoDAsync_v2 == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuMemcpyHtoDAsync_v2" not found')
 *     err = (<CUresult (*)(CUdeviceptr, const void*, size_t, CUstream) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemcpyHtoDAsync_v2)(dstDevice, srcHost, ByteCount, hStream)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":3722
 *     global __cuMemcpyHtoDAsync_v2
 *     cuPythonInit()
 *     if __cuMemcpyHtoDAsync_v2 == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuMemcpyHtoDAsync_v2" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":3725
 *         with gil:
 *             raise RuntimeError('Function "cuMemcpyHtoDAsync_v2" not found')
 *     err = (<CUresult (*)(CUdeviceptr, const void*, size_t, CUstream) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemcpyHtoDAsync_v2)(dstDevice, srcHost, ByteCount, hStream)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUdeviceptr, void const *, size_t, CUstream))__pyx_v_4cuda_5_cuda_5ccuda___cuMemcpyHtoDAsync_v2)(__pyx_v_dstDevice, __pyx_v_srcHost, __pyx_v_ByteCount, __pyx_v_hStream); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 3725, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":3726
 *             raise RuntimeError('Function "cuMemcpyHtoDAsync_v2" not found')
 *     err = (<CUresult (*)(CUdeviceptr, const void*, size_t, CUstream) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemcpyHtoDAsync_v2)(dstDevice, srcHost, ByteCount, hStream)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuMemcpyDtoHAsync_v2(void* dstHost, CUdeviceptr srcDevice, size_t ByteCount, CUstream hStream) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":3719
 *     return err
 * 
 * cdef CUresult _cuMemcpyHtoDAsync_v2(CUdeviceptr dstDevice, const void* srcHost, size_t ByteCount, CUstream hStream) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuMemcpyHtoDAsync_v2
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuMemcpyHtoDAsync_v2", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":3728
 *     return err
 * 
 * cdef CUresult _cuMemcpyDtoHAsync_v2(void* dstHost, CUdeviceptr srcDevice, size_t ByteCount, CUstream hStream) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuMemcpyDtoHAsync_v2
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuMemcpyDtoHAsync_v2(void *__pyx_v_dstHost, CUdeviceptr __pyx_v_srcDevice, size_t __pyx_v_ByteCount, CUstream __pyx_v_hStream) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuMemcpyDtoHAsync_v2", 1);
  __Pyx_TraceCall("_cuMemcpyDtoHAsync_v2", __pyx_f[0], 3728, 1, __PYX_ERR(0, 3728, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":3730
 * cdef CUresult _cuMemcpyDtoHAsync_v2(void* dstHost, CUdeviceptr srcDevice, size_t ByteCount, CUstream hStream) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuMemcpyDtoHAsync_v2
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuMemcpyDtoHAsync_v2 == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 3730, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":3731
 *     global __cuMemcpyDtoHAsync_v2
 *     cuPythonInit()
 *     if __cuMemcpyDtoHAsync_v2 == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuMemcpyDtoHAsync_v2" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuMemcpyDtoHAsync_v2 == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":3732
 *     cuPythonInit()
 *     if __cuMemcpyDtoHAsync_v2 == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuMemcpyDtoHAsync_v2" not found')
 *     err = (<CUresult (*)(void*, CUdeviceptr, size_t, CUstream) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemcpyDtoHAsync_v2)(dstHost, srcDevice, ByteCount, hStream)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":3733
 *     if __cuMemcpyDtoHAsync_v2 == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuMemcpyDtoHAsync_v2" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(void*, CUdeviceptr, size_t, CUstream) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemcpyDtoHAsync_v2)(dstHost, srcDevice, ByteCount, hStream)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__124, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 3733, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 3733, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":3732
 *     cuPythonInit()
 *     if __cuMemcpyDtoHAsync_v2 == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuMemcpyDtoHAsync_v2" not found')
 *     err = (<CUresult (*)(void*, CUdeviceptr, size_t, CUstream) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemcpyDtoHAsync_v2)(dstHost, srcDevice, ByteCount, hStream)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":3731
 *     global __cuMemcpyDtoHAsync_v2
 *     cuPythonInit()
 *     if __cuMemcpyDtoHAsync_v2 == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuMemcpyDtoHAsync_v2" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":3734
 *         with gil:
 *             raise RuntimeError('Function "cuMemcpyDtoHAsync_v2" not found')
 *     err = (<CUresult (*)(void*, CUdeviceptr, size_t, CUstream) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemcpyDtoHAsync_v2)(dstHost, srcDevice, ByteCount, hStream)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(void *, CUdeviceptr, size_t, CUstream))__pyx_v_4cuda_5_cuda_5ccuda___cuMemcpyDtoHAsync_v2)(__pyx_v_dstHost, __pyx_v_srcDevice, __pyx_v_ByteCount, __pyx_v_hStream); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 3734, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":3735
 *             raise RuntimeError('Function "cuMemcpyDtoHAsync_v2" not found')
 *     err = (<CUresult (*)(void*, CUdeviceptr, size_t, CUstream) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemcpyDtoHAsync_v2)(dstHost, srcDevice, ByteCount, hStream)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuMemcpyDtoDAsync_v2(CUdeviceptr dstDevice, CUdeviceptr srcDevice, size_t ByteCount, CUstream hStream) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":3728
 *     return err
 * 
 * cdef CUresult _cuMemcpyDtoHAsync_v2(void* dstHost, CUdeviceptr srcDevice, size_t ByteCount, CUstream hStream) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuMemcpyDtoHAsync_v2
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuMemcpyDtoHAsync_v2", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":3737
 *     return err
 * 
 * cdef CUresult _cuMemcpyDtoDAsync_v2(CUdeviceptr dstDevice, CUdeviceptr srcDevice, size_t ByteCount, CUstream hStream) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuMemcpyDtoDAsync_v2
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuMemcpyDtoDAsync_v2(CUdeviceptr __pyx_v_dstDevice, CUdeviceptr __pyx_v_srcDevice, size_t __pyx_v_ByteCount, CUstream __pyx_v_hStream) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuMemcpyDtoDAsync_v2", 1);
  __Pyx_TraceCall("_cuMemcpyDtoDAsync_v2", __pyx_f[0], 3737, 1, __PYX_ERR(0, 3737, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":3739
 * cdef CUresult _cuMemcpyDtoDAsync_v2(CUdeviceptr dstDevice, CUdeviceptr srcDevice, size_t ByteCount, CUstream hStream) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuMemcpyDtoDAsync_v2
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuMemcpyDtoDAsync_v2 == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 3739, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":3740
 *     global __cuMemcpyDtoDAsync_v2
 *     cuPythonInit()
 *     if __cuMemcpyDtoDAsync_v2 == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuMemcpyDtoDAsync_v2" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuMemcpyDtoDAsync_v2 == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":3741
 *     cuPythonInit()
 *     if __cuMemcpyDtoDAsync_v2 == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuMemcpyDtoDAsync_v2" not found')
 *     err = (<CUresult (*)(CUdeviceptr, CUdeviceptr, size_t, CUstream) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemcpyDtoDAsync_v2)(dstDevice, srcDevice, ByteCount, hStream)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":3742
 *     if __cuMemcpyDtoDAsync_v2 == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuMemcpyDtoDAsync_v2" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUdeviceptr, CUdeviceptr, size_t, CUstream) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemcpyDtoDAsync_v2)(dstDevice, srcDevice, ByteCount, hStream)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__125, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 3742, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 3742, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":3741
 *     cuPythonInit()
 *     if __cuMemcpyDtoDAsync_v2 == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuMemcpyDtoDAsync_v2" not found')
 *     err = (<CUresult (*)(CUdeviceptr, CUdeviceptr, size_t, CUstream) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemcpyDtoDAsync_v2)(dstDevice, srcDevice, ByteCount, hStream)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":3740
 *     global __cuMemcpyDtoDAsync_v2
 *     cuPythonInit()
 *     if __cuMemcpyDtoDAsync_v2 == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuMemcpyDtoDAsync_v2" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":3743
 *         with gil:
 *             raise RuntimeError('Function "cuMemcpyDtoDAsync_v2" not found')
 *     err = (<CUresult (*)(CUdeviceptr, CUdeviceptr, size_t, CUstream) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemcpyDtoDAsync_v2)(dstDevice, srcDevice, ByteCount, hStream)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUdeviceptr, CUdeviceptr, size_t, CUstream))__pyx_v_4cuda_5_cuda_5ccuda___cuMemcpyDtoDAsync_v2)(__pyx_v_dstDevice, __pyx_v_srcDevice, __pyx_v_ByteCount, __pyx_v_hStream); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 3743, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":3744
 *             raise RuntimeError('Function "cuMemcpyDtoDAsync_v2" not found')
 *     err = (<CUresult (*)(CUdeviceptr, CUdeviceptr, size_t, CUstream) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemcpyDtoDAsync_v2)(dstDevice, srcDevice, ByteCount, hStream)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuMemcpyHtoAAsync_v2(CUarray dstArray, size_t dstOffset, const void* srcHost, size_t ByteCount, CUstream hStream) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":3737
 *     return err
 * 
 * cdef CUresult _cuMemcpyDtoDAsync_v2(CUdeviceptr dstDevice, CUdeviceptr srcDevice, size_t ByteCount, CUstream hStream) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuMemcpyDtoDAsync_v2
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuMemcpyDtoDAsync_v2", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":3746
 *     return err
 * 
 * cdef CUresult _cuMemcpyHtoAAsync_v2(CUarray dstArray, size_t dstOffset, const void* srcHost, size_t ByteCount, CUstream hStream) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuMemcpyHtoAAsync_v2
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuMemcpyHtoAAsync_v2(CUarray __pyx_v_dstArray, size_t __pyx_v_dstOffset, void const *__pyx_v_srcHost, size_t __pyx_v_ByteCount, CUstream __pyx_v_hStream) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuMemcpyHtoAAsync_v2", 1);
  __Pyx_TraceCall("_cuMemcpyHtoAAsync_v2", __pyx_f[0], 3746, 1, __PYX_ERR(0, 3746, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":3748
 * cdef CUresult _cuMemcpyHtoAAsync_v2(CUarray dstArray, size_t dstOffset, const void* srcHost, size_t ByteCount, CUstream hStream) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuMemcpyHtoAAsync_v2
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuMemcpyHtoAAsync_v2 == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 3748, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":3749
 *     global __cuMemcpyHtoAAsync_v2
 *     cuPythonInit()
 *     if __cuMemcpyHtoAAsync_v2 == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuMemcpyHtoAAsync_v2" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuMemcpyHtoAAsync_v2 == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":3750
 *     cuPythonInit()
 *     if __cuMemcpyHtoAAsync_v2 == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuMemcpyHtoAAsync_v2" not found')
 *     err = (<CUresult (*)(CUarray, size_t, const void*, size_t, CUstream) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemcpyHtoAAsync_v2)(dstArray, dstOffset, srcHost, ByteCount, hStream)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":3751
 *     if __cuMemcpyHtoAAsync_v2 == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuMemcpyHtoAAsync_v2" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUarray, size_t, const void*, size_t, CUstream) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemcpyHtoAAsync_v2)(dstArray, dstOffset, srcHost, ByteCount, hStream)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__126, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 3751, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 3751, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":3750
 *     cuPythonInit()
 *     if __cuMemcpyHtoAAsync_v2 == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuMemcpyHtoAAsync_v2" not found')
 *     err = (<CUresult (*)(CUarray, size_t, const void*, size_t, CUstream) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemcpyHtoAAsync_v2)(dstArray, dstOffset, srcHost, ByteCount, hStream)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":3749
 *     global __cuMemcpyHtoAAsync_v2
 *     cuPythonInit()
 *     if __cuMemcpyHtoAAsync_v2 == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuMemcpyHtoAAsync_v2" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":3752
 *         with gil:
 *             raise RuntimeError('Function "cuMemcpyHtoAAsync_v2" not found')
 *     err = (<CUresult (*)(CUarray, size_t, const void*, size_t, CUstream) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemcpyHtoAAsync_v2)(dstArray, dstOffset, srcHost, ByteCount, hStream)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUarray, size_t, void const *, size_t, CUstream))__pyx_v_4cuda_5_cuda_5ccuda___cuMemcpyHtoAAsync_v2)(__pyx_v_dstArray, __pyx_v_dstOffset, __pyx_v_srcHost, __pyx_v_ByteCount, __pyx_v_hStream); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 3752, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":3753
 *             raise RuntimeError('Function "cuMemcpyHtoAAsync_v2" not found')
 *     err = (<CUresult (*)(CUarray, size_t, const void*, size_t, CUstream) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemcpyHtoAAsync_v2)(dstArray, dstOffset, srcHost, ByteCount, hStream)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuMemcpyAtoHAsync_v2(void* dstHost, CUarray srcArray, size_t srcOffset, size_t ByteCount, CUstream hStream) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":3746
 *     return err
 * 
 * cdef CUresult _cuMemcpyHtoAAsync_v2(CUarray dstArray, size_t dstOffset, const void* srcHost, size_t ByteCount, CUstream hStream) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuMemcpyHtoAAsync_v2
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuMemcpyHtoAAsync_v2", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":3755
 *     return err
 * 
 * cdef CUresult _cuMemcpyAtoHAsync_v2(void* dstHost, CUarray srcArray, size_t srcOffset, size_t ByteCount, CUstream hStream) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuMemcpyAtoHAsync_v2
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuMemcpyAtoHAsync_v2(void *__pyx_v_dstHost, CUarray __pyx_v_srcArray, size_t __pyx_v_srcOffset, size_t __pyx_v_ByteCount, CUstream __pyx_v_hStream) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuMemcpyAtoHAsync_v2", 1);
  __Pyx_TraceCall("_cuMemcpyAtoHAsync_v2", __pyx_f[0], 3755, 1, __PYX_ERR(0, 3755, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":3757
 * cdef CUresult _cuMemcpyAtoHAsync_v2(void* dstHost, CUarray srcArray, size_t srcOffset, size_t ByteCount, CUstream hStream) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuMemcpyAtoHAsync_v2
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuMemcpyAtoHAsync_v2 == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 3757, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":3758
 *     global __cuMemcpyAtoHAsync_v2
 *     cuPythonInit()
 *     if __cuMemcpyAtoHAsync_v2 == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuMemcpyAtoHAsync_v2" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuMemcpyAtoHAsync_v2 == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":3759
 *     cuPythonInit()
 *     if __cuMemcpyAtoHAsync_v2 == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuMemcpyAtoHAsync_v2" not found')
 *     err = (<CUresult (*)(void*, CUarray, size_t, size_t, CUstream) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemcpyAtoHAsync_v2)(dstHost, srcArray, srcOffset, ByteCount, hStream)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":3760
 *     if __cuMemcpyAtoHAsync_v2 == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuMemcpyAtoHAsync_v2" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(void*, CUarray, size_t, size_t, CUstream) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemcpyAtoHAsync_v2)(dstHost, srcArray, srcOffset, ByteCount, hStream)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__127, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 3760, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 3760, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":3759
 *     cuPythonInit()
 *     if __cuMemcpyAtoHAsync_v2 == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuMemcpyAtoHAsync_v2" not found')
 *     err = (<CUresult (*)(void*, CUarray, size_t, size_t, CUstream) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemcpyAtoHAsync_v2)(dstHost, srcArray, srcOffset, ByteCount, hStream)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":3758
 *     global __cuMemcpyAtoHAsync_v2
 *     cuPythonInit()
 *     if __cuMemcpyAtoHAsync_v2 == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuMemcpyAtoHAsync_v2" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":3761
 *         with gil:
 *             raise RuntimeError('Function "cuMemcpyAtoHAsync_v2" not found')
 *     err = (<CUresult (*)(void*, CUarray, size_t, size_t, CUstream) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemcpyAtoHAsync_v2)(dstHost, srcArray, srcOffset, ByteCount, hStream)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(void *, CUarray, size_t, size_t, CUstream))__pyx_v_4cuda_5_cuda_5ccuda___cuMemcpyAtoHAsync_v2)(__pyx_v_dstHost, __pyx_v_srcArray, __pyx_v_srcOffset, __pyx_v_ByteCount, __pyx_v_hStream); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 3761, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":3762
 *             raise RuntimeError('Function "cuMemcpyAtoHAsync_v2" not found')
 *     err = (<CUresult (*)(void*, CUarray, size_t, size_t, CUstream) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemcpyAtoHAsync_v2)(dstHost, srcArray, srcOffset, ByteCount, hStream)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuMemcpy2DAsync_v2(const CUDA_MEMCPY2D* pCopy, CUstream hStream) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":3755
 *     return err
 * 
 * cdef CUresult _cuMemcpyAtoHAsync_v2(void* dstHost, CUarray srcArray, size_t srcOffset, size_t ByteCount, CUstream hStream) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuMemcpyAtoHAsync_v2
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuMemcpyAtoHAsync_v2", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":3764
 *     return err
 * 
 * cdef CUresult _cuMemcpy2DAsync_v2(const CUDA_MEMCPY2D* pCopy, CUstream hStream) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuMemcpy2DAsync_v2
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuMemcpy2DAsync_v2(CUDA_MEMCPY2D const *__pyx_v_pCopy, CUstream __pyx_v_hStream) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuMemcpy2DAsync_v2", 1);
  __Pyx_TraceCall("_cuMemcpy2DAsync_v2", __pyx_f[0], 3764, 1, __PYX_ERR(0, 3764, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":3766
 * cdef CUresult _cuMemcpy2DAsync_v2(const CUDA_MEMCPY2D* pCopy, CUstream hStream) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuMemcpy2DAsync_v2
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuMemcpy2DAsync_v2 == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 3766, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":3767
 *     global __cuMemcpy2DAsync_v2
 *     cuPythonInit()
 *     if __cuMemcpy2DAsync_v2 == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuMemcpy2DAsync_v2" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuMemcpy2DAsync_v2 == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":3768
 *     cuPythonInit()
 *     if __cuMemcpy2DAsync_v2 == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuMemcpy2DAsync_v2" not found')
 *     err = (<CUresult (*)(const CUDA_MEMCPY2D*, CUstream) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemcpy2DAsync_v2)(pCopy, hStream)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":3769
 *     if __cuMemcpy2DAsync_v2 == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuMemcpy2DAsync_v2" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(const CUDA_MEMCPY2D*, CUstream) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemcpy2DAsync_v2)(pCopy, hStream)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__128, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 3769, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 3769, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":3768
 *     cuPythonInit()
 *     if __cuMemcpy2DAsync_v2 == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuMemcpy2DAsync_v2" not found')
 *     err = (<CUresult (*)(const CUDA_MEMCPY2D*, CUstream) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemcpy2DAsync_v2)(pCopy, hStream)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":3767
 *     global __cuMemcpy2DAsync_v2
 *     cuPythonInit()
 *     if __cuMemcpy2DAsync_v2 == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuMemcpy2DAsync_v2" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":3770
 *         with gil:
 *             raise RuntimeError('Function "cuMemcpy2DAsync_v2" not found')
 *     err = (<CUresult (*)(const CUDA_MEMCPY2D*, CUstream) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemcpy2DAsync_v2)(pCopy, hStream)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUDA_MEMCPY2D const *, CUstream))__pyx_v_4cuda_5_cuda_5ccuda___cuMemcpy2DAsync_v2)(__pyx_v_pCopy, __pyx_v_hStream); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 3770, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":3771
 *             raise RuntimeError('Function "cuMemcpy2DAsync_v2" not found')
 *     err = (<CUresult (*)(const CUDA_MEMCPY2D*, CUstream) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemcpy2DAsync_v2)(pCopy, hStream)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuMemcpy3DAsync_v2(const CUDA_MEMCPY3D* pCopy, CUstream hStream) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":3764
 *     return err
 * 
 * cdef CUresult _cuMemcpy2DAsync_v2(const CUDA_MEMCPY2D* pCopy, CUstream hStream) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuMemcpy2DAsync_v2
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuMemcpy2DAsync_v2", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":3773
 *     return err
 * 
 * cdef CUresult _cuMemcpy3DAsync_v2(const CUDA_MEMCPY3D* pCopy, CUstream hStream) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuMemcpy3DAsync_v2
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuMemcpy3DAsync_v2(CUDA_MEMCPY3D const *__pyx_v_pCopy, CUstream __pyx_v_hStream) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuMemcpy3DAsync_v2", 1);
  __Pyx_TraceCall("_cuMemcpy3DAsync_v2", __pyx_f[0], 3773, 1, __PYX_ERR(0, 3773, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":3775
 * cdef CUresult _cuMemcpy3DAsync_v2(const CUDA_MEMCPY3D* pCopy, CUstream hStream) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuMemcpy3DAsync_v2
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuMemcpy3DAsync_v2 == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 3775, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":3776
 *     global __cuMemcpy3DAsync_v2
 *     cuPythonInit()
 *     if __cuMemcpy3DAsync_v2 == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuMemcpy3DAsync_v2" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuMemcpy3DAsync_v2 == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":3777
 *     cuPythonInit()
 *     if __cuMemcpy3DAsync_v2 == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuMemcpy3DAsync_v2" not found')
 *     err = (<CUresult (*)(const CUDA_MEMCPY3D*, CUstream) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemcpy3DAsync_v2)(pCopy, hStream)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":3778
 *     if __cuMemcpy3DAsync_v2 == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuMemcpy3DAsync_v2" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(const CUDA_MEMCPY3D*, CUstream) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemcpy3DAsync_v2)(pCopy, hStream)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__129, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 3778, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 3778, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":3777
 *     cuPythonInit()
 *     if __cuMemcpy3DAsync_v2 == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuMemcpy3DAsync_v2" not found')
 *     err = (<CUresult (*)(const CUDA_MEMCPY3D*, CUstream) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemcpy3DAsync_v2)(pCopy, hStream)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":3776
 *     global __cuMemcpy3DAsync_v2
 *     cuPythonInit()
 *     if __cuMemcpy3DAsync_v2 == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuMemcpy3DAsync_v2" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":3779
 *         with gil:
 *             raise RuntimeError('Function "cuMemcpy3DAsync_v2" not found')
 *     err = (<CUresult (*)(const CUDA_MEMCPY3D*, CUstream) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemcpy3DAsync_v2)(pCopy, hStream)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUDA_MEMCPY3D const *, CUstream))__pyx_v_4cuda_5_cuda_5ccuda___cuMemcpy3DAsync_v2)(__pyx_v_pCopy, __pyx_v_hStream); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 3779, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":3780
 *             raise RuntimeError('Function "cuMemcpy3DAsync_v2" not found')
 *     err = (<CUresult (*)(const CUDA_MEMCPY3D*, CUstream) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemcpy3DAsync_v2)(pCopy, hStream)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuMemcpy3DPeerAsync(const CUDA_MEMCPY3D_PEER* pCopy, CUstream hStream) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":3773
 *     return err
 * 
 * cdef CUresult _cuMemcpy3DAsync_v2(const CUDA_MEMCPY3D* pCopy, CUstream hStream) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuMemcpy3DAsync_v2
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuMemcpy3DAsync_v2", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":3782
 *     return err
 * 
 * cdef CUresult _cuMemcpy3DPeerAsync(const CUDA_MEMCPY3D_PEER* pCopy, CUstream hStream) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuMemcpy3DPeerAsync
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuMemcpy3DPeerAsync(CUDA_MEMCPY3D_PEER const *__pyx_v_pCopy, CUstream __pyx_v_hStream) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuMemcpy3DPeerAsync", 1);
  __Pyx_TraceCall("_cuMemcpy3DPeerAsync", __pyx_f[0], 3782, 1, __PYX_ERR(0, 3782, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":3784
 * cdef CUresult _cuMemcpy3DPeerAsync(const CUDA_MEMCPY3D_PEER* pCopy, CUstream hStream) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuMemcpy3DPeerAsync
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuMemcpy3DPeerAsync == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 3784, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":3785
 *     global __cuMemcpy3DPeerAsync
 *     cuPythonInit()
 *     if __cuMemcpy3DPeerAsync == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuMemcpy3DPeerAsync" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuMemcpy3DPeerAsync == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":3786
 *     cuPythonInit()
 *     if __cuMemcpy3DPeerAsync == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuMemcpy3DPeerAsync" not found')
 *     err = (<CUresult (*)(const CUDA_MEMCPY3D_PEER*, CUstream) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemcpy3DPeerAsync)(pCopy, hStream)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":3787
 *     if __cuMemcpy3DPeerAsync == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuMemcpy3DPeerAsync" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(const CUDA_MEMCPY3D_PEER*, CUstream) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemcpy3DPeerAsync)(pCopy, hStream)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__130, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 3787, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 3787, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":3786
 *     cuPythonInit()
 *     if __cuMemcpy3DPeerAsync == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuMemcpy3DPeerAsync" not found')
 *     err = (<CUresult (*)(const CUDA_MEMCPY3D_PEER*, CUstream) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemcpy3DPeerAsync)(pCopy, hStream)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":3785
 *     global __cuMemcpy3DPeerAsync
 *     cuPythonInit()
 *     if __cuMemcpy3DPeerAsync == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuMemcpy3DPeerAsync" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":3788
 *         with gil:
 *             raise RuntimeError('Function "cuMemcpy3DPeerAsync" not found')
 *     err = (<CUresult (*)(const CUDA_MEMCPY3D_PEER*, CUstream) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemcpy3DPeerAsync)(pCopy, hStream)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUDA_MEMCPY3D_PEER const *, CUstream))__pyx_v_4cuda_5_cuda_5ccuda___cuMemcpy3DPeerAsync)(__pyx_v_pCopy, __pyx_v_hStream); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 3788, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":3789
 *             raise RuntimeError('Function "cuMemcpy3DPeerAsync" not found')
 *     err = (<CUresult (*)(const CUDA_MEMCPY3D_PEER*, CUstream) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemcpy3DPeerAsync)(pCopy, hStream)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuMemsetD8_v2(CUdeviceptr dstDevice, unsigned char uc, size_t N) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":3782
 *     return err
 * 
 * cdef CUresult _cuMemcpy3DPeerAsync(const CUDA_MEMCPY3D_PEER* pCopy, CUstream hStream) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuMemcpy3DPeerAsync
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuMemcpy3DPeerAsync", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":3791
 *     return err
 * 
 * cdef CUresult _cuMemsetD8_v2(CUdeviceptr dstDevice, unsigned char uc, size_t N) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuMemsetD8_v2
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuMemsetD8_v2(CUdeviceptr __pyx_v_dstDevice, unsigned char __pyx_v_uc, size_t __pyx_v_N) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuMemsetD8_v2", 1);
  __Pyx_TraceCall("_cuMemsetD8_v2", __pyx_f[0], 3791, 1, __PYX_ERR(0, 3791, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":3793
 * cdef CUresult _cuMemsetD8_v2(CUdeviceptr dstDevice, unsigned char uc, size_t N) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuMemsetD8_v2
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuMemsetD8_v2 == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 3793, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":3794
 *     global __cuMemsetD8_v2
 *     cuPythonInit()
 *     if __cuMemsetD8_v2 == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuMemsetD8_v2" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuMemsetD8_v2 == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":3795
 *     cuPythonInit()
 *     if __cuMemsetD8_v2 == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuMemsetD8_v2" not found')
 *     err = (<CUresult (*)(CUdeviceptr, unsigned char, size_t) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemsetD8_v2)(dstDevice, uc, N)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":3796
 *     if __cuMemsetD8_v2 == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuMemsetD8_v2" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUdeviceptr, unsigned char, size_t) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemsetD8_v2)(dstDevice, uc, N)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__131, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 3796, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 3796, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":3795
 *     cuPythonInit()
 *     if __cuMemsetD8_v2 == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuMemsetD8_v2" not found')
 *     err = (<CUresult (*)(CUdeviceptr, unsigned char, size_t) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemsetD8_v2)(dstDevice, uc, N)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":3794
 *     global __cuMemsetD8_v2
 *     cuPythonInit()
 *     if __cuMemsetD8_v2 == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuMemsetD8_v2" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":3797
 *         with gil:
 *             raise RuntimeError('Function "cuMemsetD8_v2" not found')
 *     err = (<CUresult (*)(CUdeviceptr, unsigned char, size_t) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemsetD8_v2)(dstDevice, uc, N)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUdeviceptr, unsigned char, size_t))__pyx_v_4cuda_5_cuda_5ccuda___cuMemsetD8_v2)(__pyx_v_dstDevice, __pyx_v_uc, __pyx_v_N); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 3797, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":3798
 *             raise RuntimeError('Function "cuMemsetD8_v2" not found')
 *     err = (<CUresult (*)(CUdeviceptr, unsigned char, size_t) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemsetD8_v2)(dstDevice, uc, N)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuMemsetD16_v2(CUdeviceptr dstDevice, unsigned short us, size_t N) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":3791
 *     return err
 * 
 * cdef CUresult _cuMemsetD8_v2(CUdeviceptr dstDevice, unsigned char uc, size_t N) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuMemsetD8_v2
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuMemsetD8_v2", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":3800
 *     return err
 * 
 * cdef CUresult _cuMemsetD16_v2(CUdeviceptr dstDevice, unsigned short us, size_t N) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuMemsetD16_v2
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuMemsetD16_v2(CUdeviceptr __pyx_v_dstDevice, unsigned short __pyx_v_us, size_t __pyx_v_N) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuMemsetD16_v2", 1);
  __Pyx_TraceCall("_cuMemsetD16_v2", __pyx_f[0], 3800, 1, __PYX_ERR(0, 3800, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":3802
 * cdef CUresult _cuMemsetD16_v2(CUdeviceptr dstDevice, unsigned short us, size_t N) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuMemsetD16_v2
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuMemsetD16_v2 == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 3802, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":3803
 *     global __cuMemsetD16_v2
 *     cuPythonInit()
 *     if __cuMemsetD16_v2 == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuMemsetD16_v2" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuMemsetD16_v2 == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":3804
 *     cuPythonInit()
 *     if __cuMemsetD16_v2 == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuMemsetD16_v2" not found')
 *     err = (<CUresult (*)(CUdeviceptr, unsigned short, size_t) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemsetD16_v2)(dstDevice, us, N)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":3805
 *     if __cuMemsetD16_v2 == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuMemsetD16_v2" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUdeviceptr, unsigned short, size_t) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemsetD16_v2)(dstDevice, us, N)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__132, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 3805, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 3805, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":3804
 *     cuPythonInit()
 *     if __cuMemsetD16_v2 == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuMemsetD16_v2" not found')
 *     err = (<CUresult (*)(CUdeviceptr, unsigned short, size_t) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemsetD16_v2)(dstDevice, us, N)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":3803
 *     global __cuMemsetD16_v2
 *     cuPythonInit()
 *     if __cuMemsetD16_v2 == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuMemsetD16_v2" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":3806
 *         with gil:
 *             raise RuntimeError('Function "cuMemsetD16_v2" not found')
 *     err = (<CUresult (*)(CUdeviceptr, unsigned short, size_t) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemsetD16_v2)(dstDevice, us, N)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUdeviceptr, unsigned short, size_t))__pyx_v_4cuda_5_cuda_5ccuda___cuMemsetD16_v2)(__pyx_v_dstDevice, __pyx_v_us, __pyx_v_N); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 3806, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":3807
 *             raise RuntimeError('Function "cuMemsetD16_v2" not found')
 *     err = (<CUresult (*)(CUdeviceptr, unsigned short, size_t) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemsetD16_v2)(dstDevice, us, N)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuMemsetD32_v2(CUdeviceptr dstDevice, unsigned int ui, size_t N) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":3800
 *     return err
 * 
 * cdef CUresult _cuMemsetD16_v2(CUdeviceptr dstDevice, unsigned short us, size_t N) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuMemsetD16_v2
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuMemsetD16_v2", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":3809
 *     return err
 * 
 * cdef CUresult _cuMemsetD32_v2(CUdeviceptr dstDevice, unsigned int ui, size_t N) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuMemsetD32_v2
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuMemsetD32_v2(CUdeviceptr __pyx_v_dstDevice, unsigned int __pyx_v_ui, size_t __pyx_v_N) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuMemsetD32_v2", 1);
  __Pyx_TraceCall("_cuMemsetD32_v2", __pyx_f[0], 3809, 1, __PYX_ERR(0, 3809, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":3811
 * cdef CUresult _cuMemsetD32_v2(CUdeviceptr dstDevice, unsigned int ui, size_t N) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuMemsetD32_v2
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuMemsetD32_v2 == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 3811, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":3812
 *     global __cuMemsetD32_v2
 *     cuPythonInit()
 *     if __cuMemsetD32_v2 == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuMemsetD32_v2" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuMemsetD32_v2 == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":3813
 *     cuPythonInit()
 *     if __cuMemsetD32_v2 == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuMemsetD32_v2" not found')
 *     err = (<CUresult (*)(CUdeviceptr, unsigned int, size_t) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemsetD32_v2)(dstDevice, ui, N)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":3814
 *     if __cuMemsetD32_v2 == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuMemsetD32_v2" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUdeviceptr, unsigned int, size_t) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemsetD32_v2)(dstDevice, ui, N)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__133, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 3814, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 3814, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":3813
 *     cuPythonInit()
 *     if __cuMemsetD32_v2 == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuMemsetD32_v2" not found')
 *     err = (<CUresult (*)(CUdeviceptr, unsigned int, size_t) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemsetD32_v2)(dstDevice, ui, N)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":3812
 *     global __cuMemsetD32_v2
 *     cuPythonInit()
 *     if __cuMemsetD32_v2 == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuMemsetD32_v2" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":3815
 *         with gil:
 *             raise RuntimeError('Function "cuMemsetD32_v2" not found')
 *     err = (<CUresult (*)(CUdeviceptr, unsigned int, size_t) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemsetD32_v2)(dstDevice, ui, N)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUdeviceptr, unsigned int, size_t))__pyx_v_4cuda_5_cuda_5ccuda___cuMemsetD32_v2)(__pyx_v_dstDevice, __pyx_v_ui, __pyx_v_N); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 3815, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":3816
 *             raise RuntimeError('Function "cuMemsetD32_v2" not found')
 *     err = (<CUresult (*)(CUdeviceptr, unsigned int, size_t) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemsetD32_v2)(dstDevice, ui, N)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuMemsetD2D8_v2(CUdeviceptr dstDevice, size_t dstPitch, unsigned char uc, size_t Width, size_t Height) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":3809
 *     return err
 * 
 * cdef CUresult _cuMemsetD32_v2(CUdeviceptr dstDevice, unsigned int ui, size_t N) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuMemsetD32_v2
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuMemsetD32_v2", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":3818
 *     return err
 * 
 * cdef CUresult _cuMemsetD2D8_v2(CUdeviceptr dstDevice, size_t dstPitch, unsigned char uc, size_t Width, size_t Height) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuMemsetD2D8_v2
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuMemsetD2D8_v2(CUdeviceptr __pyx_v_dstDevice, size_t __pyx_v_dstPitch, unsigned char __pyx_v_uc, size_t __pyx_v_Width, size_t __pyx_v_Height) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuMemsetD2D8_v2", 1);
  __Pyx_TraceCall("_cuMemsetD2D8_v2", __pyx_f[0], 3818, 1, __PYX_ERR(0, 3818, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":3820
 * cdef CUresult _cuMemsetD2D8_v2(CUdeviceptr dstDevice, size_t dstPitch, unsigned char uc, size_t Width, size_t Height) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuMemsetD2D8_v2
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuMemsetD2D8_v2 == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 3820, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":3821
 *     global __cuMemsetD2D8_v2
 *     cuPythonInit()
 *     if __cuMemsetD2D8_v2 == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuMemsetD2D8_v2" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuMemsetD2D8_v2 == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":3822
 *     cuPythonInit()
 *     if __cuMemsetD2D8_v2 == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuMemsetD2D8_v2" not found')
 *     err = (<CUresult (*)(CUdeviceptr, size_t, unsigned char, size_t, size_t) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemsetD2D8_v2)(dstDevice, dstPitch, uc, Width, Height)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":3823
 *     if __cuMemsetD2D8_v2 == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuMemsetD2D8_v2" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUdeviceptr, size_t, unsigned char, size_t, size_t) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemsetD2D8_v2)(dstDevice, dstPitch, uc, Width, Height)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__134, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 3823, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 3823, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":3822
 *     cuPythonInit()
 *     if __cuMemsetD2D8_v2 == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuMemsetD2D8_v2" not found')
 *     err = (<CUresult (*)(CUdeviceptr, size_t, unsigned char, size_t, size_t) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemsetD2D8_v2)(dstDevice, dstPitch, uc, Width, Height)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":3821
 *     global __cuMemsetD2D8_v2
 *     cuPythonInit()
 *     if __cuMemsetD2D8_v2 == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuMemsetD2D8_v2" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":3824
 *         with gil:
 *             raise RuntimeError('Function "cuMemsetD2D8_v2" not found')
 *     err = (<CUresult (*)(CUdeviceptr, size_t, unsigned char, size_t, size_t) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemsetD2D8_v2)(dstDevice, dstPitch, uc, Width, Height)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUdeviceptr, size_t, unsigned char, size_t, size_t))__pyx_v_4cuda_5_cuda_5ccuda___cuMemsetD2D8_v2)(__pyx_v_dstDevice, __pyx_v_dstPitch, __pyx_v_uc, __pyx_v_Width, __pyx_v_Height); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 3824, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":3825
 *             raise RuntimeError('Function "cuMemsetD2D8_v2" not found')
 *     err = (<CUresult (*)(CUdeviceptr, size_t, unsigned char, size_t, size_t) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemsetD2D8_v2)(dstDevice, dstPitch, uc, Width, Height)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuMemsetD2D16_v2(CUdeviceptr dstDevice, size_t dstPitch, unsigned short us, size_t Width, size_t Height) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":3818
 *     return err
 * 
 * cdef CUresult _cuMemsetD2D8_v2(CUdeviceptr dstDevice, size_t dstPitch, unsigned char uc, size_t Width, size_t Height) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuMemsetD2D8_v2
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuMemsetD2D8_v2", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":3827
 *     return err
 * 
 * cdef CUresult _cuMemsetD2D16_v2(CUdeviceptr dstDevice, size_t dstPitch, unsigned short us, size_t Width, size_t Height) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuMemsetD2D16_v2
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuMemsetD2D16_v2(CUdeviceptr __pyx_v_dstDevice, size_t __pyx_v_dstPitch, unsigned short __pyx_v_us, size_t __pyx_v_Width, size_t __pyx_v_Height) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuMemsetD2D16_v2", 1);
  __Pyx_TraceCall("_cuMemsetD2D16_v2", __pyx_f[0], 3827, 1, __PYX_ERR(0, 3827, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":3829
 * cdef CUresult _cuMemsetD2D16_v2(CUdeviceptr dstDevice, size_t dstPitch, unsigned short us, size_t Width, size_t Height) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuMemsetD2D16_v2
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuMemsetD2D16_v2 == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 3829, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":3830
 *     global __cuMemsetD2D16_v2
 *     cuPythonInit()
 *     if __cuMemsetD2D16_v2 == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuMemsetD2D16_v2" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuMemsetD2D16_v2 == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":3831
 *     cuPythonInit()
 *     if __cuMemsetD2D16_v2 == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuMemsetD2D16_v2" not found')
 *     err = (<CUresult (*)(CUdeviceptr, size_t, unsigned short, size_t, size_t) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemsetD2D16_v2)(dstDevice, dstPitch, us, Width, Height)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":3832
 *     if __cuMemsetD2D16_v2 == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuMemsetD2D16_v2" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUdeviceptr, size_t, unsigned short, size_t, size_t) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemsetD2D16_v2)(dstDevice, dstPitch, us, Width, Height)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__135, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 3832, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 3832, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":3831
 *     cuPythonInit()
 *     if __cuMemsetD2D16_v2 == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuMemsetD2D16_v2" not found')
 *     err = (<CUresult (*)(CUdeviceptr, size_t, unsigned short, size_t, size_t) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemsetD2D16_v2)(dstDevice, dstPitch, us, Width, Height)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":3830
 *     global __cuMemsetD2D16_v2
 *     cuPythonInit()
 *     if __cuMemsetD2D16_v2 == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuMemsetD2D16_v2" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":3833
 *         with gil:
 *             raise RuntimeError('Function "cuMemsetD2D16_v2" not found')
 *     err = (<CUresult (*)(CUdeviceptr, size_t, unsigned short, size_t, size_t) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemsetD2D16_v2)(dstDevice, dstPitch, us, Width, Height)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUdeviceptr, size_t, unsigned short, size_t, size_t))__pyx_v_4cuda_5_cuda_5ccuda___cuMemsetD2D16_v2)(__pyx_v_dstDevice, __pyx_v_dstPitch, __pyx_v_us, __pyx_v_Width, __pyx_v_Height); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 3833, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":3834
 *             raise RuntimeError('Function "cuMemsetD2D16_v2" not found')
 *     err = (<CUresult (*)(CUdeviceptr, size_t, unsigned short, size_t, size_t) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemsetD2D16_v2)(dstDevice, dstPitch, us, Width, Height)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuMemsetD2D32_v2(CUdeviceptr dstDevice, size_t dstPitch, unsigned int ui, size_t Width, size_t Height) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":3827
 *     return err
 * 
 * cdef CUresult _cuMemsetD2D16_v2(CUdeviceptr dstDevice, size_t dstPitch, unsigned short us, size_t Width, size_t Height) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuMemsetD2D16_v2
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuMemsetD2D16_v2", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":3836
 *     return err
 * 
 * cdef CUresult _cuMemsetD2D32_v2(CUdeviceptr dstDevice, size_t dstPitch, unsigned int ui, size_t Width, size_t Height) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuMemsetD2D32_v2
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuMemsetD2D32_v2(CUdeviceptr __pyx_v_dstDevice, size_t __pyx_v_dstPitch, unsigned int __pyx_v_ui, size_t __pyx_v_Width, size_t __pyx_v_Height) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuMemsetD2D32_v2", 1);
  __Pyx_TraceCall("_cuMemsetD2D32_v2", __pyx_f[0], 3836, 1, __PYX_ERR(0, 3836, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":3838
 * cdef CUresult _cuMemsetD2D32_v2(CUdeviceptr dstDevice, size_t dstPitch, unsigned int ui, size_t Width, size_t Height) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuMemsetD2D32_v2
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuMemsetD2D32_v2 == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 3838, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":3839
 *     global __cuMemsetD2D32_v2
 *     cuPythonInit()
 *     if __cuMemsetD2D32_v2 == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuMemsetD2D32_v2" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuMemsetD2D32_v2 == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":3840
 *     cuPythonInit()
 *     if __cuMemsetD2D32_v2 == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuMemsetD2D32_v2" not found')
 *     err = (<CUresult (*)(CUdeviceptr, size_t, unsigned int, size_t, size_t) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemsetD2D32_v2)(dstDevice, dstPitch, ui, Width, Height)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":3841
 *     if __cuMemsetD2D32_v2 == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuMemsetD2D32_v2" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUdeviceptr, size_t, unsigned int, size_t, size_t) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemsetD2D32_v2)(dstDevice, dstPitch, ui, Width, Height)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__136, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 3841, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 3841, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":3840
 *     cuPythonInit()
 *     if __cuMemsetD2D32_v2 == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuMemsetD2D32_v2" not found')
 *     err = (<CUresult (*)(CUdeviceptr, size_t, unsigned int, size_t, size_t) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemsetD2D32_v2)(dstDevice, dstPitch, ui, Width, Height)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":3839
 *     global __cuMemsetD2D32_v2
 *     cuPythonInit()
 *     if __cuMemsetD2D32_v2 == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuMemsetD2D32_v2" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":3842
 *         with gil:
 *             raise RuntimeError('Function "cuMemsetD2D32_v2" not found')
 *     err = (<CUresult (*)(CUdeviceptr, size_t, unsigned int, size_t, size_t) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemsetD2D32_v2)(dstDevice, dstPitch, ui, Width, Height)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUdeviceptr, size_t, unsigned int, size_t, size_t))__pyx_v_4cuda_5_cuda_5ccuda___cuMemsetD2D32_v2)(__pyx_v_dstDevice, __pyx_v_dstPitch, __pyx_v_ui, __pyx_v_Width, __pyx_v_Height); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 3842, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":3843
 *             raise RuntimeError('Function "cuMemsetD2D32_v2" not found')
 *     err = (<CUresult (*)(CUdeviceptr, size_t, unsigned int, size_t, size_t) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemsetD2D32_v2)(dstDevice, dstPitch, ui, Width, Height)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuMemsetD8Async(CUdeviceptr dstDevice, unsigned char uc, size_t N, CUstream hStream) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":3836
 *     return err
 * 
 * cdef CUresult _cuMemsetD2D32_v2(CUdeviceptr dstDevice, size_t dstPitch, unsigned int ui, size_t Width, size_t Height) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuMemsetD2D32_v2
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuMemsetD2D32_v2", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":3845
 *     return err
 * 
 * cdef CUresult _cuMemsetD8Async(CUdeviceptr dstDevice, unsigned char uc, size_t N, CUstream hStream) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuMemsetD8Async
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuMemsetD8Async(CUdeviceptr __pyx_v_dstDevice, unsigned char __pyx_v_uc, size_t __pyx_v_N, CUstream __pyx_v_hStream) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuMemsetD8Async", 1);
  __Pyx_TraceCall("_cuMemsetD8Async", __pyx_f[0], 3845, 1, __PYX_ERR(0, 3845, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":3847
 * cdef CUresult _cuMemsetD8Async(CUdeviceptr dstDevice, unsigned char uc, size_t N, CUstream hStream) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuMemsetD8Async
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuMemsetD8Async == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 3847, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":3848
 *     global __cuMemsetD8Async
 *     cuPythonInit()
 *     if __cuMemsetD8Async == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuMemsetD8Async" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuMemsetD8Async == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":3849
 *     cuPythonInit()
 *     if __cuMemsetD8Async == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuMemsetD8Async" not found')
 *     err = (<CUresult (*)(CUdeviceptr, unsigned char, size_t, CUstream) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemsetD8Async)(dstDevice, uc, N, hStream)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":3850
 *     if __cuMemsetD8Async == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuMemsetD8Async" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUdeviceptr, unsigned char, size_t, CUstream) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemsetD8Async)(dstDevice, uc, N, hStream)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__137, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 3850, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 3850, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":3849
 *     cuPythonInit()
 *     if __cuMemsetD8Async == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuMemsetD8Async" not found')
 *     err = (<CUresult (*)(CUdeviceptr, unsigned char, size_t, CUstream) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemsetD8Async)(dstDevice, uc, N, hStream)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":3848
 *     global __cuMemsetD8Async
 *     cuPythonInit()
 *     if __cuMemsetD8Async == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuMemsetD8Async" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":3851
 *         with gil:
 *             raise RuntimeError('Function "cuMemsetD8Async" not found')
 *     err = (<CUresult (*)(CUdeviceptr, unsigned char, size_t, CUstream) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemsetD8Async)(dstDevice, uc, N, hStream)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUdeviceptr, unsigned char, size_t, CUstream))__pyx_v_4cuda_5_cuda_5ccuda___cuMemsetD8Async)(__pyx_v_dstDevice, __pyx_v_uc, __pyx_v_N, __pyx_v_hStream); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 3851, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":3852
 *             raise RuntimeError('Function "cuMemsetD8Async" not found')
 *     err = (<CUresult (*)(CUdeviceptr, unsigned char, size_t, CUstream) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemsetD8Async)(dstDevice, uc, N, hStream)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuMemsetD16Async(CUdeviceptr dstDevice, unsigned short us, size_t N, CUstream hStream) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":3845
 *     return err
 * 
 * cdef CUresult _cuMemsetD8Async(CUdeviceptr dstDevice, unsigned char uc, size_t N, CUstream hStream) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuMemsetD8Async
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuMemsetD8Async", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":3854
 *     return err
 * 
 * cdef CUresult _cuMemsetD16Async(CUdeviceptr dstDevice, unsigned short us, size_t N, CUstream hStream) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuMemsetD16Async
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuMemsetD16Async(CUdeviceptr __pyx_v_dstDevice, unsigned short __pyx_v_us, size_t __pyx_v_N, CUstream __pyx_v_hStream) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuMemsetD16Async", 1);
  __Pyx_TraceCall("_cuMemsetD16Async", __pyx_f[0], 3854, 1, __PYX_ERR(0, 3854, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":3856
 * cdef CUresult _cuMemsetD16Async(CUdeviceptr dstDevice, unsigned short us, size_t N, CUstream hStream) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuMemsetD16Async
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuMemsetD16Async == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 3856, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":3857
 *     global __cuMemsetD16Async
 *     cuPythonInit()
 *     if __cuMemsetD16Async == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuMemsetD16Async" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuMemsetD16Async == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":3858
 *     cuPythonInit()
 *     if __cuMemsetD16Async == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuMemsetD16Async" not found')
 *     err = (<CUresult (*)(CUdeviceptr, unsigned short, size_t, CUstream) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemsetD16Async)(dstDevice, us, N, hStream)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":3859
 *     if __cuMemsetD16Async == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuMemsetD16Async" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUdeviceptr, unsigned short, size_t, CUstream) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemsetD16Async)(dstDevice, us, N, hStream)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__138, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 3859, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 3859, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":3858
 *     cuPythonInit()
 *     if __cuMemsetD16Async == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuMemsetD16Async" not found')
 *     err = (<CUresult (*)(CUdeviceptr, unsigned short, size_t, CUstream) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemsetD16Async)(dstDevice, us, N, hStream)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":3857
 *     global __cuMemsetD16Async
 *     cuPythonInit()
 *     if __cuMemsetD16Async == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuMemsetD16Async" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":3860
 *         with gil:
 *             raise RuntimeError('Function "cuMemsetD16Async" not found')
 *     err = (<CUresult (*)(CUdeviceptr, unsigned short, size_t, CUstream) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemsetD16Async)(dstDevice, us, N, hStream)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUdeviceptr, unsigned short, size_t, CUstream))__pyx_v_4cuda_5_cuda_5ccuda___cuMemsetD16Async)(__pyx_v_dstDevice, __pyx_v_us, __pyx_v_N, __pyx_v_hStream); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 3860, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":3861
 *             raise RuntimeError('Function "cuMemsetD16Async" not found')
 *     err = (<CUresult (*)(CUdeviceptr, unsigned short, size_t, CUstream) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemsetD16Async)(dstDevice, us, N, hStream)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuMemsetD32Async(CUdeviceptr dstDevice, unsigned int ui, size_t N, CUstream hStream) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":3854
 *     return err
 * 
 * cdef CUresult _cuMemsetD16Async(CUdeviceptr dstDevice, unsigned short us, size_t N, CUstream hStream) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuMemsetD16Async
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuMemsetD16Async", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":3863
 *     return err
 * 
 * cdef CUresult _cuMemsetD32Async(CUdeviceptr dstDevice, unsigned int ui, size_t N, CUstream hStream) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuMemsetD32Async
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuMemsetD32Async(CUdeviceptr __pyx_v_dstDevice, unsigned int __pyx_v_ui, size_t __pyx_v_N, CUstream __pyx_v_hStream) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuMemsetD32Async", 1);
  __Pyx_TraceCall("_cuMemsetD32Async", __pyx_f[0], 3863, 1, __PYX_ERR(0, 3863, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":3865
 * cdef CUresult _cuMemsetD32Async(CUdeviceptr dstDevice, unsigned int ui, size_t N, CUstream hStream) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuMemsetD32Async
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuMemsetD32Async == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 3865, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":3866
 *     global __cuMemsetD32Async
 *     cuPythonInit()
 *     if __cuMemsetD32Async == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuMemsetD32Async" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuMemsetD32Async == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":3867
 *     cuPythonInit()
 *     if __cuMemsetD32Async == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuMemsetD32Async" not found')
 *     err = (<CUresult (*)(CUdeviceptr, unsigned int, size_t, CUstream) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemsetD32Async)(dstDevice, ui, N, hStream)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":3868
 *     if __cuMemsetD32Async == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuMemsetD32Async" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUdeviceptr, unsigned int, size_t, CUstream) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemsetD32Async)(dstDevice, ui, N, hStream)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__139, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 3868, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 3868, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":3867
 *     cuPythonInit()
 *     if __cuMemsetD32Async == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuMemsetD32Async" not found')
 *     err = (<CUresult (*)(CUdeviceptr, unsigned int, size_t, CUstream) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemsetD32Async)(dstDevice, ui, N, hStream)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":3866
 *     global __cuMemsetD32Async
 *     cuPythonInit()
 *     if __cuMemsetD32Async == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuMemsetD32Async" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":3869
 *         with gil:
 *             raise RuntimeError('Function "cuMemsetD32Async" not found')
 *     err = (<CUresult (*)(CUdeviceptr, unsigned int, size_t, CUstream) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemsetD32Async)(dstDevice, ui, N, hStream)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUdeviceptr, unsigned int, size_t, CUstream))__pyx_v_4cuda_5_cuda_5ccuda___cuMemsetD32Async)(__pyx_v_dstDevice, __pyx_v_ui, __pyx_v_N, __pyx_v_hStream); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 3869, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":3870
 *             raise RuntimeError('Function "cuMemsetD32Async" not found')
 *     err = (<CUresult (*)(CUdeviceptr, unsigned int, size_t, CUstream) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemsetD32Async)(dstDevice, ui, N, hStream)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuMemsetD2D8Async(CUdeviceptr dstDevice, size_t dstPitch, unsigned char uc, size_t Width, size_t Height, CUstream hStream) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":3863
 *     return err
 * 
 * cdef CUresult _cuMemsetD32Async(CUdeviceptr dstDevice, unsigned int ui, size_t N, CUstream hStream) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuMemsetD32Async
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuMemsetD32Async", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":3872
 *     return err
 * 
 * cdef CUresult _cuMemsetD2D8Async(CUdeviceptr dstDevice, size_t dstPitch, unsigned char uc, size_t Width, size_t Height, CUstream hStream) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuMemsetD2D8Async
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuMemsetD2D8Async(CUdeviceptr __pyx_v_dstDevice, size_t __pyx_v_dstPitch, unsigned char __pyx_v_uc, size_t __pyx_v_Width, size_t __pyx_v_Height, CUstream __pyx_v_hStream) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuMemsetD2D8Async", 1);
  __Pyx_TraceCall("_cuMemsetD2D8Async", __pyx_f[0], 3872, 1, __PYX_ERR(0, 3872, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":3874
 * cdef CUresult _cuMemsetD2D8Async(CUdeviceptr dstDevice, size_t dstPitch, unsigned char uc, size_t Width, size_t Height, CUstream hStream) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuMemsetD2D8Async
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuMemsetD2D8Async == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 3874, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":3875
 *     global __cuMemsetD2D8Async
 *     cuPythonInit()
 *     if __cuMemsetD2D8Async == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuMemsetD2D8Async" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuMemsetD2D8Async == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":3876
 *     cuPythonInit()
 *     if __cuMemsetD2D8Async == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuMemsetD2D8Async" not found')
 *     err = (<CUresult (*)(CUdeviceptr, size_t, unsigned char, size_t, size_t, CUstream) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemsetD2D8Async)(dstDevice, dstPitch, uc, Width, Height, hStream)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":3877
 *     if __cuMemsetD2D8Async == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuMemsetD2D8Async" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUdeviceptr, size_t, unsigned char, size_t, size_t, CUstream) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemsetD2D8Async)(dstDevice, dstPitch, uc, Width, Height, hStream)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__140, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 3877, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 3877, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":3876
 *     cuPythonInit()
 *     if __cuMemsetD2D8Async == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuMemsetD2D8Async" not found')
 *     err = (<CUresult (*)(CUdeviceptr, size_t, unsigned char, size_t, size_t, CUstream) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemsetD2D8Async)(dstDevice, dstPitch, uc, Width, Height, hStream)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":3875
 *     global __cuMemsetD2D8Async
 *     cuPythonInit()
 *     if __cuMemsetD2D8Async == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuMemsetD2D8Async" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":3878
 *         with gil:
 *             raise RuntimeError('Function "cuMemsetD2D8Async" not found')
 *     err = (<CUresult (*)(CUdeviceptr, size_t, unsigned char, size_t, size_t, CUstream) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemsetD2D8Async)(dstDevice, dstPitch, uc, Width, Height, hStream)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUdeviceptr, size_t, unsigned char, size_t, size_t, CUstream))__pyx_v_4cuda_5_cuda_5ccuda___cuMemsetD2D8Async)(__pyx_v_dstDevice, __pyx_v_dstPitch, __pyx_v_uc, __pyx_v_Width, __pyx_v_Height, __pyx_v_hStream); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 3878, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":3879
 *             raise RuntimeError('Function "cuMemsetD2D8Async" not found')
 *     err = (<CUresult (*)(CUdeviceptr, size_t, unsigned char, size_t, size_t, CUstream) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemsetD2D8Async)(dstDevice, dstPitch, uc, Width, Height, hStream)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuMemsetD2D16Async(CUdeviceptr dstDevice, size_t dstPitch, unsigned short us, size_t Width, size_t Height, CUstream hStream) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":3872
 *     return err
 * 
 * cdef CUresult _cuMemsetD2D8Async(CUdeviceptr dstDevice, size_t dstPitch, unsigned char uc, size_t Width, size_t Height, CUstream hStream) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuMemsetD2D8Async
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuMemsetD2D8Async", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":3881
 *     return err
 * 
 * cdef CUresult _cuMemsetD2D16Async(CUdeviceptr dstDevice, size_t dstPitch, unsigned short us, size_t Width, size_t Height, CUstream hStream) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuMemsetD2D16Async
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuMemsetD2D16Async(CUdeviceptr __pyx_v_dstDevice, size_t __pyx_v_dstPitch, unsigned short __pyx_v_us, size_t __pyx_v_Width, size_t __pyx_v_Height, CUstream __pyx_v_hStream) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuMemsetD2D16Async", 1);
  __Pyx_TraceCall("_cuMemsetD2D16Async", __pyx_f[0], 3881, 1, __PYX_ERR(0, 3881, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":3883
 * cdef CUresult _cuMemsetD2D16Async(CUdeviceptr dstDevice, size_t dstPitch, unsigned short us, size_t Width, size_t Height, CUstream hStream) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuMemsetD2D16Async
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuMemsetD2D16Async == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 3883, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":3884
 *     global __cuMemsetD2D16Async
 *     cuPythonInit()
 *     if __cuMemsetD2D16Async == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuMemsetD2D16Async" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuMemsetD2D16Async == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":3885
 *     cuPythonInit()
 *     if __cuMemsetD2D16Async == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuMemsetD2D16Async" not found')
 *     err = (<CUresult (*)(CUdeviceptr, size_t, unsigned short, size_t, size_t, CUstream) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemsetD2D16Async)(dstDevice, dstPitch, us, Width, Height, hStream)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":3886
 *     if __cuMemsetD2D16Async == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuMemsetD2D16Async" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUdeviceptr, size_t, unsigned short, size_t, size_t, CUstream) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemsetD2D16Async)(dstDevice, dstPitch, us, Width, Height, hStream)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__141, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 3886, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 3886, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":3885
 *     cuPythonInit()
 *     if __cuMemsetD2D16Async == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuMemsetD2D16Async" not found')
 *     err = (<CUresult (*)(CUdeviceptr, size_t, unsigned short, size_t, size_t, CUstream) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemsetD2D16Async)(dstDevice, dstPitch, us, Width, Height, hStream)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":3884
 *     global __cuMemsetD2D16Async
 *     cuPythonInit()
 *     if __cuMemsetD2D16Async == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuMemsetD2D16Async" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":3887
 *         with gil:
 *             raise RuntimeError('Function "cuMemsetD2D16Async" not found')
 *     err = (<CUresult (*)(CUdeviceptr, size_t, unsigned short, size_t, size_t, CUstream) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemsetD2D16Async)(dstDevice, dstPitch, us, Width, Height, hStream)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUdeviceptr, size_t, unsigned short, size_t, size_t, CUstream))__pyx_v_4cuda_5_cuda_5ccuda___cuMemsetD2D16Async)(__pyx_v_dstDevice, __pyx_v_dstPitch, __pyx_v_us, __pyx_v_Width, __pyx_v_Height, __pyx_v_hStream); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 3887, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":3888
 *             raise RuntimeError('Function "cuMemsetD2D16Async" not found')
 *     err = (<CUresult (*)(CUdeviceptr, size_t, unsigned short, size_t, size_t, CUstream) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemsetD2D16Async)(dstDevice, dstPitch, us, Width, Height, hStream)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuMemsetD2D32Async(CUdeviceptr dstDevice, size_t dstPitch, unsigned int ui, size_t Width, size_t Height, CUstream hStream) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":3881
 *     return err
 * 
 * cdef CUresult _cuMemsetD2D16Async(CUdeviceptr dstDevice, size_t dstPitch, unsigned short us, size_t Width, size_t Height, CUstream hStream) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuMemsetD2D16Async
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuMemsetD2D16Async", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":3890
 *     return err
 * 
 * cdef CUresult _cuMemsetD2D32Async(CUdeviceptr dstDevice, size_t dstPitch, unsigned int ui, size_t Width, size_t Height, CUstream hStream) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuMemsetD2D32Async
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuMemsetD2D32Async(CUdeviceptr __pyx_v_dstDevice, size_t __pyx_v_dstPitch, unsigned int __pyx_v_ui, size_t __pyx_v_Width, size_t __pyx_v_Height, CUstream __pyx_v_hStream) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuMemsetD2D32Async", 1);
  __Pyx_TraceCall("_cuMemsetD2D32Async", __pyx_f[0], 3890, 1, __PYX_ERR(0, 3890, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":3892
 * cdef CUresult _cuMemsetD2D32Async(CUdeviceptr dstDevice, size_t dstPitch, unsigned int ui, size_t Width, size_t Height, CUstream hStream) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuMemsetD2D32Async
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuMemsetD2D32Async == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 3892, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":3893
 *     global __cuMemsetD2D32Async
 *     cuPythonInit()
 *     if __cuMemsetD2D32Async == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuMemsetD2D32Async" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuMemsetD2D32Async == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":3894
 *     cuPythonInit()
 *     if __cuMemsetD2D32Async == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuMemsetD2D32Async" not found')
 *     err = (<CUresult (*)(CUdeviceptr, size_t, unsigned int, size_t, size_t, CUstream) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemsetD2D32Async)(dstDevice, dstPitch, ui, Width, Height, hStream)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":3895
 *     if __cuMemsetD2D32Async == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuMemsetD2D32Async" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUdeviceptr, size_t, unsigned int, size_t, size_t, CUstream) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemsetD2D32Async)(dstDevice, dstPitch, ui, Width, Height, hStream)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__142, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 3895, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 3895, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":3894
 *     cuPythonInit()
 *     if __cuMemsetD2D32Async == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuMemsetD2D32Async" not found')
 *     err = (<CUresult (*)(CUdeviceptr, size_t, unsigned int, size_t, size_t, CUstream) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemsetD2D32Async)(dstDevice, dstPitch, ui, Width, Height, hStream)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":3893
 *     global __cuMemsetD2D32Async
 *     cuPythonInit()
 *     if __cuMemsetD2D32Async == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuMemsetD2D32Async" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":3896
 *         with gil:
 *             raise RuntimeError('Function "cuMemsetD2D32Async" not found')
 *     err = (<CUresult (*)(CUdeviceptr, size_t, unsigned int, size_t, size_t, CUstream) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemsetD2D32Async)(dstDevice, dstPitch, ui, Width, Height, hStream)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUdeviceptr, size_t, unsigned int, size_t, size_t, CUstream))__pyx_v_4cuda_5_cuda_5ccuda___cuMemsetD2D32Async)(__pyx_v_dstDevice, __pyx_v_dstPitch, __pyx_v_ui, __pyx_v_Width, __pyx_v_Height, __pyx_v_hStream); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 3896, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":3897
 *             raise RuntimeError('Function "cuMemsetD2D32Async" not found')
 *     err = (<CUresult (*)(CUdeviceptr, size_t, unsigned int, size_t, size_t, CUstream) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemsetD2D32Async)(dstDevice, dstPitch, ui, Width, Height, hStream)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuArrayCreate_v2(CUarray* pHandle, const CUDA_ARRAY_DESCRIPTOR* pAllocateArray) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":3890
 *     return err
 * 
 * cdef CUresult _cuMemsetD2D32Async(CUdeviceptr dstDevice, size_t dstPitch, unsigned int ui, size_t Width, size_t Height, CUstream hStream) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuMemsetD2D32Async
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuMemsetD2D32Async", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":3899
 *     return err
 * 
 * cdef CUresult _cuArrayCreate_v2(CUarray* pHandle, const CUDA_ARRAY_DESCRIPTOR* pAllocateArray) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuArrayCreate_v2
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuArrayCreate_v2(CUarray *__pyx_v_pHandle, CUDA_ARRAY_DESCRIPTOR const *__pyx_v_pAllocateArray) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuArrayCreate_v2", 1);
  __Pyx_TraceCall("_cuArrayCreate_v2", __pyx_f[0], 3899, 1, __PYX_ERR(0, 3899, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":3901
 * cdef CUresult _cuArrayCreate_v2(CUarray* pHandle, const CUDA_ARRAY_DESCRIPTOR* pAllocateArray) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuArrayCreate_v2
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuArrayCreate_v2 == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 3901, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":3902
 *     global __cuArrayCreate_v2
 *     cuPythonInit()
 *     if __cuArrayCreate_v2 == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuArrayCreate_v2" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuArrayCreate_v2 == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":3903
 *     cuPythonInit()
 *     if __cuArrayCreate_v2 == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuArrayCreate_v2" not found')
 *     err = (<CUresult (*)(CUarray*, const CUDA_ARRAY_DESCRIPTOR*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuArrayCreate_v2)(pHandle, pAllocateArray)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":3904
 *     if __cuArrayCreate_v2 == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuArrayCreate_v2" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUarray*, const CUDA_ARRAY_DESCRIPTOR*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuArrayCreate_v2)(pHandle, pAllocateArray)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__143, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 3904, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 3904, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":3903
 *     cuPythonInit()
 *     if __cuArrayCreate_v2 == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuArrayCreate_v2" not found')
 *     err = (<CUresult (*)(CUarray*, const CUDA_ARRAY_DESCRIPTOR*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuArrayCreate_v2)(pHandle, pAllocateArray)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":3902
 *     global __cuArrayCreate_v2
 *     cuPythonInit()
 *     if __cuArrayCreate_v2 == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuArrayCreate_v2" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":3905
 *         with gil:
 *             raise RuntimeError('Function "cuArrayCreate_v2" not found')
 *     err = (<CUresult (*)(CUarray*, const CUDA_ARRAY_DESCRIPTOR*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuArrayCreate_v2)(pHandle, pAllocateArray)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUarray *, CUDA_ARRAY_DESCRIPTOR const *))__pyx_v_4cuda_5_cuda_5ccuda___cuArrayCreate_v2)(__pyx_v_pHandle, __pyx_v_pAllocateArray); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 3905, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":3906
 *             raise RuntimeError('Function "cuArrayCreate_v2" not found')
 *     err = (<CUresult (*)(CUarray*, const CUDA_ARRAY_DESCRIPTOR*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuArrayCreate_v2)(pHandle, pAllocateArray)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuArrayGetDescriptor_v2(CUDA_ARRAY_DESCRIPTOR* pArrayDescriptor, CUarray hArray) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":3899
 *     return err
 * 
 * cdef CUresult _cuArrayCreate_v2(CUarray* pHandle, const CUDA_ARRAY_DESCRIPTOR* pAllocateArray) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuArrayCreate_v2
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuArrayCreate_v2", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":3908
 *     return err
 * 
 * cdef CUresult _cuArrayGetDescriptor_v2(CUDA_ARRAY_DESCRIPTOR* pArrayDescriptor, CUarray hArray) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuArrayGetDescriptor_v2
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuArrayGetDescriptor_v2(CUDA_ARRAY_DESCRIPTOR *__pyx_v_pArrayDescriptor, CUarray __pyx_v_hArray) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuArrayGetDescriptor_v2", 1);
  __Pyx_TraceCall("_cuArrayGetDescriptor_v2", __pyx_f[0], 3908, 1, __PYX_ERR(0, 3908, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":3910
 * cdef CUresult _cuArrayGetDescriptor_v2(CUDA_ARRAY_DESCRIPTOR* pArrayDescriptor, CUarray hArray) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuArrayGetDescriptor_v2
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuArrayGetDescriptor_v2 == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 3910, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":3911
 *     global __cuArrayGetDescriptor_v2
 *     cuPythonInit()
 *     if __cuArrayGetDescriptor_v2 == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuArrayGetDescriptor_v2" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuArrayGetDescriptor_v2 == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":3912
 *     cuPythonInit()
 *     if __cuArrayGetDescriptor_v2 == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuArrayGetDescriptor_v2" not found')
 *     err = (<CUresult (*)(CUDA_ARRAY_DESCRIPTOR*, CUarray) except ?CUDA_ERROR_NOT_FOUND nogil> __cuArrayGetDescriptor_v2)(pArrayDescriptor, hArray)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":3913
 *     if __cuArrayGetDescriptor_v2 == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuArrayGetDescriptor_v2" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUDA_ARRAY_DESCRIPTOR*, CUarray) except ?CUDA_ERROR_NOT_FOUND nogil> __cuArrayGetDescriptor_v2)(pArrayDescriptor, hArray)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__144, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 3913, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 3913, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":3912
 *     cuPythonInit()
 *     if __cuArrayGetDescriptor_v2 == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuArrayGetDescriptor_v2" not found')
 *     err = (<CUresult (*)(CUDA_ARRAY_DESCRIPTOR*, CUarray) except ?CUDA_ERROR_NOT_FOUND nogil> __cuArrayGetDescriptor_v2)(pArrayDescriptor, hArray)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":3911
 *     global __cuArrayGetDescriptor_v2
 *     cuPythonInit()
 *     if __cuArrayGetDescriptor_v2 == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuArrayGetDescriptor_v2" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":3914
 *         with gil:
 *             raise RuntimeError('Function "cuArrayGetDescriptor_v2" not found')
 *     err = (<CUresult (*)(CUDA_ARRAY_DESCRIPTOR*, CUarray) except ?CUDA_ERROR_NOT_FOUND nogil> __cuArrayGetDescriptor_v2)(pArrayDescriptor, hArray)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUDA_ARRAY_DESCRIPTOR *, CUarray))__pyx_v_4cuda_5_cuda_5ccuda___cuArrayGetDescriptor_v2)(__pyx_v_pArrayDescriptor, __pyx_v_hArray); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 3914, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":3915
 *             raise RuntimeError('Function "cuArrayGetDescriptor_v2" not found')
 *     err = (<CUresult (*)(CUDA_ARRAY_DESCRIPTOR*, CUarray) except ?CUDA_ERROR_NOT_FOUND nogil> __cuArrayGetDescriptor_v2)(pArrayDescriptor, hArray)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuArrayGetSparseProperties(CUDA_ARRAY_SPARSE_PROPERTIES* sparseProperties, CUarray array) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":3908
 *     return err
 * 
 * cdef CUresult _cuArrayGetDescriptor_v2(CUDA_ARRAY_DESCRIPTOR* pArrayDescriptor, CUarray hArray) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuArrayGetDescriptor_v2
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuArrayGetDescriptor_v2", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":3917
 *     return err
 * 
 * cdef CUresult _cuArrayGetSparseProperties(CUDA_ARRAY_SPARSE_PROPERTIES* sparseProperties, CUarray array) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuArrayGetSparseProperties
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuArrayGetSparseProperties(CUDA_ARRAY_SPARSE_PROPERTIES *__pyx_v_sparseProperties, CUarray __pyx_v_array) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuArrayGetSparseProperties", 1);
  __Pyx_TraceCall("_cuArrayGetSparseProperties", __pyx_f[0], 3917, 1, __PYX_ERR(0, 3917, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":3919
 * cdef CUresult _cuArrayGetSparseProperties(CUDA_ARRAY_SPARSE_PROPERTIES* sparseProperties, CUarray array) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuArrayGetSparseProperties
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuArrayGetSparseProperties == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 3919, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":3920
 *     global __cuArrayGetSparseProperties
 *     cuPythonInit()
 *     if __cuArrayGetSparseProperties == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuArrayGetSparseProperties" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuArrayGetSparseProperties == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":3921
 *     cuPythonInit()
 *     if __cuArrayGetSparseProperties == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuArrayGetSparseProperties" not found')
 *     err = (<CUresult (*)(CUDA_ARRAY_SPARSE_PROPERTIES*, CUarray) except ?CUDA_ERROR_NOT_FOUND nogil> __cuArrayGetSparseProperties)(sparseProperties, array)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":3922
 *     if __cuArrayGetSparseProperties == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuArrayGetSparseProperties" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUDA_ARRAY_SPARSE_PROPERTIES*, CUarray) except ?CUDA_ERROR_NOT_FOUND nogil> __cuArrayGetSparseProperties)(sparseProperties, array)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__145, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 3922, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 3922, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":3921
 *     cuPythonInit()
 *     if __cuArrayGetSparseProperties == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuArrayGetSparseProperties" not found')
 *     err = (<CUresult (*)(CUDA_ARRAY_SPARSE_PROPERTIES*, CUarray) except ?CUDA_ERROR_NOT_FOUND nogil> __cuArrayGetSparseProperties)(sparseProperties, array)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":3920
 *     global __cuArrayGetSparseProperties
 *     cuPythonInit()
 *     if __cuArrayGetSparseProperties == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuArrayGetSparseProperties" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":3923
 *         with gil:
 *             raise RuntimeError('Function "cuArrayGetSparseProperties" not found')
 *     err = (<CUresult (*)(CUDA_ARRAY_SPARSE_PROPERTIES*, CUarray) except ?CUDA_ERROR_NOT_FOUND nogil> __cuArrayGetSparseProperties)(sparseProperties, array)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUDA_ARRAY_SPARSE_PROPERTIES *, CUarray))__pyx_v_4cuda_5_cuda_5ccuda___cuArrayGetSparseProperties)(__pyx_v_sparseProperties, __pyx_v_array); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 3923, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":3924
 *             raise RuntimeError('Function "cuArrayGetSparseProperties" not found')
 *     err = (<CUresult (*)(CUDA_ARRAY_SPARSE_PROPERTIES*, CUarray) except ?CUDA_ERROR_NOT_FOUND nogil> __cuArrayGetSparseProperties)(sparseProperties, array)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuMipmappedArrayGetSparseProperties(CUDA_ARRAY_SPARSE_PROPERTIES* sparseProperties, CUmipmappedArray mipmap) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":3917
 *     return err
 * 
 * cdef CUresult _cuArrayGetSparseProperties(CUDA_ARRAY_SPARSE_PROPERTIES* sparseProperties, CUarray array) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuArrayGetSparseProperties
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuArrayGetSparseProperties", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":3926
 *     return err
 * 
 * cdef CUresult _cuMipmappedArrayGetSparseProperties(CUDA_ARRAY_SPARSE_PROPERTIES* sparseProperties, CUmipmappedArray mipmap) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuMipmappedArrayGetSparseProperties
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuMipmappedArrayGetSparseProperties(CUDA_ARRAY_SPARSE_PROPERTIES *__pyx_v_sparseProperties, CUmipmappedArray __pyx_v_mipmap) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuMipmappedArrayGetSparseProperties", 1);
  __Pyx_TraceCall("_cuMipmappedArrayGetSparseProperties", __pyx_f[0], 3926, 1, __PYX_ERR(0, 3926, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":3928
 * cdef CUresult _cuMipmappedArrayGetSparseProperties(CUDA_ARRAY_SPARSE_PROPERTIES* sparseProperties, CUmipmappedArray mipmap) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuMipmappedArrayGetSparseProperties
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuMipmappedArrayGetSparseProperties == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 3928, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":3929
 *     global __cuMipmappedArrayGetSparseProperties
 *     cuPythonInit()
 *     if __cuMipmappedArrayGetSparseProperties == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuMipmappedArrayGetSparseProperties" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuMipmappedArrayGetSparseProperties == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":3930
 *     cuPythonInit()
 *     if __cuMipmappedArrayGetSparseProperties == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuMipmappedArrayGetSparseProperties" not found')
 *     err = (<CUresult (*)(CUDA_ARRAY_SPARSE_PROPERTIES*, CUmipmappedArray) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMipmappedArrayGetSparseProperties)(sparseProperties, mipmap)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":3931
 *     if __cuMipmappedArrayGetSparseProperties == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuMipmappedArrayGetSparseProperties" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUDA_ARRAY_SPARSE_PROPERTIES*, CUmipmappedArray) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMipmappedArrayGetSparseProperties)(sparseProperties, mipmap)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__146, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 3931, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 3931, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":3930
 *     cuPythonInit()
 *     if __cuMipmappedArrayGetSparseProperties == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuMipmappedArrayGetSparseProperties" not found')
 *     err = (<CUresult (*)(CUDA_ARRAY_SPARSE_PROPERTIES*, CUmipmappedArray) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMipmappedArrayGetSparseProperties)(sparseProperties, mipmap)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":3929
 *     global __cuMipmappedArrayGetSparseProperties
 *     cuPythonInit()
 *     if __cuMipmappedArrayGetSparseProperties == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuMipmappedArrayGetSparseProperties" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":3932
 *         with gil:
 *             raise RuntimeError('Function "cuMipmappedArrayGetSparseProperties" not found')
 *     err = (<CUresult (*)(CUDA_ARRAY_SPARSE_PROPERTIES*, CUmipmappedArray) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMipmappedArrayGetSparseProperties)(sparseProperties, mipmap)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUDA_ARRAY_SPARSE_PROPERTIES *, CUmipmappedArray))__pyx_v_4cuda_5_cuda_5ccuda___cuMipmappedArrayGetSparseProperties)(__pyx_v_sparseProperties, __pyx_v_mipmap); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 3932, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":3933
 *             raise RuntimeError('Function "cuMipmappedArrayGetSparseProperties" not found')
 *     err = (<CUresult (*)(CUDA_ARRAY_SPARSE_PROPERTIES*, CUmipmappedArray) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMipmappedArrayGetSparseProperties)(sparseProperties, mipmap)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuArrayGetMemoryRequirements(CUDA_ARRAY_MEMORY_REQUIREMENTS* memoryRequirements, CUarray array, CUdevice device) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":3926
 *     return err
 * 
 * cdef CUresult _cuMipmappedArrayGetSparseProperties(CUDA_ARRAY_SPARSE_PROPERTIES* sparseProperties, CUmipmappedArray mipmap) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuMipmappedArrayGetSparseProperties
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuMipmappedArrayGetSparseProperties", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":3935
 *     return err
 * 
 * cdef CUresult _cuArrayGetMemoryRequirements(CUDA_ARRAY_MEMORY_REQUIREMENTS* memoryRequirements, CUarray array, CUdevice device) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuArrayGetMemoryRequirements
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuArrayGetMemoryRequirements(CUDA_ARRAY_MEMORY_REQUIREMENTS *__pyx_v_memoryRequirements, CUarray __pyx_v_array, CUdevice __pyx_v_device) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuArrayGetMemoryRequirements", 1);
  __Pyx_TraceCall("_cuArrayGetMemoryRequirements", __pyx_f[0], 3935, 1, __PYX_ERR(0, 3935, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":3937
 * cdef CUresult _cuArrayGetMemoryRequirements(CUDA_ARRAY_MEMORY_REQUIREMENTS* memoryRequirements, CUarray array, CUdevice device) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuArrayGetMemoryRequirements
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuArrayGetMemoryRequirements == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 3937, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":3938
 *     global __cuArrayGetMemoryRequirements
 *     cuPythonInit()
 *     if __cuArrayGetMemoryRequirements == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuArrayGetMemoryRequirements" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuArrayGetMemoryRequirements == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":3939
 *     cuPythonInit()
 *     if __cuArrayGetMemoryRequirements == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuArrayGetMemoryRequirements" not found')
 *     err = (<CUresult (*)(CUDA_ARRAY_MEMORY_REQUIREMENTS*, CUarray, CUdevice) except ?CUDA_ERROR_NOT_FOUND nogil> __cuArrayGetMemoryRequirements)(memoryRequirements, array, device)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":3940
 *     if __cuArrayGetMemoryRequirements == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuArrayGetMemoryRequirements" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUDA_ARRAY_MEMORY_REQUIREMENTS*, CUarray, CUdevice) except ?CUDA_ERROR_NOT_FOUND nogil> __cuArrayGetMemoryRequirements)(memoryRequirements, array, device)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__147, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 3940, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 3940, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":3939
 *     cuPythonInit()
 *     if __cuArrayGetMemoryRequirements == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuArrayGetMemoryRequirements" not found')
 *     err = (<CUresult (*)(CUDA_ARRAY_MEMORY_REQUIREMENTS*, CUarray, CUdevice) except ?CUDA_ERROR_NOT_FOUND nogil> __cuArrayGetMemoryRequirements)(memoryRequirements, array, device)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":3938
 *     global __cuArrayGetMemoryRequirements
 *     cuPythonInit()
 *     if __cuArrayGetMemoryRequirements == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuArrayGetMemoryRequirements" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":3941
 *         with gil:
 *             raise RuntimeError('Function "cuArrayGetMemoryRequirements" not found')
 *     err = (<CUresult (*)(CUDA_ARRAY_MEMORY_REQUIREMENTS*, CUarray, CUdevice) except ?CUDA_ERROR_NOT_FOUND nogil> __cuArrayGetMemoryRequirements)(memoryRequirements, array, device)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUDA_ARRAY_MEMORY_REQUIREMENTS *, CUarray, CUdevice))__pyx_v_4cuda_5_cuda_5ccuda___cuArrayGetMemoryRequirements)(__pyx_v_memoryRequirements, __pyx_v_array, __pyx_v_device); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 3941, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":3942
 *             raise RuntimeError('Function "cuArrayGetMemoryRequirements" not found')
 *     err = (<CUresult (*)(CUDA_ARRAY_MEMORY_REQUIREMENTS*, CUarray, CUdevice) except ?CUDA_ERROR_NOT_FOUND nogil> __cuArrayGetMemoryRequirements)(memoryRequirements, array, device)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuMipmappedArrayGetMemoryRequirements(CUDA_ARRAY_MEMORY_REQUIREMENTS* memoryRequirements, CUmipmappedArray mipmap, CUdevice device) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":3935
 *     return err
 * 
 * cdef CUresult _cuArrayGetMemoryRequirements(CUDA_ARRAY_MEMORY_REQUIREMENTS* memoryRequirements, CUarray array, CUdevice device) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuArrayGetMemoryRequirements
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuArrayGetMemoryRequirements", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":3944
 *     return err
 * 
 * cdef CUresult _cuMipmappedArrayGetMemoryRequirements(CUDA_ARRAY_MEMORY_REQUIREMENTS* memoryRequirements, CUmipmappedArray mipmap, CUdevice device) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuMipmappedArrayGetMemoryRequirements
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuMipmappedArrayGetMemoryRequirements(CUDA_ARRAY_MEMORY_REQUIREMENTS *__pyx_v_memoryRequirements, CUmipmappedArray __pyx_v_mipmap, CUdevice __pyx_v_device) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuMipmappedArrayGetMemoryRequirements", 1);
  __Pyx_TraceCall("_cuMipmappedArrayGetMemoryRequirements", __pyx_f[0], 3944, 1, __PYX_ERR(0, 3944, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":3946
 * cdef CUresult _cuMipmappedArrayGetMemoryRequirements(CUDA_ARRAY_MEMORY_REQUIREMENTS* memoryRequirements, CUmipmappedArray mipmap, CUdevice device) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuMipmappedArrayGetMemoryRequirements
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuMipmappedArrayGetMemoryRequirements == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 3946, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":3947
 *     global __cuMipmappedArrayGetMemoryRequirements
 *     cuPythonInit()
 *     if __cuMipmappedArrayGetMemoryRequirements == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuMipmappedArrayGetMemoryRequirements" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuMipmappedArrayGetMemoryRequirements == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":3948
 *     cuPythonInit()
 *     if __cuMipmappedArrayGetMemoryRequirements == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuMipmappedArrayGetMemoryRequirements" not found')
 *     err = (<CUresult (*)(CUDA_ARRAY_MEMORY_REQUIREMENTS*, CUmipmappedArray, CUdevice) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMipmappedArrayGetMemoryRequirements)(memoryRequirements, mipmap, device)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":3949
 *     if __cuMipmappedArrayGetMemoryRequirements == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuMipmappedArrayGetMemoryRequirements" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUDA_ARRAY_MEMORY_REQUIREMENTS*, CUmipmappedArray, CUdevice) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMipmappedArrayGetMemoryRequirements)(memoryRequirements, mipmap, device)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__148, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 3949, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 3949, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":3948
 *     cuPythonInit()
 *     if __cuMipmappedArrayGetMemoryRequirements == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuMipmappedArrayGetMemoryRequirements" not found')
 *     err = (<CUresult (*)(CUDA_ARRAY_MEMORY_REQUIREMENTS*, CUmipmappedArray, CUdevice) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMipmappedArrayGetMemoryRequirements)(memoryRequirements, mipmap, device)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":3947
 *     global __cuMipmappedArrayGetMemoryRequirements
 *     cuPythonInit()
 *     if __cuMipmappedArrayGetMemoryRequirements == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuMipmappedArrayGetMemoryRequirements" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":3950
 *         with gil:
 *             raise RuntimeError('Function "cuMipmappedArrayGetMemoryRequirements" not found')
 *     err = (<CUresult (*)(CUDA_ARRAY_MEMORY_REQUIREMENTS*, CUmipmappedArray, CUdevice) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMipmappedArrayGetMemoryRequirements)(memoryRequirements, mipmap, device)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUDA_ARRAY_MEMORY_REQUIREMENTS *, CUmipmappedArray, CUdevice))__pyx_v_4cuda_5_cuda_5ccuda___cuMipmappedArrayGetMemoryRequirements)(__pyx_v_memoryRequirements, __pyx_v_mipmap, __pyx_v_device); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 3950, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":3951
 *             raise RuntimeError('Function "cuMipmappedArrayGetMemoryRequirements" not found')
 *     err = (<CUresult (*)(CUDA_ARRAY_MEMORY_REQUIREMENTS*, CUmipmappedArray, CUdevice) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMipmappedArrayGetMemoryRequirements)(memoryRequirements, mipmap, device)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuArrayGetPlane(CUarray* pPlaneArray, CUarray hArray, unsigned int planeIdx) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":3944
 *     return err
 * 
 * cdef CUresult _cuMipmappedArrayGetMemoryRequirements(CUDA_ARRAY_MEMORY_REQUIREMENTS* memoryRequirements, CUmipmappedArray mipmap, CUdevice device) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuMipmappedArrayGetMemoryRequirements
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuMipmappedArrayGetMemoryRequirements", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":3953
 *     return err
 * 
 * cdef CUresult _cuArrayGetPlane(CUarray* pPlaneArray, CUarray hArray, unsigned int planeIdx) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuArrayGetPlane
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuArrayGetPlane(CUarray *__pyx_v_pPlaneArray, CUarray __pyx_v_hArray, unsigned int __pyx_v_planeIdx) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuArrayGetPlane", 1);
  __Pyx_TraceCall("_cuArrayGetPlane", __pyx_f[0], 3953, 1, __PYX_ERR(0, 3953, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":3955
 * cdef CUresult _cuArrayGetPlane(CUarray* pPlaneArray, CUarray hArray, unsigned int planeIdx) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuArrayGetPlane
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuArrayGetPlane == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 3955, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":3956
 *     global __cuArrayGetPlane
 *     cuPythonInit()
 *     if __cuArrayGetPlane == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuArrayGetPlane" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuArrayGetPlane == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":3957
 *     cuPythonInit()
 *     if __cuArrayGetPlane == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuArrayGetPlane" not found')
 *     err = (<CUresult (*)(CUarray*, CUarray, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuArrayGetPlane)(pPlaneArray, hArray, planeIdx)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":3958
 *     if __cuArrayGetPlane == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuArrayGetPlane" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUarray*, CUarray, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuArrayGetPlane)(pPlaneArray, hArray, planeIdx)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__149, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 3958, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 3958, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":3957
 *     cuPythonInit()
 *     if __cuArrayGetPlane == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuArrayGetPlane" not found')
 *     err = (<CUresult (*)(CUarray*, CUarray, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuArrayGetPlane)(pPlaneArray, hArray, planeIdx)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":3956
 *     global __cuArrayGetPlane
 *     cuPythonInit()
 *     if __cuArrayGetPlane == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuArrayGetPlane" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":3959
 *         with gil:
 *             raise RuntimeError('Function "cuArrayGetPlane" not found')
 *     err = (<CUresult (*)(CUarray*, CUarray, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuArrayGetPlane)(pPlaneArray, hArray, planeIdx)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUarray *, CUarray, unsigned int))__pyx_v_4cuda_5_cuda_5ccuda___cuArrayGetPlane)(__pyx_v_pPlaneArray, __pyx_v_hArray, __pyx_v_planeIdx); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 3959, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":3960
 *             raise RuntimeError('Function "cuArrayGetPlane" not found')
 *     err = (<CUresult (*)(CUarray*, CUarray, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuArrayGetPlane)(pPlaneArray, hArray, planeIdx)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuArrayDestroy(CUarray hArray) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":3953
 *     return err
 * 
 * cdef CUresult _cuArrayGetPlane(CUarray* pPlaneArray, CUarray hArray, unsigned int planeIdx) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuArrayGetPlane
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuArrayGetPlane", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":3962
 *     return err
 * 
 * cdef CUresult _cuArrayDestroy(CUarray hArray) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuArrayDestroy
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuArrayDestroy(CUarray __pyx_v_hArray) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuArrayDestroy", 1);
  __Pyx_TraceCall("_cuArrayDestroy", __pyx_f[0], 3962, 1, __PYX_ERR(0, 3962, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":3964
 * cdef CUresult _cuArrayDestroy(CUarray hArray) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuArrayDestroy
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuArrayDestroy == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 3964, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":3965
 *     global __cuArrayDestroy
 *     cuPythonInit()
 *     if __cuArrayDestroy == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuArrayDestroy" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuArrayDestroy == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":3966
 *     cuPythonInit()
 *     if __cuArrayDestroy == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuArrayDestroy" not found')
 *     err = (<CUresult (*)(CUarray) except ?CUDA_ERROR_NOT_FOUND nogil> __cuArrayDestroy)(hArray)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":3967
 *     if __cuArrayDestroy == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuArrayDestroy" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUarray) except ?CUDA_ERROR_NOT_FOUND nogil> __cuArrayDestroy)(hArray)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__150, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 3967, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 3967, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":3966
 *     cuPythonInit()
 *     if __cuArrayDestroy == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuArrayDestroy" not found')
 *     err = (<CUresult (*)(CUarray) except ?CUDA_ERROR_NOT_FOUND nogil> __cuArrayDestroy)(hArray)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":3965
 *     global __cuArrayDestroy
 *     cuPythonInit()
 *     if __cuArrayDestroy == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuArrayDestroy" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":3968
 *         with gil:
 *             raise RuntimeError('Function "cuArrayDestroy" not found')
 *     err = (<CUresult (*)(CUarray) except ?CUDA_ERROR_NOT_FOUND nogil> __cuArrayDestroy)(hArray)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUarray))__pyx_v_4cuda_5_cuda_5ccuda___cuArrayDestroy)(__pyx_v_hArray); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 3968, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":3969
 *             raise RuntimeError('Function "cuArrayDestroy" not found')
 *     err = (<CUresult (*)(CUarray) except ?CUDA_ERROR_NOT_FOUND nogil> __cuArrayDestroy)(hArray)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuArray3DCreate_v2(CUarray* pHandle, const CUDA_ARRAY3D_DESCRIPTOR* pAllocateArray) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":3962
 *     return err
 * 
 * cdef CUresult _cuArrayDestroy(CUarray hArray) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuArrayDestroy
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuArrayDestroy", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":3971
 *     return err
 * 
 * cdef CUresult _cuArray3DCreate_v2(CUarray* pHandle, const CUDA_ARRAY3D_DESCRIPTOR* pAllocateArray) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuArray3DCreate_v2
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuArray3DCreate_v2(CUarray *__pyx_v_pHandle, CUDA_ARRAY3D_DESCRIPTOR const *__pyx_v_pAllocateArray) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuArray3DCreate_v2", 1);
  __Pyx_TraceCall("_cuArray3DCreate_v2", __pyx_f[0], 3971, 1, __PYX_ERR(0, 3971, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":3973
 * cdef CUresult _cuArray3DCreate_v2(CUarray* pHandle, const CUDA_ARRAY3D_DESCRIPTOR* pAllocateArray) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuArray3DCreate_v2
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuArray3DCreate_v2 == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 3973, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":3974
 *     global __cuArray3DCreate_v2
 *     cuPythonInit()
 *     if __cuArray3DCreate_v2 == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuArray3DCreate_v2" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuArray3DCreate_v2 == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":3975
 *     cuPythonInit()
 *     if __cuArray3DCreate_v2 == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuArray3DCreate_v2" not found')
 *     err = (<CUresult (*)(CUarray*, const CUDA_ARRAY3D_DESCRIPTOR*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuArray3DCreate_v2)(pHandle, pAllocateArray)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":3976
 *     if __cuArray3DCreate_v2 == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuArray3DCreate_v2" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUarray*, const CUDA_ARRAY3D_DESCRIPTOR*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuArray3DCreate_v2)(pHandle, pAllocateArray)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__151, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 3976, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 3976, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":3975
 *     cuPythonInit()
 *     if __cuArray3DCreate_v2 == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuArray3DCreate_v2" not found')
 *     err = (<CUresult (*)(CUarray*, const CUDA_ARRAY3D_DESCRIPTOR*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuArray3DCreate_v2)(pHandle, pAllocateArray)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":3974
 *     global __cuArray3DCreate_v2
 *     cuPythonInit()
 *     if __cuArray3DCreate_v2 == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuArray3DCreate_v2" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":3977
 *         with gil:
 *             raise RuntimeError('Function "cuArray3DCreate_v2" not found')
 *     err = (<CUresult (*)(CUarray*, const CUDA_ARRAY3D_DESCRIPTOR*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuArray3DCreate_v2)(pHandle, pAllocateArray)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUarray *, CUDA_ARRAY3D_DESCRIPTOR const *))__pyx_v_4cuda_5_cuda_5ccuda___cuArray3DCreate_v2)(__pyx_v_pHandle, __pyx_v_pAllocateArray); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 3977, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":3978
 *             raise RuntimeError('Function "cuArray3DCreate_v2" not found')
 *     err = (<CUresult (*)(CUarray*, const CUDA_ARRAY3D_DESCRIPTOR*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuArray3DCreate_v2)(pHandle, pAllocateArray)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuArray3DGetDescriptor_v2(CUDA_ARRAY3D_DESCRIPTOR* pArrayDescriptor, CUarray hArray) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":3971
 *     return err
 * 
 * cdef CUresult _cuArray3DCreate_v2(CUarray* pHandle, const CUDA_ARRAY3D_DESCRIPTOR* pAllocateArray) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuArray3DCreate_v2
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuArray3DCreate_v2", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":3980
 *     return err
 * 
 * cdef CUresult _cuArray3DGetDescriptor_v2(CUDA_ARRAY3D_DESCRIPTOR* pArrayDescriptor, CUarray hArray) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuArray3DGetDescriptor_v2
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuArray3DGetDescriptor_v2(CUDA_ARRAY3D_DESCRIPTOR *__pyx_v_pArrayDescriptor, CUarray __pyx_v_hArray) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuArray3DGetDescriptor_v2", 1);
  __Pyx_TraceCall("_cuArray3DGetDescriptor_v2", __pyx_f[0], 3980, 1, __PYX_ERR(0, 3980, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":3982
 * cdef CUresult _cuArray3DGetDescriptor_v2(CUDA_ARRAY3D_DESCRIPTOR* pArrayDescriptor, CUarray hArray) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuArray3DGetDescriptor_v2
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuArray3DGetDescriptor_v2 == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 3982, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":3983
 *     global __cuArray3DGetDescriptor_v2
 *     cuPythonInit()
 *     if __cuArray3DGetDescriptor_v2 == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuArray3DGetDescriptor_v2" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuArray3DGetDescriptor_v2 == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":3984
 *     cuPythonInit()
 *     if __cuArray3DGetDescriptor_v2 == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuArray3DGetDescriptor_v2" not found')
 *     err = (<CUresult (*)(CUDA_ARRAY3D_DESCRIPTOR*, CUarray) except ?CUDA_ERROR_NOT_FOUND nogil> __cuArray3DGetDescriptor_v2)(pArrayDescriptor, hArray)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":3985
 *     if __cuArray3DGetDescriptor_v2 == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuArray3DGetDescriptor_v2" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUDA_ARRAY3D_DESCRIPTOR*, CUarray) except ?CUDA_ERROR_NOT_FOUND nogil> __cuArray3DGetDescriptor_v2)(pArrayDescriptor, hArray)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__152, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 3985, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 3985, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":3984
 *     cuPythonInit()
 *     if __cuArray3DGetDescriptor_v2 == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuArray3DGetDescriptor_v2" not found')
 *     err = (<CUresult (*)(CUDA_ARRAY3D_DESCRIPTOR*, CUarray) except ?CUDA_ERROR_NOT_FOUND nogil> __cuArray3DGetDescriptor_v2)(pArrayDescriptor, hArray)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":3983
 *     global __cuArray3DGetDescriptor_v2
 *     cuPythonInit()
 *     if __cuArray3DGetDescriptor_v2 == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuArray3DGetDescriptor_v2" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":3986
 *         with gil:
 *             raise RuntimeError('Function "cuArray3DGetDescriptor_v2" not found')
 *     err = (<CUresult (*)(CUDA_ARRAY3D_DESCRIPTOR*, CUarray) except ?CUDA_ERROR_NOT_FOUND nogil> __cuArray3DGetDescriptor_v2)(pArrayDescriptor, hArray)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUDA_ARRAY3D_DESCRIPTOR *, CUarray))__pyx_v_4cuda_5_cuda_5ccuda___cuArray3DGetDescriptor_v2)(__pyx_v_pArrayDescriptor, __pyx_v_hArray); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 3986, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":3987
 *             raise RuntimeError('Function "cuArray3DGetDescriptor_v2" not found')
 *     err = (<CUresult (*)(CUDA_ARRAY3D_DESCRIPTOR*, CUarray) except ?CUDA_ERROR_NOT_FOUND nogil> __cuArray3DGetDescriptor_v2)(pArrayDescriptor, hArray)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuMipmappedArrayCreate(CUmipmappedArray* pHandle, const CUDA_ARRAY3D_DESCRIPTOR* pMipmappedArrayDesc, unsigned int numMipmapLevels) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":3980
 *     return err
 * 
 * cdef CUresult _cuArray3DGetDescriptor_v2(CUDA_ARRAY3D_DESCRIPTOR* pArrayDescriptor, CUarray hArray) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuArray3DGetDescriptor_v2
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuArray3DGetDescriptor_v2", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":3989
 *     return err
 * 
 * cdef CUresult _cuMipmappedArrayCreate(CUmipmappedArray* pHandle, const CUDA_ARRAY3D_DESCRIPTOR* pMipmappedArrayDesc, unsigned int numMipmapLevels) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuMipmappedArrayCreate
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuMipmappedArrayCreate(CUmipmappedArray *__pyx_v_pHandle, CUDA_ARRAY3D_DESCRIPTOR const *__pyx_v_pMipmappedArrayDesc, unsigned int __pyx_v_numMipmapLevels) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuMipmappedArrayCreate", 1);
  __Pyx_TraceCall("_cuMipmappedArrayCreate", __pyx_f[0], 3989, 1, __PYX_ERR(0, 3989, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":3991
 * cdef CUresult _cuMipmappedArrayCreate(CUmipmappedArray* pHandle, const CUDA_ARRAY3D_DESCRIPTOR* pMipmappedArrayDesc, unsigned int numMipmapLevels) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuMipmappedArrayCreate
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuMipmappedArrayCreate == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 3991, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":3992
 *     global __cuMipmappedArrayCreate
 *     cuPythonInit()
 *     if __cuMipmappedArrayCreate == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuMipmappedArrayCreate" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuMipmappedArrayCreate == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":3993
 *     cuPythonInit()
 *     if __cuMipmappedArrayCreate == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuMipmappedArrayCreate" not found')
 *     err = (<CUresult (*)(CUmipmappedArray*, const CUDA_ARRAY3D_DESCRIPTOR*, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMipmappedArrayCreate)(pHandle, pMipmappedArrayDesc, numMipmapLevels)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":3994
 *     if __cuMipmappedArrayCreate == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuMipmappedArrayCreate" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUmipmappedArray*, const CUDA_ARRAY3D_DESCRIPTOR*, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMipmappedArrayCreate)(pHandle, pMipmappedArrayDesc, numMipmapLevels)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__153, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 3994, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 3994, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":3993
 *     cuPythonInit()
 *     if __cuMipmappedArrayCreate == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuMipmappedArrayCreate" not found')
 *     err = (<CUresult (*)(CUmipmappedArray*, const CUDA_ARRAY3D_DESCRIPTOR*, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMipmappedArrayCreate)(pHandle, pMipmappedArrayDesc, numMipmapLevels)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":3992
 *     global __cuMipmappedArrayCreate
 *     cuPythonInit()
 *     if __cuMipmappedArrayCreate == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuMipmappedArrayCreate" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":3995
 *         with gil:
 *             raise RuntimeError('Function "cuMipmappedArrayCreate" not found')
 *     err = (<CUresult (*)(CUmipmappedArray*, const CUDA_ARRAY3D_DESCRIPTOR*, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMipmappedArrayCreate)(pHandle, pMipmappedArrayDesc, numMipmapLevels)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUmipmappedArray *, CUDA_ARRAY3D_DESCRIPTOR const *, unsigned int))__pyx_v_4cuda_5_cuda_5ccuda___cuMipmappedArrayCreate)(__pyx_v_pHandle, __pyx_v_pMipmappedArrayDesc, __pyx_v_numMipmapLevels); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 3995, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":3996
 *             raise RuntimeError('Function "cuMipmappedArrayCreate" not found')
 *     err = (<CUresult (*)(CUmipmappedArray*, const CUDA_ARRAY3D_DESCRIPTOR*, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMipmappedArrayCreate)(pHandle, pMipmappedArrayDesc, numMipmapLevels)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuMipmappedArrayGetLevel(CUarray* pLevelArray, CUmipmappedArray hMipmappedArray, unsigned int level) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":3989
 *     return err
 * 
 * cdef CUresult _cuMipmappedArrayCreate(CUmipmappedArray* pHandle, const CUDA_ARRAY3D_DESCRIPTOR* pMipmappedArrayDesc, unsigned int numMipmapLevels) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuMipmappedArrayCreate
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuMipmappedArrayCreate", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":3998
 *     return err
 * 
 * cdef CUresult _cuMipmappedArrayGetLevel(CUarray* pLevelArray, CUmipmappedArray hMipmappedArray, unsigned int level) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuMipmappedArrayGetLevel
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuMipmappedArrayGetLevel(CUarray *__pyx_v_pLevelArray, CUmipmappedArray __pyx_v_hMipmappedArray, unsigned int __pyx_v_level) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuMipmappedArrayGetLevel", 1);
  __Pyx_TraceCall("_cuMipmappedArrayGetLevel", __pyx_f[0], 3998, 1, __PYX_ERR(0, 3998, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":4000
 * cdef CUresult _cuMipmappedArrayGetLevel(CUarray* pLevelArray, CUmipmappedArray hMipmappedArray, unsigned int level) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuMipmappedArrayGetLevel
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuMipmappedArrayGetLevel == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 4000, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":4001
 *     global __cuMipmappedArrayGetLevel
 *     cuPythonInit()
 *     if __cuMipmappedArrayGetLevel == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuMipmappedArrayGetLevel" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuMipmappedArrayGetLevel == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":4002
 *     cuPythonInit()
 *     if __cuMipmappedArrayGetLevel == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuMipmappedArrayGetLevel" not found')
 *     err = (<CUresult (*)(CUarray*, CUmipmappedArray, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMipmappedArrayGetLevel)(pLevelArray, hMipmappedArray, level)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":4003
 *     if __cuMipmappedArrayGetLevel == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuMipmappedArrayGetLevel" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUarray*, CUmipmappedArray, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMipmappedArrayGetLevel)(pLevelArray, hMipmappedArray, level)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__154, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 4003, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 4003, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":4002
 *     cuPythonInit()
 *     if __cuMipmappedArrayGetLevel == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuMipmappedArrayGetLevel" not found')
 *     err = (<CUresult (*)(CUarray*, CUmipmappedArray, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMipmappedArrayGetLevel)(pLevelArray, hMipmappedArray, level)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":4001
 *     global __cuMipmappedArrayGetLevel
 *     cuPythonInit()
 *     if __cuMipmappedArrayGetLevel == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuMipmappedArrayGetLevel" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":4004
 *         with gil:
 *             raise RuntimeError('Function "cuMipmappedArrayGetLevel" not found')
 *     err = (<CUresult (*)(CUarray*, CUmipmappedArray, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMipmappedArrayGetLevel)(pLevelArray, hMipmappedArray, level)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUarray *, CUmipmappedArray, unsigned int))__pyx_v_4cuda_5_cuda_5ccuda___cuMipmappedArrayGetLevel)(__pyx_v_pLevelArray, __pyx_v_hMipmappedArray, __pyx_v_level); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 4004, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":4005
 *             raise RuntimeError('Function "cuMipmappedArrayGetLevel" not found')
 *     err = (<CUresult (*)(CUarray*, CUmipmappedArray, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMipmappedArrayGetLevel)(pLevelArray, hMipmappedArray, level)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuMipmappedArrayDestroy(CUmipmappedArray hMipmappedArray) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":3998
 *     return err
 * 
 * cdef CUresult _cuMipmappedArrayGetLevel(CUarray* pLevelArray, CUmipmappedArray hMipmappedArray, unsigned int level) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuMipmappedArrayGetLevel
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuMipmappedArrayGetLevel", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":4007
 *     return err
 * 
 * cdef CUresult _cuMipmappedArrayDestroy(CUmipmappedArray hMipmappedArray) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuMipmappedArrayDestroy
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuMipmappedArrayDestroy(CUmipmappedArray __pyx_v_hMipmappedArray) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuMipmappedArrayDestroy", 1);
  __Pyx_TraceCall("_cuMipmappedArrayDestroy", __pyx_f[0], 4007, 1, __PYX_ERR(0, 4007, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":4009
 * cdef CUresult _cuMipmappedArrayDestroy(CUmipmappedArray hMipmappedArray) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuMipmappedArrayDestroy
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuMipmappedArrayDestroy == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 4009, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":4010
 *     global __cuMipmappedArrayDestroy
 *     cuPythonInit()
 *     if __cuMipmappedArrayDestroy == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuMipmappedArrayDestroy" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuMipmappedArrayDestroy == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":4011
 *     cuPythonInit()
 *     if __cuMipmappedArrayDestroy == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuMipmappedArrayDestroy" not found')
 *     err = (<CUresult (*)(CUmipmappedArray) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMipmappedArrayDestroy)(hMipmappedArray)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":4012
 *     if __cuMipmappedArrayDestroy == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuMipmappedArrayDestroy" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUmipmappedArray) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMipmappedArrayDestroy)(hMipmappedArray)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__155, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 4012, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 4012, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":4011
 *     cuPythonInit()
 *     if __cuMipmappedArrayDestroy == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuMipmappedArrayDestroy" not found')
 *     err = (<CUresult (*)(CUmipmappedArray) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMipmappedArrayDestroy)(hMipmappedArray)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":4010
 *     global __cuMipmappedArrayDestroy
 *     cuPythonInit()
 *     if __cuMipmappedArrayDestroy == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuMipmappedArrayDestroy" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":4013
 *         with gil:
 *             raise RuntimeError('Function "cuMipmappedArrayDestroy" not found')
 *     err = (<CUresult (*)(CUmipmappedArray) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMipmappedArrayDestroy)(hMipmappedArray)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUmipmappedArray))__pyx_v_4cuda_5_cuda_5ccuda___cuMipmappedArrayDestroy)(__pyx_v_hMipmappedArray); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 4013, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":4014
 *             raise RuntimeError('Function "cuMipmappedArrayDestroy" not found')
 *     err = (<CUresult (*)(CUmipmappedArray) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMipmappedArrayDestroy)(hMipmappedArray)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuMemGetHandleForAddressRange(void* handle, CUdeviceptr dptr, size_t size, CUmemRangeHandleType handleType, unsigned long long flags) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":4007
 *     return err
 * 
 * cdef CUresult _cuMipmappedArrayDestroy(CUmipmappedArray hMipmappedArray) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuMipmappedArrayDestroy
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuMipmappedArrayDestroy", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":4016
 *     return err
 * 
 * cdef CUresult _cuMemGetHandleForAddressRange(void* handle, CUdeviceptr dptr, size_t size, CUmemRangeHandleType handleType, unsigned long long flags) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuMemGetHandleForAddressRange
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuMemGetHandleForAddressRange(void *__pyx_v_handle, CUdeviceptr __pyx_v_dptr, size_t __pyx_v_size, CUmemRangeHandleType __pyx_v_handleType, unsigned PY_LONG_LONG __pyx_v_flags) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuMemGetHandleForAddressRange", 1);
  __Pyx_TraceCall("_cuMemGetHandleForAddressRange", __pyx_f[0], 4016, 1, __PYX_ERR(0, 4016, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":4018
 * cdef CUresult _cuMemGetHandleForAddressRange(void* handle, CUdeviceptr dptr, size_t size, CUmemRangeHandleType handleType, unsigned long long flags) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuMemGetHandleForAddressRange
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuMemGetHandleForAddressRange == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 4018, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":4019
 *     global __cuMemGetHandleForAddressRange
 *     cuPythonInit()
 *     if __cuMemGetHandleForAddressRange == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuMemGetHandleForAddressRange" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuMemGetHandleForAddressRange == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":4020
 *     cuPythonInit()
 *     if __cuMemGetHandleForAddressRange == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuMemGetHandleForAddressRange" not found')
 *     err = (<CUresult (*)(void*, CUdeviceptr, size_t, CUmemRangeHandleType, unsigned long long) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemGetHandleForAddressRange)(handle, dptr, size, handleType, flags)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":4021
 *     if __cuMemGetHandleForAddressRange == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuMemGetHandleForAddressRange" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(void*, CUdeviceptr, size_t, CUmemRangeHandleType, unsigned long long) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemGetHandleForAddressRange)(handle, dptr, size, handleType, flags)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__156, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 4021, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 4021, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":4020
 *     cuPythonInit()
 *     if __cuMemGetHandleForAddressRange == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuMemGetHandleForAddressRange" not found')
 *     err = (<CUresult (*)(void*, CUdeviceptr, size_t, CUmemRangeHandleType, unsigned long long) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemGetHandleForAddressRange)(handle, dptr, size, handleType, flags)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":4019
 *     global __cuMemGetHandleForAddressRange
 *     cuPythonInit()
 *     if __cuMemGetHandleForAddressRange == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuMemGetHandleForAddressRange" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":4022
 *         with gil:
 *             raise RuntimeError('Function "cuMemGetHandleForAddressRange" not found')
 *     err = (<CUresult (*)(void*, CUdeviceptr, size_t, CUmemRangeHandleType, unsigned long long) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemGetHandleForAddressRange)(handle, dptr, size, handleType, flags)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(void *, CUdeviceptr, size_t, CUmemRangeHandleType, unsigned PY_LONG_LONG))__pyx_v_4cuda_5_cuda_5ccuda___cuMemGetHandleForAddressRange)(__pyx_v_handle, __pyx_v_dptr, __pyx_v_size, __pyx_v_handleType, __pyx_v_flags); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 4022, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":4023
 *             raise RuntimeError('Function "cuMemGetHandleForAddressRange" not found')
 *     err = (<CUresult (*)(void*, CUdeviceptr, size_t, CUmemRangeHandleType, unsigned long long) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemGetHandleForAddressRange)(handle, dptr, size, handleType, flags)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuMemAddressReserve(CUdeviceptr* ptr, size_t size, size_t alignment, CUdeviceptr addr, unsigned long long flags) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":4016
 *     return err
 * 
 * cdef CUresult _cuMemGetHandleForAddressRange(void* handle, CUdeviceptr dptr, size_t size, CUmemRangeHandleType handleType, unsigned long long flags) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuMemGetHandleForAddressRange
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuMemGetHandleForAddressRange", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":4025
 *     return err
 * 
 * cdef CUresult _cuMemAddressReserve(CUdeviceptr* ptr, size_t size, size_t alignment, CUdeviceptr addr, unsigned long long flags) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuMemAddressReserve
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuMemAddressReserve(CUdeviceptr *__pyx_v_ptr, size_t __pyx_v_size, size_t __pyx_v_alignment, CUdeviceptr __pyx_v_addr, unsigned PY_LONG_LONG __pyx_v_flags) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuMemAddressReserve", 1);
  __Pyx_TraceCall("_cuMemAddressReserve", __pyx_f[0], 4025, 1, __PYX_ERR(0, 4025, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":4027
 * cdef CUresult _cuMemAddressReserve(CUdeviceptr* ptr, size_t size, size_t alignment, CUdeviceptr addr, unsigned long long flags) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuMemAddressReserve
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuMemAddressReserve == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 4027, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":4028
 *     global __cuMemAddressReserve
 *     cuPythonInit()
 *     if __cuMemAddressReserve == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuMemAddressReserve" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuMemAddressReserve == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":4029
 *     cuPythonInit()
 *     if __cuMemAddressReserve == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuMemAddressReserve" not found')
 *     err = (<CUresult (*)(CUdeviceptr*, size_t, size_t, CUdeviceptr, unsigned long long) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemAddressReserve)(ptr, size, alignment, addr, flags)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":4030
 *     if __cuMemAddressReserve == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuMemAddressReserve" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUdeviceptr*, size_t, size_t, CUdeviceptr, unsigned long long) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemAddressReserve)(ptr, size, alignment, addr, flags)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__157, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 4030, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 4030, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":4029
 *     cuPythonInit()
 *     if __cuMemAddressReserve == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuMemAddressReserve" not found')
 *     err = (<CUresult (*)(CUdeviceptr*, size_t, size_t, CUdeviceptr, unsigned long long) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemAddressReserve)(ptr, size, alignment, addr, flags)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":4028
 *     global __cuMemAddressReserve
 *     cuPythonInit()
 *     if __cuMemAddressReserve == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuMemAddressReserve" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":4031
 *         with gil:
 *             raise RuntimeError('Function "cuMemAddressReserve" not found')
 *     err = (<CUresult (*)(CUdeviceptr*, size_t, size_t, CUdeviceptr, unsigned long long) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemAddressReserve)(ptr, size, alignment, addr, flags)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUdeviceptr *, size_t, size_t, CUdeviceptr, unsigned PY_LONG_LONG))__pyx_v_4cuda_5_cuda_5ccuda___cuMemAddressReserve)(__pyx_v_ptr, __pyx_v_size, __pyx_v_alignment, __pyx_v_addr, __pyx_v_flags); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 4031, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":4032
 *             raise RuntimeError('Function "cuMemAddressReserve" not found')
 *     err = (<CUresult (*)(CUdeviceptr*, size_t, size_t, CUdeviceptr, unsigned long long) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemAddressReserve)(ptr, size, alignment, addr, flags)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuMemAddressFree(CUdeviceptr ptr, size_t size) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":4025
 *     return err
 * 
 * cdef CUresult _cuMemAddressReserve(CUdeviceptr* ptr, size_t size, size_t alignment, CUdeviceptr addr, unsigned long long flags) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuMemAddressReserve
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuMemAddressReserve", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":4034
 *     return err
 * 
 * cdef CUresult _cuMemAddressFree(CUdeviceptr ptr, size_t size) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuMemAddressFree
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuMemAddressFree(CUdeviceptr __pyx_v_ptr, size_t __pyx_v_size) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuMemAddressFree", 1);
  __Pyx_TraceCall("_cuMemAddressFree", __pyx_f[0], 4034, 1, __PYX_ERR(0, 4034, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":4036
 * cdef CUresult _cuMemAddressFree(CUdeviceptr ptr, size_t size) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuMemAddressFree
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuMemAddressFree == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 4036, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":4037
 *     global __cuMemAddressFree
 *     cuPythonInit()
 *     if __cuMemAddressFree == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuMemAddressFree" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuMemAddressFree == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":4038
 *     cuPythonInit()
 *     if __cuMemAddressFree == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuMemAddressFree" not found')
 *     err = (<CUresult (*)(CUdeviceptr, size_t) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemAddressFree)(ptr, size)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":4039
 *     if __cuMemAddressFree == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuMemAddressFree" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUdeviceptr, size_t) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemAddressFree)(ptr, size)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__158, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 4039, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 4039, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":4038
 *     cuPythonInit()
 *     if __cuMemAddressFree == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuMemAddressFree" not found')
 *     err = (<CUresult (*)(CUdeviceptr, size_t) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemAddressFree)(ptr, size)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":4037
 *     global __cuMemAddressFree
 *     cuPythonInit()
 *     if __cuMemAddressFree == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuMemAddressFree" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":4040
 *         with gil:
 *             raise RuntimeError('Function "cuMemAddressFree" not found')
 *     err = (<CUresult (*)(CUdeviceptr, size_t) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemAddressFree)(ptr, size)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUdeviceptr, size_t))__pyx_v_4cuda_5_cuda_5ccuda___cuMemAddressFree)(__pyx_v_ptr, __pyx_v_size); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 4040, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":4041
 *             raise RuntimeError('Function "cuMemAddressFree" not found')
 *     err = (<CUresult (*)(CUdeviceptr, size_t) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemAddressFree)(ptr, size)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuMemCreate(CUmemGenericAllocationHandle* handle, size_t size, const CUmemAllocationProp* prop, unsigned long long flags) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":4034
 *     return err
 * 
 * cdef CUresult _cuMemAddressFree(CUdeviceptr ptr, size_t size) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuMemAddressFree
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuMemAddressFree", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":4043
 *     return err
 * 
 * cdef CUresult _cuMemCreate(CUmemGenericAllocationHandle* handle, size_t size, const CUmemAllocationProp* prop, unsigned long long flags) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuMemCreate
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuMemCreate(CUmemGenericAllocationHandle *__pyx_v_handle, size_t __pyx_v_size, CUmemAllocationProp const *__pyx_v_prop, unsigned PY_LONG_LONG __pyx_v_flags) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuMemCreate", 1);
  __Pyx_TraceCall("_cuMemCreate", __pyx_f[0], 4043, 1, __PYX_ERR(0, 4043, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":4045
 * cdef CUresult _cuMemCreate(CUmemGenericAllocationHandle* handle, size_t size, const CUmemAllocationProp* prop, unsigned long long flags) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuMemCreate
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuMemCreate == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 4045, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":4046
 *     global __cuMemCreate
 *     cuPythonInit()
 *     if __cuMemCreate == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuMemCreate" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuMemCreate == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":4047
 *     cuPythonInit()
 *     if __cuMemCreate == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuMemCreate" not found')
 *     err = (<CUresult (*)(CUmemGenericAllocationHandle*, size_t, const CUmemAllocationProp*, unsigned long long) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemCreate)(handle, size, prop, flags)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":4048
 *     if __cuMemCreate == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuMemCreate" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUmemGenericAllocationHandle*, size_t, const CUmemAllocationProp*, unsigned long long) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemCreate)(handle, size, prop, flags)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__159, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 4048, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 4048, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":4047
 *     cuPythonInit()
 *     if __cuMemCreate == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuMemCreate" not found')
 *     err = (<CUresult (*)(CUmemGenericAllocationHandle*, size_t, const CUmemAllocationProp*, unsigned long long) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemCreate)(handle, size, prop, flags)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":4046
 *     global __cuMemCreate
 *     cuPythonInit()
 *     if __cuMemCreate == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuMemCreate" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":4049
 *         with gil:
 *             raise RuntimeError('Function "cuMemCreate" not found')
 *     err = (<CUresult (*)(CUmemGenericAllocationHandle*, size_t, const CUmemAllocationProp*, unsigned long long) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemCreate)(handle, size, prop, flags)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUmemGenericAllocationHandle *, size_t, CUmemAllocationProp const *, unsigned PY_LONG_LONG))__pyx_v_4cuda_5_cuda_5ccuda___cuMemCreate)(__pyx_v_handle, __pyx_v_size, __pyx_v_prop, __pyx_v_flags); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 4049, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":4050
 *             raise RuntimeError('Function "cuMemCreate" not found')
 *     err = (<CUresult (*)(CUmemGenericAllocationHandle*, size_t, const CUmemAllocationProp*, unsigned long long) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemCreate)(handle, size, prop, flags)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuMemRelease(CUmemGenericAllocationHandle handle) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":4043
 *     return err
 * 
 * cdef CUresult _cuMemCreate(CUmemGenericAllocationHandle* handle, size_t size, const CUmemAllocationProp* prop, unsigned long long flags) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuMemCreate
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuMemCreate", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":4052
 *     return err
 * 
 * cdef CUresult _cuMemRelease(CUmemGenericAllocationHandle handle) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuMemRelease
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuMemRelease(CUmemGenericAllocationHandle __pyx_v_handle) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuMemRelease", 1);
  __Pyx_TraceCall("_cuMemRelease", __pyx_f[0], 4052, 1, __PYX_ERR(0, 4052, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":4054
 * cdef CUresult _cuMemRelease(CUmemGenericAllocationHandle handle) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuMemRelease
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuMemRelease == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 4054, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":4055
 *     global __cuMemRelease
 *     cuPythonInit()
 *     if __cuMemRelease == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuMemRelease" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuMemRelease == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":4056
 *     cuPythonInit()
 *     if __cuMemRelease == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuMemRelease" not found')
 *     err = (<CUresult (*)(CUmemGenericAllocationHandle) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemRelease)(handle)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":4057
 *     if __cuMemRelease == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuMemRelease" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUmemGenericAllocationHandle) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemRelease)(handle)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__160, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 4057, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 4057, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":4056
 *     cuPythonInit()
 *     if __cuMemRelease == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuMemRelease" not found')
 *     err = (<CUresult (*)(CUmemGenericAllocationHandle) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemRelease)(handle)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":4055
 *     global __cuMemRelease
 *     cuPythonInit()
 *     if __cuMemRelease == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuMemRelease" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":4058
 *         with gil:
 *             raise RuntimeError('Function "cuMemRelease" not found')
 *     err = (<CUresult (*)(CUmemGenericAllocationHandle) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemRelease)(handle)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUmemGenericAllocationHandle))__pyx_v_4cuda_5_cuda_5ccuda___cuMemRelease)(__pyx_v_handle); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 4058, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":4059
 *             raise RuntimeError('Function "cuMemRelease" not found')
 *     err = (<CUresult (*)(CUmemGenericAllocationHandle) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemRelease)(handle)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuMemMap(CUdeviceptr ptr, size_t size, size_t offset, CUmemGenericAllocationHandle handle, unsigned long long flags) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":4052
 *     return err
 * 
 * cdef CUresult _cuMemRelease(CUmemGenericAllocationHandle handle) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuMemRelease
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuMemRelease", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":4061
 *     return err
 * 
 * cdef CUresult _cuMemMap(CUdeviceptr ptr, size_t size, size_t offset, CUmemGenericAllocationHandle handle, unsigned long long flags) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuMemMap
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuMemMap(CUdeviceptr __pyx_v_ptr, size_t __pyx_v_size, size_t __pyx_v_offset, CUmemGenericAllocationHandle __pyx_v_handle, unsigned PY_LONG_LONG __pyx_v_flags) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuMemMap", 1);
  __Pyx_TraceCall("_cuMemMap", __pyx_f[0], 4061, 1, __PYX_ERR(0, 4061, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":4063
 * cdef CUresult _cuMemMap(CUdeviceptr ptr, size_t size, size_t offset, CUmemGenericAllocationHandle handle, unsigned long long flags) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuMemMap
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuMemMap == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 4063, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":4064
 *     global __cuMemMap
 *     cuPythonInit()
 *     if __cuMemMap == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuMemMap" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuMemMap == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":4065
 *     cuPythonInit()
 *     if __cuMemMap == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuMemMap" not found')
 *     err = (<CUresult (*)(CUdeviceptr, size_t, size_t, CUmemGenericAllocationHandle, unsigned long long) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemMap)(ptr, size, offset, handle, flags)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":4066
 *     if __cuMemMap == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuMemMap" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUdeviceptr, size_t, size_t, CUmemGenericAllocationHandle, unsigned long long) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemMap)(ptr, size, offset, handle, flags)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__161, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 4066, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 4066, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":4065
 *     cuPythonInit()
 *     if __cuMemMap == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuMemMap" not found')
 *     err = (<CUresult (*)(CUdeviceptr, size_t, size_t, CUmemGenericAllocationHandle, unsigned long long) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemMap)(ptr, size, offset, handle, flags)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":4064
 *     global __cuMemMap
 *     cuPythonInit()
 *     if __cuMemMap == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuMemMap" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":4067
 *         with gil:
 *             raise RuntimeError('Function "cuMemMap" not found')
 *     err = (<CUresult (*)(CUdeviceptr, size_t, size_t, CUmemGenericAllocationHandle, unsigned long long) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemMap)(ptr, size, offset, handle, flags)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUdeviceptr, size_t, size_t, CUmemGenericAllocationHandle, unsigned PY_LONG_LONG))__pyx_v_4cuda_5_cuda_5ccuda___cuMemMap)(__pyx_v_ptr, __pyx_v_size, __pyx_v_offset, __pyx_v_handle, __pyx_v_flags); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 4067, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":4068
 *             raise RuntimeError('Function "cuMemMap" not found')
 *     err = (<CUresult (*)(CUdeviceptr, size_t, size_t, CUmemGenericAllocationHandle, unsigned long long) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemMap)(ptr, size, offset, handle, flags)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuMemMapArrayAsync(CUarrayMapInfo* mapInfoList, unsigned int count, CUstream hStream) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":4061
 *     return err
 * 
 * cdef CUresult _cuMemMap(CUdeviceptr ptr, size_t size, size_t offset, CUmemGenericAllocationHandle handle, unsigned long long flags) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuMemMap
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuMemMap", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":4070
 *     return err
 * 
 * cdef CUresult _cuMemMapArrayAsync(CUarrayMapInfo* mapInfoList, unsigned int count, CUstream hStream) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuMemMapArrayAsync
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuMemMapArrayAsync(CUarrayMapInfo *__pyx_v_mapInfoList, unsigned int __pyx_v_count, CUstream __pyx_v_hStream) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuMemMapArrayAsync", 1);
  __Pyx_TraceCall("_cuMemMapArrayAsync", __pyx_f[0], 4070, 1, __PYX_ERR(0, 4070, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":4072
 * cdef CUresult _cuMemMapArrayAsync(CUarrayMapInfo* mapInfoList, unsigned int count, CUstream hStream) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuMemMapArrayAsync
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuMemMapArrayAsync == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 4072, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":4073
 *     global __cuMemMapArrayAsync
 *     cuPythonInit()
 *     if __cuMemMapArrayAsync == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuMemMapArrayAsync" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuMemMapArrayAsync == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":4074
 *     cuPythonInit()
 *     if __cuMemMapArrayAsync == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuMemMapArrayAsync" not found')
 *     err = (<CUresult (*)(CUarrayMapInfo*, unsigned int, CUstream) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemMapArrayAsync)(mapInfoList, count, hStream)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":4075
 *     if __cuMemMapArrayAsync == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuMemMapArrayAsync" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUarrayMapInfo*, unsigned int, CUstream) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemMapArrayAsync)(mapInfoList, count, hStream)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__162, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 4075, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 4075, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":4074
 *     cuPythonInit()
 *     if __cuMemMapArrayAsync == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuMemMapArrayAsync" not found')
 *     err = (<CUresult (*)(CUarrayMapInfo*, unsigned int, CUstream) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemMapArrayAsync)(mapInfoList, count, hStream)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":4073
 *     global __cuMemMapArrayAsync
 *     cuPythonInit()
 *     if __cuMemMapArrayAsync == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuMemMapArrayAsync" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":4076
 *         with gil:
 *             raise RuntimeError('Function "cuMemMapArrayAsync" not found')
 *     err = (<CUresult (*)(CUarrayMapInfo*, unsigned int, CUstream) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemMapArrayAsync)(mapInfoList, count, hStream)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUarrayMapInfo *, unsigned int, CUstream))__pyx_v_4cuda_5_cuda_5ccuda___cuMemMapArrayAsync)(__pyx_v_mapInfoList, __pyx_v_count, __pyx_v_hStream); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 4076, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":4077
 *             raise RuntimeError('Function "cuMemMapArrayAsync" not found')
 *     err = (<CUresult (*)(CUarrayMapInfo*, unsigned int, CUstream) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemMapArrayAsync)(mapInfoList, count, hStream)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuMemUnmap(CUdeviceptr ptr, size_t size) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":4070
 *     return err
 * 
 * cdef CUresult _cuMemMapArrayAsync(CUarrayMapInfo* mapInfoList, unsigned int count, CUstream hStream) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuMemMapArrayAsync
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuMemMapArrayAsync", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":4079
 *     return err
 * 
 * cdef CUresult _cuMemUnmap(CUdeviceptr ptr, size_t size) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuMemUnmap
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuMemUnmap(CUdeviceptr __pyx_v_ptr, size_t __pyx_v_size) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuMemUnmap", 1);
  __Pyx_TraceCall("_cuMemUnmap", __pyx_f[0], 4079, 1, __PYX_ERR(0, 4079, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":4081
 * cdef CUresult _cuMemUnmap(CUdeviceptr ptr, size_t size) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuMemUnmap
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuMemUnmap == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 4081, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":4082
 *     global __cuMemUnmap
 *     cuPythonInit()
 *     if __cuMemUnmap == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuMemUnmap" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuMemUnmap == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":4083
 *     cuPythonInit()
 *     if __cuMemUnmap == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuMemUnmap" not found')
 *     err = (<CUresult (*)(CUdeviceptr, size_t) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemUnmap)(ptr, size)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":4084
 *     if __cuMemUnmap == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuMemUnmap" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUdeviceptr, size_t) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemUnmap)(ptr, size)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__163, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 4084, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 4084, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":4083
 *     cuPythonInit()
 *     if __cuMemUnmap == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuMemUnmap" not found')
 *     err = (<CUresult (*)(CUdeviceptr, size_t) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemUnmap)(ptr, size)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":4082
 *     global __cuMemUnmap
 *     cuPythonInit()
 *     if __cuMemUnmap == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuMemUnmap" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":4085
 *         with gil:
 *             raise RuntimeError('Function "cuMemUnmap" not found')
 *     err = (<CUresult (*)(CUdeviceptr, size_t) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemUnmap)(ptr, size)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUdeviceptr, size_t))__pyx_v_4cuda_5_cuda_5ccuda___cuMemUnmap)(__pyx_v_ptr, __pyx_v_size); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 4085, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":4086
 *             raise RuntimeError('Function "cuMemUnmap" not found')
 *     err = (<CUresult (*)(CUdeviceptr, size_t) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemUnmap)(ptr, size)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuMemSetAccess(CUdeviceptr ptr, size_t size, const CUmemAccessDesc* desc, size_t count) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":4079
 *     return err
 * 
 * cdef CUresult _cuMemUnmap(CUdeviceptr ptr, size_t size) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuMemUnmap
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuMemUnmap", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":4088
 *     return err
 * 
 * cdef CUresult _cuMemSetAccess(CUdeviceptr ptr, size_t size, const CUmemAccessDesc* desc, size_t count) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuMemSetAccess
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuMemSetAccess(CUdeviceptr __pyx_v_ptr, size_t __pyx_v_size, CUmemAccessDesc const *__pyx_v_desc, size_t __pyx_v_count) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuMemSetAccess", 1);
  __Pyx_TraceCall("_cuMemSetAccess", __pyx_f[0], 4088, 1, __PYX_ERR(0, 4088, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":4090
 * cdef CUresult _cuMemSetAccess(CUdeviceptr ptr, size_t size, const CUmemAccessDesc* desc, size_t count) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuMemSetAccess
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuMemSetAccess == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 4090, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":4091
 *     global __cuMemSetAccess
 *     cuPythonInit()
 *     if __cuMemSetAccess == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuMemSetAccess" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuMemSetAccess == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":4092
 *     cuPythonInit()
 *     if __cuMemSetAccess == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuMemSetAccess" not found')
 *     err = (<CUresult (*)(CUdeviceptr, size_t, const CUmemAccessDesc*, size_t) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemSetAccess)(ptr, size, desc, count)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":4093
 *     if __cuMemSetAccess == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuMemSetAccess" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUdeviceptr, size_t, const CUmemAccessDesc*, size_t) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemSetAccess)(ptr, size, desc, count)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__164, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 4093, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 4093, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":4092
 *     cuPythonInit()
 *     if __cuMemSetAccess == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuMemSetAccess" not found')
 *     err = (<CUresult (*)(CUdeviceptr, size_t, const CUmemAccessDesc*, size_t) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemSetAccess)(ptr, size, desc, count)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":4091
 *     global __cuMemSetAccess
 *     cuPythonInit()
 *     if __cuMemSetAccess == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuMemSetAccess" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":4094
 *         with gil:
 *             raise RuntimeError('Function "cuMemSetAccess" not found')
 *     err = (<CUresult (*)(CUdeviceptr, size_t, const CUmemAccessDesc*, size_t) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemSetAccess)(ptr, size, desc, count)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUdeviceptr, size_t, CUmemAccessDesc const *, size_t))__pyx_v_4cuda_5_cuda_5ccuda___cuMemSetAccess)(__pyx_v_ptr, __pyx_v_size, __pyx_v_desc, __pyx_v_count); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 4094, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":4095
 *             raise RuntimeError('Function "cuMemSetAccess" not found')
 *     err = (<CUresult (*)(CUdeviceptr, size_t, const CUmemAccessDesc*, size_t) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemSetAccess)(ptr, size, desc, count)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuMemGetAccess(unsigned long long* flags, const CUmemLocation* location, CUdeviceptr ptr) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":4088
 *     return err
 * 
 * cdef CUresult _cuMemSetAccess(CUdeviceptr ptr, size_t size, const CUmemAccessDesc* desc, size_t count) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuMemSetAccess
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuMemSetAccess", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":4097
 *     return err
 * 
 * cdef CUresult _cuMemGetAccess(unsigned long long* flags, const CUmemLocation* location, CUdeviceptr ptr) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuMemGetAccess
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuMemGetAccess(unsigned PY_LONG_LONG *__pyx_v_flags, CUmemLocation const *__pyx_v_location, CUdeviceptr __pyx_v_ptr) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuMemGetAccess", 1);
  __Pyx_TraceCall("_cuMemGetAccess", __pyx_f[0], 4097, 1, __PYX_ERR(0, 4097, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":4099
 * cdef CUresult _cuMemGetAccess(unsigned long long* flags, const CUmemLocation* location, CUdeviceptr ptr) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuMemGetAccess
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuMemGetAccess == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 4099, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":4100
 *     global __cuMemGetAccess
 *     cuPythonInit()
 *     if __cuMemGetAccess == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuMemGetAccess" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuMemGetAccess == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":4101
 *     cuPythonInit()
 *     if __cuMemGetAccess == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuMemGetAccess" not found')
 *     err = (<CUresult (*)(unsigned long long*, const CUmemLocation*, CUdeviceptr) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemGetAccess)(flags, location, ptr)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":4102
 *     if __cuMemGetAccess == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuMemGetAccess" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(unsigned long long*, const CUmemLocation*, CUdeviceptr) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemGetAccess)(flags, location, ptr)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__165, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 4102, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 4102, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":4101
 *     cuPythonInit()
 *     if __cuMemGetAccess == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuMemGetAccess" not found')
 *     err = (<CUresult (*)(unsigned long long*, const CUmemLocation*, CUdeviceptr) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemGetAccess)(flags, location, ptr)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":4100
 *     global __cuMemGetAccess
 *     cuPythonInit()
 *     if __cuMemGetAccess == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuMemGetAccess" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":4103
 *         with gil:
 *             raise RuntimeError('Function "cuMemGetAccess" not found')
 *     err = (<CUresult (*)(unsigned long long*, const CUmemLocation*, CUdeviceptr) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemGetAccess)(flags, location, ptr)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(unsigned PY_LONG_LONG *, CUmemLocation const *, CUdeviceptr))__pyx_v_4cuda_5_cuda_5ccuda___cuMemGetAccess)(__pyx_v_flags, __pyx_v_location, __pyx_v_ptr); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 4103, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":4104
 *             raise RuntimeError('Function "cuMemGetAccess" not found')
 *     err = (<CUresult (*)(unsigned long long*, const CUmemLocation*, CUdeviceptr) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemGetAccess)(flags, location, ptr)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuMemExportToShareableHandle(void* shareableHandle, CUmemGenericAllocationHandle handle, CUmemAllocationHandleType handleType, unsigned long long flags) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":4097
 *     return err
 * 
 * cdef CUresult _cuMemGetAccess(unsigned long long* flags, const CUmemLocation* location, CUdeviceptr ptr) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuMemGetAccess
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuMemGetAccess", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":4106
 *     return err
 * 
 * cdef CUresult _cuMemExportToShareableHandle(void* shareableHandle, CUmemGenericAllocationHandle handle, CUmemAllocationHandleType handleType, unsigned long long flags) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuMemExportToShareableHandle
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuMemExportToShareableHandle(void *__pyx_v_shareableHandle, CUmemGenericAllocationHandle __pyx_v_handle, CUmemAllocationHandleType __pyx_v_handleType, unsigned PY_LONG_LONG __pyx_v_flags) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuMemExportToShareableHandle", 1);
  __Pyx_TraceCall("_cuMemExportToShareableHandle", __pyx_f[0], 4106, 1, __PYX_ERR(0, 4106, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":4108
 * cdef CUresult _cuMemExportToShareableHandle(void* shareableHandle, CUmemGenericAllocationHandle handle, CUmemAllocationHandleType handleType, unsigned long long flags) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuMemExportToShareableHandle
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuMemExportToShareableHandle == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 4108, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":4109
 *     global __cuMemExportToShareableHandle
 *     cuPythonInit()
 *     if __cuMemExportToShareableHandle == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuMemExportToShareableHandle" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuMemExportToShareableHandle == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":4110
 *     cuPythonInit()
 *     if __cuMemExportToShareableHandle == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuMemExportToShareableHandle" not found')
 *     err = (<CUresult (*)(void*, CUmemGenericAllocationHandle, CUmemAllocationHandleType, unsigned long long) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemExportToShareableHandle)(shareableHandle, handle, handleType, flags)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":4111
 *     if __cuMemExportToShareableHandle == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuMemExportToShareableHandle" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(void*, CUmemGenericAllocationHandle, CUmemAllocationHandleType, unsigned long long) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemExportToShareableHandle)(shareableHandle, handle, handleType, flags)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__166, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 4111, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 4111, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":4110
 *     cuPythonInit()
 *     if __cuMemExportToShareableHandle == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuMemExportToShareableHandle" not found')
 *     err = (<CUresult (*)(void*, CUmemGenericAllocationHandle, CUmemAllocationHandleType, unsigned long long) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemExportToShareableHandle)(shareableHandle, handle, handleType, flags)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":4109
 *     global __cuMemExportToShareableHandle
 *     cuPythonInit()
 *     if __cuMemExportToShareableHandle == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuMemExportToShareableHandle" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":4112
 *         with gil:
 *             raise RuntimeError('Function "cuMemExportToShareableHandle" not found')
 *     err = (<CUresult (*)(void*, CUmemGenericAllocationHandle, CUmemAllocationHandleType, unsigned long long) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemExportToShareableHandle)(shareableHandle, handle, handleType, flags)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(void *, CUmemGenericAllocationHandle, CUmemAllocationHandleType, unsigned PY_LONG_LONG))__pyx_v_4cuda_5_cuda_5ccuda___cuMemExportToShareableHandle)(__pyx_v_shareableHandle, __pyx_v_handle, __pyx_v_handleType, __pyx_v_flags); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 4112, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":4113
 *             raise RuntimeError('Function "cuMemExportToShareableHandle" not found')
 *     err = (<CUresult (*)(void*, CUmemGenericAllocationHandle, CUmemAllocationHandleType, unsigned long long) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemExportToShareableHandle)(shareableHandle, handle, handleType, flags)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuMemImportFromShareableHandle(CUmemGenericAllocationHandle* handle, void* osHandle, CUmemAllocationHandleType shHandleType) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":4106
 *     return err
 * 
 * cdef CUresult _cuMemExportToShareableHandle(void* shareableHandle, CUmemGenericAllocationHandle handle, CUmemAllocationHandleType handleType, unsigned long long flags) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuMemExportToShareableHandle
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuMemExportToShareableHandle", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":4115
 *     return err
 * 
 * cdef CUresult _cuMemImportFromShareableHandle(CUmemGenericAllocationHandle* handle, void* osHandle, CUmemAllocationHandleType shHandleType) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuMemImportFromShareableHandle
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuMemImportFromShareableHandle(CUmemGenericAllocationHandle *__pyx_v_handle, void *__pyx_v_osHandle, CUmemAllocationHandleType __pyx_v_shHandleType) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuMemImportFromShareableHandle", 1);
  __Pyx_TraceCall("_cuMemImportFromShareableHandle", __pyx_f[0], 4115, 1, __PYX_ERR(0, 4115, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":4117
 * cdef CUresult _cuMemImportFromShareableHandle(CUmemGenericAllocationHandle* handle, void* osHandle, CUmemAllocationHandleType shHandleType) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuMemImportFromShareableHandle
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuMemImportFromShareableHandle == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 4117, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":4118
 *     global __cuMemImportFromShareableHandle
 *     cuPythonInit()
 *     if __cuMemImportFromShareableHandle == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuMemImportFromShareableHandle" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuMemImportFromShareableHandle == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":4119
 *     cuPythonInit()
 *     if __cuMemImportFromShareableHandle == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuMemImportFromShareableHandle" not found')
 *     err = (<CUresult (*)(CUmemGenericAllocationHandle*, void*, CUmemAllocationHandleType) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemImportFromShareableHandle)(handle, osHandle, shHandleType)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":4120
 *     if __cuMemImportFromShareableHandle == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuMemImportFromShareableHandle" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUmemGenericAllocationHandle*, void*, CUmemAllocationHandleType) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemImportFromShareableHandle)(handle, osHandle, shHandleType)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__167, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 4120, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 4120, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":4119
 *     cuPythonInit()
 *     if __cuMemImportFromShareableHandle == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuMemImportFromShareableHandle" not found')
 *     err = (<CUresult (*)(CUmemGenericAllocationHandle*, void*, CUmemAllocationHandleType) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemImportFromShareableHandle)(handle, osHandle, shHandleType)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":4118
 *     global __cuMemImportFromShareableHandle
 *     cuPythonInit()
 *     if __cuMemImportFromShareableHandle == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuMemImportFromShareableHandle" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":4121
 *         with gil:
 *             raise RuntimeError('Function "cuMemImportFromShareableHandle" not found')
 *     err = (<CUresult (*)(CUmemGenericAllocationHandle*, void*, CUmemAllocationHandleType) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemImportFromShareableHandle)(handle, osHandle, shHandleType)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUmemGenericAllocationHandle *, void *, CUmemAllocationHandleType))__pyx_v_4cuda_5_cuda_5ccuda___cuMemImportFromShareableHandle)(__pyx_v_handle, __pyx_v_osHandle, __pyx_v_shHandleType); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 4121, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":4122
 *             raise RuntimeError('Function "cuMemImportFromShareableHandle" not found')
 *     err = (<CUresult (*)(CUmemGenericAllocationHandle*, void*, CUmemAllocationHandleType) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemImportFromShareableHandle)(handle, osHandle, shHandleType)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuMemGetAllocationGranularity(size_t* granularity, const CUmemAllocationProp* prop, CUmemAllocationGranularity_flags option) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":4115
 *     return err
 * 
 * cdef CUresult _cuMemImportFromShareableHandle(CUmemGenericAllocationHandle* handle, void* osHandle, CUmemAllocationHandleType shHandleType) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuMemImportFromShareableHandle
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuMemImportFromShareableHandle", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":4124
 *     return err
 * 
 * cdef CUresult _cuMemGetAllocationGranularity(size_t* granularity, const CUmemAllocationProp* prop, CUmemAllocationGranularity_flags option) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuMemGetAllocationGranularity
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuMemGetAllocationGranularity(size_t *__pyx_v_granularity, CUmemAllocationProp const *__pyx_v_prop, CUmemAllocationGranularity_flags __pyx_v_option) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuMemGetAllocationGranularity", 1);
  __Pyx_TraceCall("_cuMemGetAllocationGranularity", __pyx_f[0], 4124, 1, __PYX_ERR(0, 4124, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":4126
 * cdef CUresult _cuMemGetAllocationGranularity(size_t* granularity, const CUmemAllocationProp* prop, CUmemAllocationGranularity_flags option) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuMemGetAllocationGranularity
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuMemGetAllocationGranularity == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 4126, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":4127
 *     global __cuMemGetAllocationGranularity
 *     cuPythonInit()
 *     if __cuMemGetAllocationGranularity == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuMemGetAllocationGranularity" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuMemGetAllocationGranularity == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":4128
 *     cuPythonInit()
 *     if __cuMemGetAllocationGranularity == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuMemGetAllocationGranularity" not found')
 *     err = (<CUresult (*)(size_t*, const CUmemAllocationProp*, CUmemAllocationGranularity_flags) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemGetAllocationGranularity)(granularity, prop, option)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":4129
 *     if __cuMemGetAllocationGranularity == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuMemGetAllocationGranularity" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(size_t*, const CUmemAllocationProp*, CUmemAllocationGranularity_flags) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemGetAllocationGranularity)(granularity, prop, option)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__168, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 4129, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 4129, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":4128
 *     cuPythonInit()
 *     if __cuMemGetAllocationGranularity == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuMemGetAllocationGranularity" not found')
 *     err = (<CUresult (*)(size_t*, const CUmemAllocationProp*, CUmemAllocationGranularity_flags) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemGetAllocationGranularity)(granularity, prop, option)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":4127
 *     global __cuMemGetAllocationGranularity
 *     cuPythonInit()
 *     if __cuMemGetAllocationGranularity == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuMemGetAllocationGranularity" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":4130
 *         with gil:
 *             raise RuntimeError('Function "cuMemGetAllocationGranularity" not found')
 *     err = (<CUresult (*)(size_t*, const CUmemAllocationProp*, CUmemAllocationGranularity_flags) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemGetAllocationGranularity)(granularity, prop, option)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(size_t *, CUmemAllocationProp const *, CUmemAllocationGranularity_flags))__pyx_v_4cuda_5_cuda_5ccuda___cuMemGetAllocationGranularity)(__pyx_v_granularity, __pyx_v_prop, __pyx_v_option); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 4130, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":4131
 *             raise RuntimeError('Function "cuMemGetAllocationGranularity" not found')
 *     err = (<CUresult (*)(size_t*, const CUmemAllocationProp*, CUmemAllocationGranularity_flags) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemGetAllocationGranularity)(granularity, prop, option)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuMemGetAllocationPropertiesFromHandle(CUmemAllocationProp* prop, CUmemGenericAllocationHandle handle) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":4124
 *     return err
 * 
 * cdef CUresult _cuMemGetAllocationGranularity(size_t* granularity, const CUmemAllocationProp* prop, CUmemAllocationGranularity_flags option) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuMemGetAllocationGranularity
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuMemGetAllocationGranularity", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":4133
 *     return err
 * 
 * cdef CUresult _cuMemGetAllocationPropertiesFromHandle(CUmemAllocationProp* prop, CUmemGenericAllocationHandle handle) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuMemGetAllocationPropertiesFromHandle
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuMemGetAllocationPropertiesFromHandle(CUmemAllocationProp *__pyx_v_prop, CUmemGenericAllocationHandle __pyx_v_handle) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuMemGetAllocationPropertiesFromHandle", 1);
  __Pyx_TraceCall("_cuMemGetAllocationPropertiesFromHandle", __pyx_f[0], 4133, 1, __PYX_ERR(0, 4133, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":4135
 * cdef CUresult _cuMemGetAllocationPropertiesFromHandle(CUmemAllocationProp* prop, CUmemGenericAllocationHandle handle) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuMemGetAllocationPropertiesFromHandle
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuMemGetAllocationPropertiesFromHandle == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 4135, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":4136
 *     global __cuMemGetAllocationPropertiesFromHandle
 *     cuPythonInit()
 *     if __cuMemGetAllocationPropertiesFromHandle == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuMemGetAllocationPropertiesFromHandle" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuMemGetAllocationPropertiesFromHandle == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":4137
 *     cuPythonInit()
 *     if __cuMemGetAllocationPropertiesFromHandle == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuMemGetAllocationPropertiesFromHandle" not found')
 *     err = (<CUresult (*)(CUmemAllocationProp*, CUmemGenericAllocationHandle) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemGetAllocationPropertiesFromHandle)(prop, handle)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":4138
 *     if __cuMemGetAllocationPropertiesFromHandle == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuMemGetAllocationPropertiesFromHandle" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUmemAllocationProp*, CUmemGenericAllocationHandle) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemGetAllocationPropertiesFromHandle)(prop, handle)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__169, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 4138, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 4138, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":4137
 *     cuPythonInit()
 *     if __cuMemGetAllocationPropertiesFromHandle == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuMemGetAllocationPropertiesFromHandle" not found')
 *     err = (<CUresult (*)(CUmemAllocationProp*, CUmemGenericAllocationHandle) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemGetAllocationPropertiesFromHandle)(prop, handle)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":4136
 *     global __cuMemGetAllocationPropertiesFromHandle
 *     cuPythonInit()
 *     if __cuMemGetAllocationPropertiesFromHandle == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuMemGetAllocationPropertiesFromHandle" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":4139
 *         with gil:
 *             raise RuntimeError('Function "cuMemGetAllocationPropertiesFromHandle" not found')
 *     err = (<CUresult (*)(CUmemAllocationProp*, CUmemGenericAllocationHandle) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemGetAllocationPropertiesFromHandle)(prop, handle)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUmemAllocationProp *, CUmemGenericAllocationHandle))__pyx_v_4cuda_5_cuda_5ccuda___cuMemGetAllocationPropertiesFromHandle)(__pyx_v_prop, __pyx_v_handle); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 4139, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":4140
 *             raise RuntimeError('Function "cuMemGetAllocationPropertiesFromHandle" not found')
 *     err = (<CUresult (*)(CUmemAllocationProp*, CUmemGenericAllocationHandle) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemGetAllocationPropertiesFromHandle)(prop, handle)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuMemRetainAllocationHandle(CUmemGenericAllocationHandle* handle, void* addr) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":4133
 *     return err
 * 
 * cdef CUresult _cuMemGetAllocationPropertiesFromHandle(CUmemAllocationProp* prop, CUmemGenericAllocationHandle handle) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuMemGetAllocationPropertiesFromHandle
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuMemGetAllocationPropertiesFromHandle", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":4142
 *     return err
 * 
 * cdef CUresult _cuMemRetainAllocationHandle(CUmemGenericAllocationHandle* handle, void* addr) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuMemRetainAllocationHandle
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuMemRetainAllocationHandle(CUmemGenericAllocationHandle *__pyx_v_handle, void *__pyx_v_addr) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuMemRetainAllocationHandle", 1);
  __Pyx_TraceCall("_cuMemRetainAllocationHandle", __pyx_f[0], 4142, 1, __PYX_ERR(0, 4142, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":4144
 * cdef CUresult _cuMemRetainAllocationHandle(CUmemGenericAllocationHandle* handle, void* addr) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuMemRetainAllocationHandle
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuMemRetainAllocationHandle == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 4144, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":4145
 *     global __cuMemRetainAllocationHandle
 *     cuPythonInit()
 *     if __cuMemRetainAllocationHandle == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuMemRetainAllocationHandle" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuMemRetainAllocationHandle == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":4146
 *     cuPythonInit()
 *     if __cuMemRetainAllocationHandle == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuMemRetainAllocationHandle" not found')
 *     err = (<CUresult (*)(CUmemGenericAllocationHandle*, void*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemRetainAllocationHandle)(handle, addr)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":4147
 *     if __cuMemRetainAllocationHandle == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuMemRetainAllocationHandle" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUmemGenericAllocationHandle*, void*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemRetainAllocationHandle)(handle, addr)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__170, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 4147, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 4147, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":4146
 *     cuPythonInit()
 *     if __cuMemRetainAllocationHandle == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuMemRetainAllocationHandle" not found')
 *     err = (<CUresult (*)(CUmemGenericAllocationHandle*, void*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemRetainAllocationHandle)(handle, addr)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":4145
 *     global __cuMemRetainAllocationHandle
 *     cuPythonInit()
 *     if __cuMemRetainAllocationHandle == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuMemRetainAllocationHandle" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":4148
 *         with gil:
 *             raise RuntimeError('Function "cuMemRetainAllocationHandle" not found')
 *     err = (<CUresult (*)(CUmemGenericAllocationHandle*, void*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemRetainAllocationHandle)(handle, addr)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUmemGenericAllocationHandle *, void *))__pyx_v_4cuda_5_cuda_5ccuda___cuMemRetainAllocationHandle)(__pyx_v_handle, __pyx_v_addr); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 4148, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":4149
 *             raise RuntimeError('Function "cuMemRetainAllocationHandle" not found')
 *     err = (<CUresult (*)(CUmemGenericAllocationHandle*, void*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemRetainAllocationHandle)(handle, addr)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuMemFreeAsync(CUdeviceptr dptr, CUstream hStream) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":4142
 *     return err
 * 
 * cdef CUresult _cuMemRetainAllocationHandle(CUmemGenericAllocationHandle* handle, void* addr) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuMemRetainAllocationHandle
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuMemRetainAllocationHandle", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":4151
 *     return err
 * 
 * cdef CUresult _cuMemFreeAsync(CUdeviceptr dptr, CUstream hStream) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuMemFreeAsync
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuMemFreeAsync(CUdeviceptr __pyx_v_dptr, CUstream __pyx_v_hStream) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuMemFreeAsync", 1);
  __Pyx_TraceCall("_cuMemFreeAsync", __pyx_f[0], 4151, 1, __PYX_ERR(0, 4151, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":4153
 * cdef CUresult _cuMemFreeAsync(CUdeviceptr dptr, CUstream hStream) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuMemFreeAsync
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuMemFreeAsync == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 4153, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":4154
 *     global __cuMemFreeAsync
 *     cuPythonInit()
 *     if __cuMemFreeAsync == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuMemFreeAsync" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuMemFreeAsync == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":4155
 *     cuPythonInit()
 *     if __cuMemFreeAsync == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuMemFreeAsync" not found')
 *     err = (<CUresult (*)(CUdeviceptr, CUstream) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemFreeAsync)(dptr, hStream)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":4156
 *     if __cuMemFreeAsync == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuMemFreeAsync" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUdeviceptr, CUstream) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemFreeAsync)(dptr, hStream)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__171, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 4156, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 4156, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":4155
 *     cuPythonInit()
 *     if __cuMemFreeAsync == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuMemFreeAsync" not found')
 *     err = (<CUresult (*)(CUdeviceptr, CUstream) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemFreeAsync)(dptr, hStream)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":4154
 *     global __cuMemFreeAsync
 *     cuPythonInit()
 *     if __cuMemFreeAsync == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuMemFreeAsync" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":4157
 *         with gil:
 *             raise RuntimeError('Function "cuMemFreeAsync" not found')
 *     err = (<CUresult (*)(CUdeviceptr, CUstream) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemFreeAsync)(dptr, hStream)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUdeviceptr, CUstream))__pyx_v_4cuda_5_cuda_5ccuda___cuMemFreeAsync)(__pyx_v_dptr, __pyx_v_hStream); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 4157, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":4158
 *             raise RuntimeError('Function "cuMemFreeAsync" not found')
 *     err = (<CUresult (*)(CUdeviceptr, CUstream) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemFreeAsync)(dptr, hStream)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuMemAllocAsync(CUdeviceptr* dptr, size_t bytesize, CUstream hStream) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":4151
 *     return err
 * 
 * cdef CUresult _cuMemFreeAsync(CUdeviceptr dptr, CUstream hStream) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuMemFreeAsync
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuMemFreeAsync", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":4160
 *     return err
 * 
 * cdef CUresult _cuMemAllocAsync(CUdeviceptr* dptr, size_t bytesize, CUstream hStream) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuMemAllocAsync
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuMemAllocAsync(CUdeviceptr *__pyx_v_dptr, size_t __pyx_v_bytesize, CUstream __pyx_v_hStream) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuMemAllocAsync", 1);
  __Pyx_TraceCall("_cuMemAllocAsync", __pyx_f[0], 4160, 1, __PYX_ERR(0, 4160, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":4162
 * cdef CUresult _cuMemAllocAsync(CUdeviceptr* dptr, size_t bytesize, CUstream hStream) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuMemAllocAsync
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuMemAllocAsync == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 4162, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":4163
 *     global __cuMemAllocAsync
 *     cuPythonInit()
 *     if __cuMemAllocAsync == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuMemAllocAsync" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuMemAllocAsync == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":4164
 *     cuPythonInit()
 *     if __cuMemAllocAsync == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuMemAllocAsync" not found')
 *     err = (<CUresult (*)(CUdeviceptr*, size_t, CUstream) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemAllocAsync)(dptr, bytesize, hStream)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":4165
 *     if __cuMemAllocAsync == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuMemAllocAsync" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUdeviceptr*, size_t, CUstream) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemAllocAsync)(dptr, bytesize, hStream)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__172, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 4165, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 4165, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":4164
 *     cuPythonInit()
 *     if __cuMemAllocAsync == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuMemAllocAsync" not found')
 *     err = (<CUresult (*)(CUdeviceptr*, size_t, CUstream) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemAllocAsync)(dptr, bytesize, hStream)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":4163
 *     global __cuMemAllocAsync
 *     cuPythonInit()
 *     if __cuMemAllocAsync == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuMemAllocAsync" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":4166
 *         with gil:
 *             raise RuntimeError('Function "cuMemAllocAsync" not found')
 *     err = (<CUresult (*)(CUdeviceptr*, size_t, CUstream) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemAllocAsync)(dptr, bytesize, hStream)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUdeviceptr *, size_t, CUstream))__pyx_v_4cuda_5_cuda_5ccuda___cuMemAllocAsync)(__pyx_v_dptr, __pyx_v_bytesize, __pyx_v_hStream); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 4166, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":4167
 *             raise RuntimeError('Function "cuMemAllocAsync" not found')
 *     err = (<CUresult (*)(CUdeviceptr*, size_t, CUstream) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemAllocAsync)(dptr, bytesize, hStream)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuMemPoolTrimTo(CUmemoryPool pool, size_t minBytesToKeep) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":4160
 *     return err
 * 
 * cdef CUresult _cuMemAllocAsync(CUdeviceptr* dptr, size_t bytesize, CUstream hStream) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuMemAllocAsync
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuMemAllocAsync", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":4169
 *     return err
 * 
 * cdef CUresult _cuMemPoolTrimTo(CUmemoryPool pool, size_t minBytesToKeep) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuMemPoolTrimTo
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuMemPoolTrimTo(CUmemoryPool __pyx_v_pool, size_t __pyx_v_minBytesToKeep) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuMemPoolTrimTo", 1);
  __Pyx_TraceCall("_cuMemPoolTrimTo", __pyx_f[0], 4169, 1, __PYX_ERR(0, 4169, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":4171
 * cdef CUresult _cuMemPoolTrimTo(CUmemoryPool pool, size_t minBytesToKeep) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuMemPoolTrimTo
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuMemPoolTrimTo == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 4171, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":4172
 *     global __cuMemPoolTrimTo
 *     cuPythonInit()
 *     if __cuMemPoolTrimTo == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuMemPoolTrimTo" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuMemPoolTrimTo == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":4173
 *     cuPythonInit()
 *     if __cuMemPoolTrimTo == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuMemPoolTrimTo" not found')
 *     err = (<CUresult (*)(CUmemoryPool, size_t) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemPoolTrimTo)(pool, minBytesToKeep)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":4174
 *     if __cuMemPoolTrimTo == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuMemPoolTrimTo" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUmemoryPool, size_t) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemPoolTrimTo)(pool, minBytesToKeep)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__173, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 4174, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 4174, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":4173
 *     cuPythonInit()
 *     if __cuMemPoolTrimTo == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuMemPoolTrimTo" not found')
 *     err = (<CUresult (*)(CUmemoryPool, size_t) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemPoolTrimTo)(pool, minBytesToKeep)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":4172
 *     global __cuMemPoolTrimTo
 *     cuPythonInit()
 *     if __cuMemPoolTrimTo == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuMemPoolTrimTo" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":4175
 *         with gil:
 *             raise RuntimeError('Function "cuMemPoolTrimTo" not found')
 *     err = (<CUresult (*)(CUmemoryPool, size_t) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemPoolTrimTo)(pool, minBytesToKeep)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUmemoryPool, size_t))__pyx_v_4cuda_5_cuda_5ccuda___cuMemPoolTrimTo)(__pyx_v_pool, __pyx_v_minBytesToKeep); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 4175, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":4176
 *             raise RuntimeError('Function "cuMemPoolTrimTo" not found')
 *     err = (<CUresult (*)(CUmemoryPool, size_t) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemPoolTrimTo)(pool, minBytesToKeep)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuMemPoolSetAttribute(CUmemoryPool pool, CUmemPool_attribute attr, void* value) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":4169
 *     return err
 * 
 * cdef CUresult _cuMemPoolTrimTo(CUmemoryPool pool, size_t minBytesToKeep) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuMemPoolTrimTo
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuMemPoolTrimTo", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":4178
 *     return err
 * 
 * cdef CUresult _cuMemPoolSetAttribute(CUmemoryPool pool, CUmemPool_attribute attr, void* value) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuMemPoolSetAttribute
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuMemPoolSetAttribute(CUmemoryPool __pyx_v_pool, CUmemPool_attribute __pyx_v_attr, void *__pyx_v_value) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuMemPoolSetAttribute", 1);
  __Pyx_TraceCall("_cuMemPoolSetAttribute", __pyx_f[0], 4178, 1, __PYX_ERR(0, 4178, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":4180
 * cdef CUresult _cuMemPoolSetAttribute(CUmemoryPool pool, CUmemPool_attribute attr, void* value) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuMemPoolSetAttribute
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuMemPoolSetAttribute == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 4180, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":4181
 *     global __cuMemPoolSetAttribute
 *     cuPythonInit()
 *     if __cuMemPoolSetAttribute == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuMemPoolSetAttribute" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuMemPoolSetAttribute == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":4182
 *     cuPythonInit()
 *     if __cuMemPoolSetAttribute == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuMemPoolSetAttribute" not found')
 *     err = (<CUresult (*)(CUmemoryPool, CUmemPool_attribute, void*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemPoolSetAttribute)(pool, attr, value)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":4183
 *     if __cuMemPoolSetAttribute == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuMemPoolSetAttribute" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUmemoryPool, CUmemPool_attribute, void*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemPoolSetAttribute)(pool, attr, value)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__174, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 4183, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 4183, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":4182
 *     cuPythonInit()
 *     if __cuMemPoolSetAttribute == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuMemPoolSetAttribute" not found')
 *     err = (<CUresult (*)(CUmemoryPool, CUmemPool_attribute, void*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemPoolSetAttribute)(pool, attr, value)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":4181
 *     global __cuMemPoolSetAttribute
 *     cuPythonInit()
 *     if __cuMemPoolSetAttribute == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuMemPoolSetAttribute" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":4184
 *         with gil:
 *             raise RuntimeError('Function "cuMemPoolSetAttribute" not found')
 *     err = (<CUresult (*)(CUmemoryPool, CUmemPool_attribute, void*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemPoolSetAttribute)(pool, attr, value)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUmemoryPool, CUmemPool_attribute, void *))__pyx_v_4cuda_5_cuda_5ccuda___cuMemPoolSetAttribute)(__pyx_v_pool, __pyx_v_attr, __pyx_v_value); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 4184, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":4185
 *             raise RuntimeError('Function "cuMemPoolSetAttribute" not found')
 *     err = (<CUresult (*)(CUmemoryPool, CUmemPool_attribute, void*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemPoolSetAttribute)(pool, attr, value)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuMemPoolGetAttribute(CUmemoryPool pool, CUmemPool_attribute attr, void* value) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":4178
 *     return err
 * 
 * cdef CUresult _cuMemPoolSetAttribute(CUmemoryPool pool, CUmemPool_attribute attr, void* value) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuMemPoolSetAttribute
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuMemPoolSetAttribute", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":4187
 *     return err
 * 
 * cdef CUresult _cuMemPoolGetAttribute(CUmemoryPool pool, CUmemPool_attribute attr, void* value) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuMemPoolGetAttribute
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuMemPoolGetAttribute(CUmemoryPool __pyx_v_pool, CUmemPool_attribute __pyx_v_attr, void *__pyx_v_value) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuMemPoolGetAttribute", 1);
  __Pyx_TraceCall("_cuMemPoolGetAttribute", __pyx_f[0], 4187, 1, __PYX_ERR(0, 4187, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":4189
 * cdef CUresult _cuMemPoolGetAttribute(CUmemoryPool pool, CUmemPool_attribute attr, void* value) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuMemPoolGetAttribute
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuMemPoolGetAttribute == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 4189, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":4190
 *     global __cuMemPoolGetAttribute
 *     cuPythonInit()
 *     if __cuMemPoolGetAttribute == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuMemPoolGetAttribute" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuMemPoolGetAttribute == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":4191
 *     cuPythonInit()
 *     if __cuMemPoolGetAttribute == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuMemPoolGetAttribute" not found')
 *     err = (<CUresult (*)(CUmemoryPool, CUmemPool_attribute, void*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemPoolGetAttribute)(pool, attr, value)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":4192
 *     if __cuMemPoolGetAttribute == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuMemPoolGetAttribute" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUmemoryPool, CUmemPool_attribute, void*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemPoolGetAttribute)(pool, attr, value)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__175, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 4192, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 4192, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":4191
 *     cuPythonInit()
 *     if __cuMemPoolGetAttribute == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuMemPoolGetAttribute" not found')
 *     err = (<CUresult (*)(CUmemoryPool, CUmemPool_attribute, void*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemPoolGetAttribute)(pool, attr, value)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":4190
 *     global __cuMemPoolGetAttribute
 *     cuPythonInit()
 *     if __cuMemPoolGetAttribute == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuMemPoolGetAttribute" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":4193
 *         with gil:
 *             raise RuntimeError('Function "cuMemPoolGetAttribute" not found')
 *     err = (<CUresult (*)(CUmemoryPool, CUmemPool_attribute, void*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemPoolGetAttribute)(pool, attr, value)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUmemoryPool, CUmemPool_attribute, void *))__pyx_v_4cuda_5_cuda_5ccuda___cuMemPoolGetAttribute)(__pyx_v_pool, __pyx_v_attr, __pyx_v_value); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 4193, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":4194
 *             raise RuntimeError('Function "cuMemPoolGetAttribute" not found')
 *     err = (<CUresult (*)(CUmemoryPool, CUmemPool_attribute, void*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemPoolGetAttribute)(pool, attr, value)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuMemPoolSetAccess(CUmemoryPool pool, const CUmemAccessDesc* map, size_t count) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":4187
 *     return err
 * 
 * cdef CUresult _cuMemPoolGetAttribute(CUmemoryPool pool, CUmemPool_attribute attr, void* value) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuMemPoolGetAttribute
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuMemPoolGetAttribute", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":4196
 *     return err
 * 
 * cdef CUresult _cuMemPoolSetAccess(CUmemoryPool pool, const CUmemAccessDesc* map, size_t count) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuMemPoolSetAccess
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuMemPoolSetAccess(CUmemoryPool __pyx_v_pool, CUmemAccessDesc const *__pyx_v_map, size_t __pyx_v_count) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuMemPoolSetAccess", 1);
  __Pyx_TraceCall("_cuMemPoolSetAccess", __pyx_f[0], 4196, 1, __PYX_ERR(0, 4196, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":4198
 * cdef CUresult _cuMemPoolSetAccess(CUmemoryPool pool, const CUmemAccessDesc* map, size_t count) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuMemPoolSetAccess
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuMemPoolSetAccess == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 4198, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":4199
 *     global __cuMemPoolSetAccess
 *     cuPythonInit()
 *     if __cuMemPoolSetAccess == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuMemPoolSetAccess" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuMemPoolSetAccess == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":4200
 *     cuPythonInit()
 *     if __cuMemPoolSetAccess == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuMemPoolSetAccess" not found')
 *     err = (<CUresult (*)(CUmemoryPool, const CUmemAccessDesc*, size_t) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemPoolSetAccess)(pool, map, count)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":4201
 *     if __cuMemPoolSetAccess == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuMemPoolSetAccess" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUmemoryPool, const CUmemAccessDesc*, size_t) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemPoolSetAccess)(pool, map, count)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__176, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 4201, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 4201, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":4200
 *     cuPythonInit()
 *     if __cuMemPoolSetAccess == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuMemPoolSetAccess" not found')
 *     err = (<CUresult (*)(CUmemoryPool, const CUmemAccessDesc*, size_t) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemPoolSetAccess)(pool, map, count)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":4199
 *     global __cuMemPoolSetAccess
 *     cuPythonInit()
 *     if __cuMemPoolSetAccess == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuMemPoolSetAccess" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":4202
 *         with gil:
 *             raise RuntimeError('Function "cuMemPoolSetAccess" not found')
 *     err = (<CUresult (*)(CUmemoryPool, const CUmemAccessDesc*, size_t) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemPoolSetAccess)(pool, map, count)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUmemoryPool, CUmemAccessDesc const *, size_t))__pyx_v_4cuda_5_cuda_5ccuda___cuMemPoolSetAccess)(__pyx_v_pool, __pyx_v_map, __pyx_v_count); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 4202, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":4203
 *             raise RuntimeError('Function "cuMemPoolSetAccess" not found')
 *     err = (<CUresult (*)(CUmemoryPool, const CUmemAccessDesc*, size_t) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemPoolSetAccess)(pool, map, count)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuMemPoolGetAccess(CUmemAccess_flags* flags, CUmemoryPool memPool, CUmemLocation* location) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":4196
 *     return err
 * 
 * cdef CUresult _cuMemPoolSetAccess(CUmemoryPool pool, const CUmemAccessDesc* map, size_t count) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuMemPoolSetAccess
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuMemPoolSetAccess", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":4205
 *     return err
 * 
 * cdef CUresult _cuMemPoolGetAccess(CUmemAccess_flags* flags, CUmemoryPool memPool, CUmemLocation* location) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuMemPoolGetAccess
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuMemPoolGetAccess(CUmemAccess_flags *__pyx_v_flags, CUmemoryPool __pyx_v_memPool, CUmemLocation *__pyx_v_location) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuMemPoolGetAccess", 1);
  __Pyx_TraceCall("_cuMemPoolGetAccess", __pyx_f[0], 4205, 1, __PYX_ERR(0, 4205, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":4207
 * cdef CUresult _cuMemPoolGetAccess(CUmemAccess_flags* flags, CUmemoryPool memPool, CUmemLocation* location) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuMemPoolGetAccess
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuMemPoolGetAccess == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 4207, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":4208
 *     global __cuMemPoolGetAccess
 *     cuPythonInit()
 *     if __cuMemPoolGetAccess == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuMemPoolGetAccess" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuMemPoolGetAccess == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":4209
 *     cuPythonInit()
 *     if __cuMemPoolGetAccess == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuMemPoolGetAccess" not found')
 *     err = (<CUresult (*)(CUmemAccess_flags*, CUmemoryPool, CUmemLocation*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemPoolGetAccess)(flags, memPool, location)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":4210
 *     if __cuMemPoolGetAccess == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuMemPoolGetAccess" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUmemAccess_flags*, CUmemoryPool, CUmemLocation*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemPoolGetAccess)(flags, memPool, location)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__177, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 4210, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 4210, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":4209
 *     cuPythonInit()
 *     if __cuMemPoolGetAccess == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuMemPoolGetAccess" not found')
 *     err = (<CUresult (*)(CUmemAccess_flags*, CUmemoryPool, CUmemLocation*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemPoolGetAccess)(flags, memPool, location)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":4208
 *     global __cuMemPoolGetAccess
 *     cuPythonInit()
 *     if __cuMemPoolGetAccess == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuMemPoolGetAccess" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":4211
 *         with gil:
 *             raise RuntimeError('Function "cuMemPoolGetAccess" not found')
 *     err = (<CUresult (*)(CUmemAccess_flags*, CUmemoryPool, CUmemLocation*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemPoolGetAccess)(flags, memPool, location)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUmemAccess_flags *, CUmemoryPool, CUmemLocation *))__pyx_v_4cuda_5_cuda_5ccuda___cuMemPoolGetAccess)(__pyx_v_flags, __pyx_v_memPool, __pyx_v_location); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 4211, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":4212
 *             raise RuntimeError('Function "cuMemPoolGetAccess" not found')
 *     err = (<CUresult (*)(CUmemAccess_flags*, CUmemoryPool, CUmemLocation*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemPoolGetAccess)(flags, memPool, location)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuMemPoolCreate(CUmemoryPool* pool, const CUmemPoolProps* poolProps) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":4205
 *     return err
 * 
 * cdef CUresult _cuMemPoolGetAccess(CUmemAccess_flags* flags, CUmemoryPool memPool, CUmemLocation* location) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuMemPoolGetAccess
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuMemPoolGetAccess", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":4214
 *     return err
 * 
 * cdef CUresult _cuMemPoolCreate(CUmemoryPool* pool, const CUmemPoolProps* poolProps) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuMemPoolCreate
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuMemPoolCreate(CUmemoryPool *__pyx_v_pool, CUmemPoolProps const *__pyx_v_poolProps) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuMemPoolCreate", 1);
  __Pyx_TraceCall("_cuMemPoolCreate", __pyx_f[0], 4214, 1, __PYX_ERR(0, 4214, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":4216
 * cdef CUresult _cuMemPoolCreate(CUmemoryPool* pool, const CUmemPoolProps* poolProps) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuMemPoolCreate
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuMemPoolCreate == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 4216, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":4217
 *     global __cuMemPoolCreate
 *     cuPythonInit()
 *     if __cuMemPoolCreate == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuMemPoolCreate" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuMemPoolCreate == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":4218
 *     cuPythonInit()
 *     if __cuMemPoolCreate == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuMemPoolCreate" not found')
 *     err = (<CUresult (*)(CUmemoryPool*, const CUmemPoolProps*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemPoolCreate)(pool, poolProps)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":4219
 *     if __cuMemPoolCreate == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuMemPoolCreate" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUmemoryPool*, const CUmemPoolProps*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemPoolCreate)(pool, poolProps)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__178, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 4219, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 4219, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":4218
 *     cuPythonInit()
 *     if __cuMemPoolCreate == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuMemPoolCreate" not found')
 *     err = (<CUresult (*)(CUmemoryPool*, const CUmemPoolProps*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemPoolCreate)(pool, poolProps)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":4217
 *     global __cuMemPoolCreate
 *     cuPythonInit()
 *     if __cuMemPoolCreate == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuMemPoolCreate" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":4220
 *         with gil:
 *             raise RuntimeError('Function "cuMemPoolCreate" not found')
 *     err = (<CUresult (*)(CUmemoryPool*, const CUmemPoolProps*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemPoolCreate)(pool, poolProps)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUmemoryPool *, CUmemPoolProps const *))__pyx_v_4cuda_5_cuda_5ccuda___cuMemPoolCreate)(__pyx_v_pool, __pyx_v_poolProps); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 4220, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":4221
 *             raise RuntimeError('Function "cuMemPoolCreate" not found')
 *     err = (<CUresult (*)(CUmemoryPool*, const CUmemPoolProps*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemPoolCreate)(pool, poolProps)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuMemPoolDestroy(CUmemoryPool pool) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":4214
 *     return err
 * 
 * cdef CUresult _cuMemPoolCreate(CUmemoryPool* pool, const CUmemPoolProps* poolProps) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuMemPoolCreate
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuMemPoolCreate", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":4223
 *     return err
 * 
 * cdef CUresult _cuMemPoolDestroy(CUmemoryPool pool) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuMemPoolDestroy
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuMemPoolDestroy(CUmemoryPool __pyx_v_pool) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuMemPoolDestroy", 1);
  __Pyx_TraceCall("_cuMemPoolDestroy", __pyx_f[0], 4223, 1, __PYX_ERR(0, 4223, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":4225
 * cdef CUresult _cuMemPoolDestroy(CUmemoryPool pool) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuMemPoolDestroy
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuMemPoolDestroy == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 4225, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":4226
 *     global __cuMemPoolDestroy
 *     cuPythonInit()
 *     if __cuMemPoolDestroy == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuMemPoolDestroy" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuMemPoolDestroy == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":4227
 *     cuPythonInit()
 *     if __cuMemPoolDestroy == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuMemPoolDestroy" not found')
 *     err = (<CUresult (*)(CUmemoryPool) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemPoolDestroy)(pool)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":4228
 *     if __cuMemPoolDestroy == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuMemPoolDestroy" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUmemoryPool) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemPoolDestroy)(pool)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__179, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 4228, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 4228, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":4227
 *     cuPythonInit()
 *     if __cuMemPoolDestroy == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuMemPoolDestroy" not found')
 *     err = (<CUresult (*)(CUmemoryPool) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemPoolDestroy)(pool)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":4226
 *     global __cuMemPoolDestroy
 *     cuPythonInit()
 *     if __cuMemPoolDestroy == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuMemPoolDestroy" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":4229
 *         with gil:
 *             raise RuntimeError('Function "cuMemPoolDestroy" not found')
 *     err = (<CUresult (*)(CUmemoryPool) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemPoolDestroy)(pool)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUmemoryPool))__pyx_v_4cuda_5_cuda_5ccuda___cuMemPoolDestroy)(__pyx_v_pool); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 4229, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":4230
 *             raise RuntimeError('Function "cuMemPoolDestroy" not found')
 *     err = (<CUresult (*)(CUmemoryPool) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemPoolDestroy)(pool)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuMemAllocFromPoolAsync(CUdeviceptr* dptr, size_t bytesize, CUmemoryPool pool, CUstream hStream) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":4223
 *     return err
 * 
 * cdef CUresult _cuMemPoolDestroy(CUmemoryPool pool) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuMemPoolDestroy
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuMemPoolDestroy", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":4232
 *     return err
 * 
 * cdef CUresult _cuMemAllocFromPoolAsync(CUdeviceptr* dptr, size_t bytesize, CUmemoryPool pool, CUstream hStream) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuMemAllocFromPoolAsync
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuMemAllocFromPoolAsync(CUdeviceptr *__pyx_v_dptr, size_t __pyx_v_bytesize, CUmemoryPool __pyx_v_pool, CUstream __pyx_v_hStream) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuMemAllocFromPoolAsync", 1);
  __Pyx_TraceCall("_cuMemAllocFromPoolAsync", __pyx_f[0], 4232, 1, __PYX_ERR(0, 4232, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":4234
 * cdef CUresult _cuMemAllocFromPoolAsync(CUdeviceptr* dptr, size_t bytesize, CUmemoryPool pool, CUstream hStream) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuMemAllocFromPoolAsync
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuMemAllocFromPoolAsync == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 4234, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":4235
 *     global __cuMemAllocFromPoolAsync
 *     cuPythonInit()
 *     if __cuMemAllocFromPoolAsync == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuMemAllocFromPoolAsync" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuMemAllocFromPoolAsync == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":4236
 *     cuPythonInit()
 *     if __cuMemAllocFromPoolAsync == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuMemAllocFromPoolAsync" not found')
 *     err = (<CUresult (*)(CUdeviceptr*, size_t, CUmemoryPool, CUstream) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemAllocFromPoolAsync)(dptr, bytesize, pool, hStream)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":4237
 *     if __cuMemAllocFromPoolAsync == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuMemAllocFromPoolAsync" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUdeviceptr*, size_t, CUmemoryPool, CUstream) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemAllocFromPoolAsync)(dptr, bytesize, pool, hStream)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__180, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 4237, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 4237, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":4236
 *     cuPythonInit()
 *     if __cuMemAllocFromPoolAsync == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuMemAllocFromPoolAsync" not found')
 *     err = (<CUresult (*)(CUdeviceptr*, size_t, CUmemoryPool, CUstream) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemAllocFromPoolAsync)(dptr, bytesize, pool, hStream)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":4235
 *     global __cuMemAllocFromPoolAsync
 *     cuPythonInit()
 *     if __cuMemAllocFromPoolAsync == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuMemAllocFromPoolAsync" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":4238
 *         with gil:
 *             raise RuntimeError('Function "cuMemAllocFromPoolAsync" not found')
 *     err = (<CUresult (*)(CUdeviceptr*, size_t, CUmemoryPool, CUstream) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemAllocFromPoolAsync)(dptr, bytesize, pool, hStream)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUdeviceptr *, size_t, CUmemoryPool, CUstream))__pyx_v_4cuda_5_cuda_5ccuda___cuMemAllocFromPoolAsync)(__pyx_v_dptr, __pyx_v_bytesize, __pyx_v_pool, __pyx_v_hStream); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 4238, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":4239
 *             raise RuntimeError('Function "cuMemAllocFromPoolAsync" not found')
 *     err = (<CUresult (*)(CUdeviceptr*, size_t, CUmemoryPool, CUstream) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemAllocFromPoolAsync)(dptr, bytesize, pool, hStream)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuMemPoolExportToShareableHandle(void* handle_out, CUmemoryPool pool, CUmemAllocationHandleType handleType, unsigned long long flags) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":4232
 *     return err
 * 
 * cdef CUresult _cuMemAllocFromPoolAsync(CUdeviceptr* dptr, size_t bytesize, CUmemoryPool pool, CUstream hStream) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuMemAllocFromPoolAsync
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuMemAllocFromPoolAsync", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":4241
 *     return err
 * 
 * cdef CUresult _cuMemPoolExportToShareableHandle(void* handle_out, CUmemoryPool pool, CUmemAllocationHandleType handleType, unsigned long long flags) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuMemPoolExportToShareableHandle
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuMemPoolExportToShareableHandle(void *__pyx_v_handle_out, CUmemoryPool __pyx_v_pool, CUmemAllocationHandleType __pyx_v_handleType, unsigned PY_LONG_LONG __pyx_v_flags) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuMemPoolExportToShareableHandle", 1);
  __Pyx_TraceCall("_cuMemPoolExportToShareableHandle", __pyx_f[0], 4241, 1, __PYX_ERR(0, 4241, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":4243
 * cdef CUresult _cuMemPoolExportToShareableHandle(void* handle_out, CUmemoryPool pool, CUmemAllocationHandleType handleType, unsigned long long flags) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuMemPoolExportToShareableHandle
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuMemPoolExportToShareableHandle == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 4243, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":4244
 *     global __cuMemPoolExportToShareableHandle
 *     cuPythonInit()
 *     if __cuMemPoolExportToShareableHandle == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuMemPoolExportToShareableHandle" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuMemPoolExportToShareableHandle == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":4245
 *     cuPythonInit()
 *     if __cuMemPoolExportToShareableHandle == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuMemPoolExportToShareableHandle" not found')
 *     err = (<CUresult (*)(void*, CUmemoryPool, CUmemAllocationHandleType, unsigned long long) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemPoolExportToShareableHandle)(handle_out, pool, handleType, flags)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":4246
 *     if __cuMemPoolExportToShareableHandle == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuMemPoolExportToShareableHandle" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(void*, CUmemoryPool, CUmemAllocationHandleType, unsigned long long) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemPoolExportToShareableHandle)(handle_out, pool, handleType, flags)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__181, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 4246, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 4246, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":4245
 *     cuPythonInit()
 *     if __cuMemPoolExportToShareableHandle == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuMemPoolExportToShareableHandle" not found')
 *     err = (<CUresult (*)(void*, CUmemoryPool, CUmemAllocationHandleType, unsigned long long) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemPoolExportToShareableHandle)(handle_out, pool, handleType, flags)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":4244
 *     global __cuMemPoolExportToShareableHandle
 *     cuPythonInit()
 *     if __cuMemPoolExportToShareableHandle == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuMemPoolExportToShareableHandle" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":4247
 *         with gil:
 *             raise RuntimeError('Function "cuMemPoolExportToShareableHandle" not found')
 *     err = (<CUresult (*)(void*, CUmemoryPool, CUmemAllocationHandleType, unsigned long long) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemPoolExportToShareableHandle)(handle_out, pool, handleType, flags)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(void *, CUmemoryPool, CUmemAllocationHandleType, unsigned PY_LONG_LONG))__pyx_v_4cuda_5_cuda_5ccuda___cuMemPoolExportToShareableHandle)(__pyx_v_handle_out, __pyx_v_pool, __pyx_v_handleType, __pyx_v_flags); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 4247, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":4248
 *             raise RuntimeError('Function "cuMemPoolExportToShareableHandle" not found')
 *     err = (<CUresult (*)(void*, CUmemoryPool, CUmemAllocationHandleType, unsigned long long) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemPoolExportToShareableHandle)(handle_out, pool, handleType, flags)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuMemPoolImportFromShareableHandle(CUmemoryPool* pool_out, void* handle, CUmemAllocationHandleType handleType, unsigned long long flags) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":4241
 *     return err
 * 
 * cdef CUresult _cuMemPoolExportToShareableHandle(void* handle_out, CUmemoryPool pool, CUmemAllocationHandleType handleType, unsigned long long flags) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuMemPoolExportToShareableHandle
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuMemPoolExportToShareableHandle", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":4250
 *     return err
 * 
 * cdef CUresult _cuMemPoolImportFromShareableHandle(CUmemoryPool* pool_out, void* handle, CUmemAllocationHandleType handleType, unsigned long long flags) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuMemPoolImportFromShareableHandle
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuMemPoolImportFromShareableHandle(CUmemoryPool *__pyx_v_pool_out, void *__pyx_v_handle, CUmemAllocationHandleType __pyx_v_handleType, unsigned PY_LONG_LONG __pyx_v_flags) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuMemPoolImportFromShareableHandle", 1);
  __Pyx_TraceCall("_cuMemPoolImportFromShareableHandle", __pyx_f[0], 4250, 1, __PYX_ERR(0, 4250, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":4252
 * cdef CUresult _cuMemPoolImportFromShareableHandle(CUmemoryPool* pool_out, void* handle, CUmemAllocationHandleType handleType, unsigned long long flags) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuMemPoolImportFromShareableHandle
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuMemPoolImportFromShareableHandle == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 4252, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":4253
 *     global __cuMemPoolImportFromShareableHandle
 *     cuPythonInit()
 *     if __cuMemPoolImportFromShareableHandle == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuMemPoolImportFromShareableHandle" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuMemPoolImportFromShareableHandle == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":4254
 *     cuPythonInit()
 *     if __cuMemPoolImportFromShareableHandle == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuMemPoolImportFromShareableHandle" not found')
 *     err = (<CUresult (*)(CUmemoryPool*, void*, CUmemAllocationHandleType, unsigned long long) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemPoolImportFromShareableHandle)(pool_out, handle, handleType, flags)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":4255
 *     if __cuMemPoolImportFromShareableHandle == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuMemPoolImportFromShareableHandle" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUmemoryPool*, void*, CUmemAllocationHandleType, unsigned long long) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemPoolImportFromShareableHandle)(pool_out, handle, handleType, flags)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__182, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 4255, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 4255, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":4254
 *     cuPythonInit()
 *     if __cuMemPoolImportFromShareableHandle == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuMemPoolImportFromShareableHandle" not found')
 *     err = (<CUresult (*)(CUmemoryPool*, void*, CUmemAllocationHandleType, unsigned long long) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemPoolImportFromShareableHandle)(pool_out, handle, handleType, flags)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":4253
 *     global __cuMemPoolImportFromShareableHandle
 *     cuPythonInit()
 *     if __cuMemPoolImportFromShareableHandle == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuMemPoolImportFromShareableHandle" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":4256
 *         with gil:
 *             raise RuntimeError('Function "cuMemPoolImportFromShareableHandle" not found')
 *     err = (<CUresult (*)(CUmemoryPool*, void*, CUmemAllocationHandleType, unsigned long long) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemPoolImportFromShareableHandle)(pool_out, handle, handleType, flags)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUmemoryPool *, void *, CUmemAllocationHandleType, unsigned PY_LONG_LONG))__pyx_v_4cuda_5_cuda_5ccuda___cuMemPoolImportFromShareableHandle)(__pyx_v_pool_out, __pyx_v_handle, __pyx_v_handleType, __pyx_v_flags); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 4256, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":4257
 *             raise RuntimeError('Function "cuMemPoolImportFromShareableHandle" not found')
 *     err = (<CUresult (*)(CUmemoryPool*, void*, CUmemAllocationHandleType, unsigned long long) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemPoolImportFromShareableHandle)(pool_out, handle, handleType, flags)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuMemPoolExportPointer(CUmemPoolPtrExportData* shareData_out, CUdeviceptr ptr) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":4250
 *     return err
 * 
 * cdef CUresult _cuMemPoolImportFromShareableHandle(CUmemoryPool* pool_out, void* handle, CUmemAllocationHandleType handleType, unsigned long long flags) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuMemPoolImportFromShareableHandle
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuMemPoolImportFromShareableHandle", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":4259
 *     return err
 * 
 * cdef CUresult _cuMemPoolExportPointer(CUmemPoolPtrExportData* shareData_out, CUdeviceptr ptr) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuMemPoolExportPointer
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuMemPoolExportPointer(CUmemPoolPtrExportData *__pyx_v_shareData_out, CUdeviceptr __pyx_v_ptr) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuMemPoolExportPointer", 1);
  __Pyx_TraceCall("_cuMemPoolExportPointer", __pyx_f[0], 4259, 1, __PYX_ERR(0, 4259, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":4261
 * cdef CUresult _cuMemPoolExportPointer(CUmemPoolPtrExportData* shareData_out, CUdeviceptr ptr) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuMemPoolExportPointer
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuMemPoolExportPointer == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 4261, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":4262
 *     global __cuMemPoolExportPointer
 *     cuPythonInit()
 *     if __cuMemPoolExportPointer == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuMemPoolExportPointer" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuMemPoolExportPointer == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":4263
 *     cuPythonInit()
 *     if __cuMemPoolExportPointer == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuMemPoolExportPointer" not found')
 *     err = (<CUresult (*)(CUmemPoolPtrExportData*, CUdeviceptr) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemPoolExportPointer)(shareData_out, ptr)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":4264
 *     if __cuMemPoolExportPointer == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuMemPoolExportPointer" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUmemPoolPtrExportData*, CUdeviceptr) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemPoolExportPointer)(shareData_out, ptr)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__183, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 4264, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 4264, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":4263
 *     cuPythonInit()
 *     if __cuMemPoolExportPointer == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuMemPoolExportPointer" not found')
 *     err = (<CUresult (*)(CUmemPoolPtrExportData*, CUdeviceptr) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemPoolExportPointer)(shareData_out, ptr)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":4262
 *     global __cuMemPoolExportPointer
 *     cuPythonInit()
 *     if __cuMemPoolExportPointer == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuMemPoolExportPointer" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":4265
 *         with gil:
 *             raise RuntimeError('Function "cuMemPoolExportPointer" not found')
 *     err = (<CUresult (*)(CUmemPoolPtrExportData*, CUdeviceptr) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemPoolExportPointer)(shareData_out, ptr)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUmemPoolPtrExportData *, CUdeviceptr))__pyx_v_4cuda_5_cuda_5ccuda___cuMemPoolExportPointer)(__pyx_v_shareData_out, __pyx_v_ptr); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 4265, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":4266
 *             raise RuntimeError('Function "cuMemPoolExportPointer" not found')
 *     err = (<CUresult (*)(CUmemPoolPtrExportData*, CUdeviceptr) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemPoolExportPointer)(shareData_out, ptr)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuMemPoolImportPointer(CUdeviceptr* ptr_out, CUmemoryPool pool, CUmemPoolPtrExportData* shareData) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":4259
 *     return err
 * 
 * cdef CUresult _cuMemPoolExportPointer(CUmemPoolPtrExportData* shareData_out, CUdeviceptr ptr) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuMemPoolExportPointer
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuMemPoolExportPointer", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":4268
 *     return err
 * 
 * cdef CUresult _cuMemPoolImportPointer(CUdeviceptr* ptr_out, CUmemoryPool pool, CUmemPoolPtrExportData* shareData) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuMemPoolImportPointer
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuMemPoolImportPointer(CUdeviceptr *__pyx_v_ptr_out, CUmemoryPool __pyx_v_pool, CUmemPoolPtrExportData *__pyx_v_shareData) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuMemPoolImportPointer", 1);
  __Pyx_TraceCall("_cuMemPoolImportPointer", __pyx_f[0], 4268, 1, __PYX_ERR(0, 4268, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":4270
 * cdef CUresult _cuMemPoolImportPointer(CUdeviceptr* ptr_out, CUmemoryPool pool, CUmemPoolPtrExportData* shareData) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuMemPoolImportPointer
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuMemPoolImportPointer == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 4270, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":4271
 *     global __cuMemPoolImportPointer
 *     cuPythonInit()
 *     if __cuMemPoolImportPointer == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuMemPoolImportPointer" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuMemPoolImportPointer == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":4272
 *     cuPythonInit()
 *     if __cuMemPoolImportPointer == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuMemPoolImportPointer" not found')
 *     err = (<CUresult (*)(CUdeviceptr*, CUmemoryPool, CUmemPoolPtrExportData*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemPoolImportPointer)(ptr_out, pool, shareData)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":4273
 *     if __cuMemPoolImportPointer == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuMemPoolImportPointer" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUdeviceptr*, CUmemoryPool, CUmemPoolPtrExportData*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemPoolImportPointer)(ptr_out, pool, shareData)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__184, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 4273, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 4273, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":4272
 *     cuPythonInit()
 *     if __cuMemPoolImportPointer == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuMemPoolImportPointer" not found')
 *     err = (<CUresult (*)(CUdeviceptr*, CUmemoryPool, CUmemPoolPtrExportData*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemPoolImportPointer)(ptr_out, pool, shareData)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":4271
 *     global __cuMemPoolImportPointer
 *     cuPythonInit()
 *     if __cuMemPoolImportPointer == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuMemPoolImportPointer" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":4274
 *         with gil:
 *             raise RuntimeError('Function "cuMemPoolImportPointer" not found')
 *     err = (<CUresult (*)(CUdeviceptr*, CUmemoryPool, CUmemPoolPtrExportData*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemPoolImportPointer)(ptr_out, pool, shareData)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUdeviceptr *, CUmemoryPool, CUmemPoolPtrExportData *))__pyx_v_4cuda_5_cuda_5ccuda___cuMemPoolImportPointer)(__pyx_v_ptr_out, __pyx_v_pool, __pyx_v_shareData); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 4274, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":4275
 *             raise RuntimeError('Function "cuMemPoolImportPointer" not found')
 *     err = (<CUresult (*)(CUdeviceptr*, CUmemoryPool, CUmemPoolPtrExportData*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemPoolImportPointer)(ptr_out, pool, shareData)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuMulticastCreate(CUmemGenericAllocationHandle* mcHandle, const CUmulticastObjectProp* prop) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":4268
 *     return err
 * 
 * cdef CUresult _cuMemPoolImportPointer(CUdeviceptr* ptr_out, CUmemoryPool pool, CUmemPoolPtrExportData* shareData) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuMemPoolImportPointer
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuMemPoolImportPointer", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":4277
 *     return err
 * 
 * cdef CUresult _cuMulticastCreate(CUmemGenericAllocationHandle* mcHandle, const CUmulticastObjectProp* prop) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuMulticastCreate
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuMulticastCreate(CUmemGenericAllocationHandle *__pyx_v_mcHandle, CUmulticastObjectProp const *__pyx_v_prop) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuMulticastCreate", 1);
  __Pyx_TraceCall("_cuMulticastCreate", __pyx_f[0], 4277, 1, __PYX_ERR(0, 4277, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":4279
 * cdef CUresult _cuMulticastCreate(CUmemGenericAllocationHandle* mcHandle, const CUmulticastObjectProp* prop) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuMulticastCreate
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuMulticastCreate == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 4279, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":4280
 *     global __cuMulticastCreate
 *     cuPythonInit()
 *     if __cuMulticastCreate == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuMulticastCreate" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuMulticastCreate == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":4281
 *     cuPythonInit()
 *     if __cuMulticastCreate == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuMulticastCreate" not found')
 *     err = (<CUresult (*)(CUmemGenericAllocationHandle*, const CUmulticastObjectProp*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMulticastCreate)(mcHandle, prop)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":4282
 *     if __cuMulticastCreate == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuMulticastCreate" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUmemGenericAllocationHandle*, const CUmulticastObjectProp*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMulticastCreate)(mcHandle, prop)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__185, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 4282, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 4282, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":4281
 *     cuPythonInit()
 *     if __cuMulticastCreate == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuMulticastCreate" not found')
 *     err = (<CUresult (*)(CUmemGenericAllocationHandle*, const CUmulticastObjectProp*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMulticastCreate)(mcHandle, prop)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":4280
 *     global __cuMulticastCreate
 *     cuPythonInit()
 *     if __cuMulticastCreate == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuMulticastCreate" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":4283
 *         with gil:
 *             raise RuntimeError('Function "cuMulticastCreate" not found')
 *     err = (<CUresult (*)(CUmemGenericAllocationHandle*, const CUmulticastObjectProp*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMulticastCreate)(mcHandle, prop)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUmemGenericAllocationHandle *, CUmulticastObjectProp const *))__pyx_v_4cuda_5_cuda_5ccuda___cuMulticastCreate)(__pyx_v_mcHandle, __pyx_v_prop); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 4283, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":4284
 *             raise RuntimeError('Function "cuMulticastCreate" not found')
 *     err = (<CUresult (*)(CUmemGenericAllocationHandle*, const CUmulticastObjectProp*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMulticastCreate)(mcHandle, prop)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuMulticastAddDevice(CUmemGenericAllocationHandle mcHandle, CUdevice dev) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":4277
 *     return err
 * 
 * cdef CUresult _cuMulticastCreate(CUmemGenericAllocationHandle* mcHandle, const CUmulticastObjectProp* prop) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuMulticastCreate
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuMulticastCreate", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":4286
 *     return err
 * 
 * cdef CUresult _cuMulticastAddDevice(CUmemGenericAllocationHandle mcHandle, CUdevice dev) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuMulticastAddDevice
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuMulticastAddDevice(CUmemGenericAllocationHandle __pyx_v_mcHandle, CUdevice __pyx_v_dev) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuMulticastAddDevice", 1);
  __Pyx_TraceCall("_cuMulticastAddDevice", __pyx_f[0], 4286, 1, __PYX_ERR(0, 4286, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":4288
 * cdef CUresult _cuMulticastAddDevice(CUmemGenericAllocationHandle mcHandle, CUdevice dev) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuMulticastAddDevice
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuMulticastAddDevice == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 4288, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":4289
 *     global __cuMulticastAddDevice
 *     cuPythonInit()
 *     if __cuMulticastAddDevice == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuMulticastAddDevice" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuMulticastAddDevice == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":4290
 *     cuPythonInit()
 *     if __cuMulticastAddDevice == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuMulticastAddDevice" not found')
 *     err = (<CUresult (*)(CUmemGenericAllocationHandle, CUdevice) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMulticastAddDevice)(mcHandle, dev)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":4291
 *     if __cuMulticastAddDevice == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuMulticastAddDevice" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUmemGenericAllocationHandle, CUdevice) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMulticastAddDevice)(mcHandle, dev)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__186, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 4291, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 4291, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":4290
 *     cuPythonInit()
 *     if __cuMulticastAddDevice == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuMulticastAddDevice" not found')
 *     err = (<CUresult (*)(CUmemGenericAllocationHandle, CUdevice) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMulticastAddDevice)(mcHandle, dev)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":4289
 *     global __cuMulticastAddDevice
 *     cuPythonInit()
 *     if __cuMulticastAddDevice == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuMulticastAddDevice" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":4292
 *         with gil:
 *             raise RuntimeError('Function "cuMulticastAddDevice" not found')
 *     err = (<CUresult (*)(CUmemGenericAllocationHandle, CUdevice) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMulticastAddDevice)(mcHandle, dev)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUmemGenericAllocationHandle, CUdevice))__pyx_v_4cuda_5_cuda_5ccuda___cuMulticastAddDevice)(__pyx_v_mcHandle, __pyx_v_dev); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 4292, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":4293
 *             raise RuntimeError('Function "cuMulticastAddDevice" not found')
 *     err = (<CUresult (*)(CUmemGenericAllocationHandle, CUdevice) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMulticastAddDevice)(mcHandle, dev)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuMulticastBindMem(CUmemGenericAllocationHandle mcHandle, size_t mcOffset, CUmemGenericAllocationHandle memHandle, size_t memOffset, size_t size, unsigned long long flags) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":4286
 *     return err
 * 
 * cdef CUresult _cuMulticastAddDevice(CUmemGenericAllocationHandle mcHandle, CUdevice dev) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuMulticastAddDevice
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuMulticastAddDevice", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":4295
 *     return err
 * 
 * cdef CUresult _cuMulticastBindMem(CUmemGenericAllocationHandle mcHandle, size_t mcOffset, CUmemGenericAllocationHandle memHandle, size_t memOffset, size_t size, unsigned long long flags) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuMulticastBindMem
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuMulticastBindMem(CUmemGenericAllocationHandle __pyx_v_mcHandle, size_t __pyx_v_mcOffset, CUmemGenericAllocationHandle __pyx_v_memHandle, size_t __pyx_v_memOffset, size_t __pyx_v_size, unsigned PY_LONG_LONG __pyx_v_flags) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuMulticastBindMem", 1);
  __Pyx_TraceCall("_cuMulticastBindMem", __pyx_f[0], 4295, 1, __PYX_ERR(0, 4295, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":4297
 * cdef CUresult _cuMulticastBindMem(CUmemGenericAllocationHandle mcHandle, size_t mcOffset, CUmemGenericAllocationHandle memHandle, size_t memOffset, size_t size, unsigned long long flags) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuMulticastBindMem
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuMulticastBindMem == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 4297, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":4298
 *     global __cuMulticastBindMem
 *     cuPythonInit()
 *     if __cuMulticastBindMem == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuMulticastBindMem" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuMulticastBindMem == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":4299
 *     cuPythonInit()
 *     if __cuMulticastBindMem == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuMulticastBindMem" not found')
 *     err = (<CUresult (*)(CUmemGenericAllocationHandle, size_t, CUmemGenericAllocationHandle, size_t, size_t, unsigned long long) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMulticastBindMem)(mcHandle, mcOffset, memHandle, memOffset, size, flags)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":4300
 *     if __cuMulticastBindMem == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuMulticastBindMem" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUmemGenericAllocationHandle, size_t, CUmemGenericAllocationHandle, size_t, size_t, unsigned long long) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMulticastBindMem)(mcHandle, mcOffset, memHandle, memOffset, size, flags)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__187, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 4300, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 4300, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":4299
 *     cuPythonInit()
 *     if __cuMulticastBindMem == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuMulticastBindMem" not found')
 *     err = (<CUresult (*)(CUmemGenericAllocationHandle, size_t, CUmemGenericAllocationHandle, size_t, size_t, unsigned long long) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMulticastBindMem)(mcHandle, mcOffset, memHandle, memOffset, size, flags)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":4298
 *     global __cuMulticastBindMem
 *     cuPythonInit()
 *     if __cuMulticastBindMem == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuMulticastBindMem" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":4301
 *         with gil:
 *             raise RuntimeError('Function "cuMulticastBindMem" not found')
 *     err = (<CUresult (*)(CUmemGenericAllocationHandle, size_t, CUmemGenericAllocationHandle, size_t, size_t, unsigned long long) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMulticastBindMem)(mcHandle, mcOffset, memHandle, memOffset, size, flags)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUmemGenericAllocationHandle, size_t, CUmemGenericAllocationHandle, size_t, size_t, unsigned PY_LONG_LONG))__pyx_v_4cuda_5_cuda_5ccuda___cuMulticastBindMem)(__pyx_v_mcHandle, __pyx_v_mcOffset, __pyx_v_memHandle, __pyx_v_memOffset, __pyx_v_size, __pyx_v_flags); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 4301, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":4302
 *             raise RuntimeError('Function "cuMulticastBindMem" not found')
 *     err = (<CUresult (*)(CUmemGenericAllocationHandle, size_t, CUmemGenericAllocationHandle, size_t, size_t, unsigned long long) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMulticastBindMem)(mcHandle, mcOffset, memHandle, memOffset, size, flags)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuMulticastBindAddr(CUmemGenericAllocationHandle mcHandle, size_t mcOffset, CUdeviceptr memptr, size_t size, unsigned long long flags) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":4295
 *     return err
 * 
 * cdef CUresult _cuMulticastBindMem(CUmemGenericAllocationHandle mcHandle, size_t mcOffset, CUmemGenericAllocationHandle memHandle, size_t memOffset, size_t size, unsigned long long flags) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuMulticastBindMem
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuMulticastBindMem", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":4304
 *     return err
 * 
 * cdef CUresult _cuMulticastBindAddr(CUmemGenericAllocationHandle mcHandle, size_t mcOffset, CUdeviceptr memptr, size_t size, unsigned long long flags) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuMulticastBindAddr
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuMulticastBindAddr(CUmemGenericAllocationHandle __pyx_v_mcHandle, size_t __pyx_v_mcOffset, CUdeviceptr __pyx_v_memptr, size_t __pyx_v_size, unsigned PY_LONG_LONG __pyx_v_flags) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuMulticastBindAddr", 1);
  __Pyx_TraceCall("_cuMulticastBindAddr", __pyx_f[0], 4304, 1, __PYX_ERR(0, 4304, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":4306
 * cdef CUresult _cuMulticastBindAddr(CUmemGenericAllocationHandle mcHandle, size_t mcOffset, CUdeviceptr memptr, size_t size, unsigned long long flags) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuMulticastBindAddr
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuMulticastBindAddr == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 4306, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":4307
 *     global __cuMulticastBindAddr
 *     cuPythonInit()
 *     if __cuMulticastBindAddr == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuMulticastBindAddr" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuMulticastBindAddr == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":4308
 *     cuPythonInit()
 *     if __cuMulticastBindAddr == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuMulticastBindAddr" not found')
 *     err = (<CUresult (*)(CUmemGenericAllocationHandle, size_t, CUdeviceptr, size_t, unsigned long long) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMulticastBindAddr)(mcHandle, mcOffset, memptr, size, flags)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":4309
 *     if __cuMulticastBindAddr == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuMulticastBindAddr" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUmemGenericAllocationHandle, size_t, CUdeviceptr, size_t, unsigned long long) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMulticastBindAddr)(mcHandle, mcOffset, memptr, size, flags)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__188, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 4309, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 4309, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":4308
 *     cuPythonInit()
 *     if __cuMulticastBindAddr == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuMulticastBindAddr" not found')
 *     err = (<CUresult (*)(CUmemGenericAllocationHandle, size_t, CUdeviceptr, size_t, unsigned long long) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMulticastBindAddr)(mcHandle, mcOffset, memptr, size, flags)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":4307
 *     global __cuMulticastBindAddr
 *     cuPythonInit()
 *     if __cuMulticastBindAddr == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuMulticastBindAddr" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":4310
 *         with gil:
 *             raise RuntimeError('Function "cuMulticastBindAddr" not found')
 *     err = (<CUresult (*)(CUmemGenericAllocationHandle, size_t, CUdeviceptr, size_t, unsigned long long) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMulticastBindAddr)(mcHandle, mcOffset, memptr, size, flags)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUmemGenericAllocationHandle, size_t, CUdeviceptr, size_t, unsigned PY_LONG_LONG))__pyx_v_4cuda_5_cuda_5ccuda___cuMulticastBindAddr)(__pyx_v_mcHandle, __pyx_v_mcOffset, __pyx_v_memptr, __pyx_v_size, __pyx_v_flags); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 4310, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":4311
 *             raise RuntimeError('Function "cuMulticastBindAddr" not found')
 *     err = (<CUresult (*)(CUmemGenericAllocationHandle, size_t, CUdeviceptr, size_t, unsigned long long) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMulticastBindAddr)(mcHandle, mcOffset, memptr, size, flags)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuMulticastUnbind(CUmemGenericAllocationHandle mcHandle, CUdevice dev, size_t mcOffset, size_t size) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":4304
 *     return err
 * 
 * cdef CUresult _cuMulticastBindAddr(CUmemGenericAllocationHandle mcHandle, size_t mcOffset, CUdeviceptr memptr, size_t size, unsigned long long flags) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuMulticastBindAddr
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuMulticastBindAddr", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":4313
 *     return err
 * 
 * cdef CUresult _cuMulticastUnbind(CUmemGenericAllocationHandle mcHandle, CUdevice dev, size_t mcOffset, size_t size) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuMulticastUnbind
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuMulticastUnbind(CUmemGenericAllocationHandle __pyx_v_mcHandle, CUdevice __pyx_v_dev, size_t __pyx_v_mcOffset, size_t __pyx_v_size) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuMulticastUnbind", 1);
  __Pyx_TraceCall("_cuMulticastUnbind", __pyx_f[0], 4313, 1, __PYX_ERR(0, 4313, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":4315
 * cdef CUresult _cuMulticastUnbind(CUmemGenericAllocationHandle mcHandle, CUdevice dev, size_t mcOffset, size_t size) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuMulticastUnbind
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuMulticastUnbind == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 4315, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":4316
 *     global __cuMulticastUnbind
 *     cuPythonInit()
 *     if __cuMulticastUnbind == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuMulticastUnbind" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuMulticastUnbind == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":4317
 *     cuPythonInit()
 *     if __cuMulticastUnbind == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuMulticastUnbind" not found')
 *     err = (<CUresult (*)(CUmemGenericAllocationHandle, CUdevice, size_t, size_t) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMulticastUnbind)(mcHandle, dev, mcOffset, size)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":4318
 *     if __cuMulticastUnbind == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuMulticastUnbind" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUmemGenericAllocationHandle, CUdevice, size_t, size_t) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMulticastUnbind)(mcHandle, dev, mcOffset, size)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__189, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 4318, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 4318, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":4317
 *     cuPythonInit()
 *     if __cuMulticastUnbind == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuMulticastUnbind" not found')
 *     err = (<CUresult (*)(CUmemGenericAllocationHandle, CUdevice, size_t, size_t) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMulticastUnbind)(mcHandle, dev, mcOffset, size)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":4316
 *     global __cuMulticastUnbind
 *     cuPythonInit()
 *     if __cuMulticastUnbind == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuMulticastUnbind" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":4319
 *         with gil:
 *             raise RuntimeError('Function "cuMulticastUnbind" not found')
 *     err = (<CUresult (*)(CUmemGenericAllocationHandle, CUdevice, size_t, size_t) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMulticastUnbind)(mcHandle, dev, mcOffset, size)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUmemGenericAllocationHandle, CUdevice, size_t, size_t))__pyx_v_4cuda_5_cuda_5ccuda___cuMulticastUnbind)(__pyx_v_mcHandle, __pyx_v_dev, __pyx_v_mcOffset, __pyx_v_size); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 4319, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":4320
 *             raise RuntimeError('Function "cuMulticastUnbind" not found')
 *     err = (<CUresult (*)(CUmemGenericAllocationHandle, CUdevice, size_t, size_t) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMulticastUnbind)(mcHandle, dev, mcOffset, size)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuMulticastGetGranularity(size_t* granularity, const CUmulticastObjectProp* prop, CUmulticastGranularity_flags option) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":4313
 *     return err
 * 
 * cdef CUresult _cuMulticastUnbind(CUmemGenericAllocationHandle mcHandle, CUdevice dev, size_t mcOffset, size_t size) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuMulticastUnbind
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuMulticastUnbind", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":4322
 *     return err
 * 
 * cdef CUresult _cuMulticastGetGranularity(size_t* granularity, const CUmulticastObjectProp* prop, CUmulticastGranularity_flags option) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuMulticastGetGranularity
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuMulticastGetGranularity(size_t *__pyx_v_granularity, CUmulticastObjectProp const *__pyx_v_prop, CUmulticastGranularity_flags __pyx_v_option) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuMulticastGetGranularity", 1);
  __Pyx_TraceCall("_cuMulticastGetGranularity", __pyx_f[0], 4322, 1, __PYX_ERR(0, 4322, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":4324
 * cdef CUresult _cuMulticastGetGranularity(size_t* granularity, const CUmulticastObjectProp* prop, CUmulticastGranularity_flags option) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuMulticastGetGranularity
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuMulticastGetGranularity == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 4324, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":4325
 *     global __cuMulticastGetGranularity
 *     cuPythonInit()
 *     if __cuMulticastGetGranularity == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuMulticastGetGranularity" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuMulticastGetGranularity == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":4326
 *     cuPythonInit()
 *     if __cuMulticastGetGranularity == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuMulticastGetGranularity" not found')
 *     err = (<CUresult (*)(size_t*, const CUmulticastObjectProp*, CUmulticastGranularity_flags) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMulticastGetGranularity)(granularity, prop, option)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":4327
 *     if __cuMulticastGetGranularity == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuMulticastGetGranularity" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(size_t*, const CUmulticastObjectProp*, CUmulticastGranularity_flags) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMulticastGetGranularity)(granularity, prop, option)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__190, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 4327, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 4327, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":4326
 *     cuPythonInit()
 *     if __cuMulticastGetGranularity == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuMulticastGetGranularity" not found')
 *     err = (<CUresult (*)(size_t*, const CUmulticastObjectProp*, CUmulticastGranularity_flags) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMulticastGetGranularity)(granularity, prop, option)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":4325
 *     global __cuMulticastGetGranularity
 *     cuPythonInit()
 *     if __cuMulticastGetGranularity == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuMulticastGetGranularity" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":4328
 *         with gil:
 *             raise RuntimeError('Function "cuMulticastGetGranularity" not found')
 *     err = (<CUresult (*)(size_t*, const CUmulticastObjectProp*, CUmulticastGranularity_flags) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMulticastGetGranularity)(granularity, prop, option)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(size_t *, CUmulticastObjectProp const *, CUmulticastGranularity_flags))__pyx_v_4cuda_5_cuda_5ccuda___cuMulticastGetGranularity)(__pyx_v_granularity, __pyx_v_prop, __pyx_v_option); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 4328, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":4329
 *             raise RuntimeError('Function "cuMulticastGetGranularity" not found')
 *     err = (<CUresult (*)(size_t*, const CUmulticastObjectProp*, CUmulticastGranularity_flags) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMulticastGetGranularity)(granularity, prop, option)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuPointerGetAttribute(void* data, CUpointer_attribute attribute, CUdeviceptr ptr) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":4322
 *     return err
 * 
 * cdef CUresult _cuMulticastGetGranularity(size_t* granularity, const CUmulticastObjectProp* prop, CUmulticastGranularity_flags option) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuMulticastGetGranularity
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuMulticastGetGranularity", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":4331
 *     return err
 * 
 * cdef CUresult _cuPointerGetAttribute(void* data, CUpointer_attribute attribute, CUdeviceptr ptr) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuPointerGetAttribute
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuPointerGetAttribute(void *__pyx_v_data, CUpointer_attribute __pyx_v_attribute, CUdeviceptr __pyx_v_ptr) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuPointerGetAttribute", 1);
  __Pyx_TraceCall("_cuPointerGetAttribute", __pyx_f[0], 4331, 1, __PYX_ERR(0, 4331, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":4333
 * cdef CUresult _cuPointerGetAttribute(void* data, CUpointer_attribute attribute, CUdeviceptr ptr) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuPointerGetAttribute
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuPointerGetAttribute == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 4333, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":4334
 *     global __cuPointerGetAttribute
 *     cuPythonInit()
 *     if __cuPointerGetAttribute == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuPointerGetAttribute" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuPointerGetAttribute == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":4335
 *     cuPythonInit()
 *     if __cuPointerGetAttribute == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuPointerGetAttribute" not found')
 *     err = (<CUresult (*)(void*, CUpointer_attribute, CUdeviceptr) except ?CUDA_ERROR_NOT_FOUND nogil> __cuPointerGetAttribute)(data, attribute, ptr)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":4336
 *     if __cuPointerGetAttribute == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuPointerGetAttribute" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(void*, CUpointer_attribute, CUdeviceptr) except ?CUDA_ERROR_NOT_FOUND nogil> __cuPointerGetAttribute)(data, attribute, ptr)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__191, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 4336, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 4336, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":4335
 *     cuPythonInit()
 *     if __cuPointerGetAttribute == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuPointerGetAttribute" not found')
 *     err = (<CUresult (*)(void*, CUpointer_attribute, CUdeviceptr) except ?CUDA_ERROR_NOT_FOUND nogil> __cuPointerGetAttribute)(data, attribute, ptr)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":4334
 *     global __cuPointerGetAttribute
 *     cuPythonInit()
 *     if __cuPointerGetAttribute == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuPointerGetAttribute" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":4337
 *         with gil:
 *             raise RuntimeError('Function "cuPointerGetAttribute" not found')
 *     err = (<CUresult (*)(void*, CUpointer_attribute, CUdeviceptr) except ?CUDA_ERROR_NOT_FOUND nogil> __cuPointerGetAttribute)(data, attribute, ptr)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(void *, CUpointer_attribute, CUdeviceptr))__pyx_v_4cuda_5_cuda_5ccuda___cuPointerGetAttribute)(__pyx_v_data, __pyx_v_attribute, __pyx_v_ptr); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 4337, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":4338
 *             raise RuntimeError('Function "cuPointerGetAttribute" not found')
 *     err = (<CUresult (*)(void*, CUpointer_attribute, CUdeviceptr) except ?CUDA_ERROR_NOT_FOUND nogil> __cuPointerGetAttribute)(data, attribute, ptr)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuMemPrefetchAsync(CUdeviceptr devPtr, size_t count, CUdevice dstDevice, CUstream hStream) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":4331
 *     return err
 * 
 * cdef CUresult _cuPointerGetAttribute(void* data, CUpointer_attribute attribute, CUdeviceptr ptr) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuPointerGetAttribute
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuPointerGetAttribute", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":4340
 *     return err
 * 
 * cdef CUresult _cuMemPrefetchAsync(CUdeviceptr devPtr, size_t count, CUdevice dstDevice, CUstream hStream) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuMemPrefetchAsync
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuMemPrefetchAsync(CUdeviceptr __pyx_v_devPtr, size_t __pyx_v_count, CUdevice __pyx_v_dstDevice, CUstream __pyx_v_hStream) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuMemPrefetchAsync", 1);
  __Pyx_TraceCall("_cuMemPrefetchAsync", __pyx_f[0], 4340, 1, __PYX_ERR(0, 4340, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":4342
 * cdef CUresult _cuMemPrefetchAsync(CUdeviceptr devPtr, size_t count, CUdevice dstDevice, CUstream hStream) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuMemPrefetchAsync
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuMemPrefetchAsync == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 4342, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":4343
 *     global __cuMemPrefetchAsync
 *     cuPythonInit()
 *     if __cuMemPrefetchAsync == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuMemPrefetchAsync" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuMemPrefetchAsync == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":4344
 *     cuPythonInit()
 *     if __cuMemPrefetchAsync == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuMemPrefetchAsync" not found')
 *     err = (<CUresult (*)(CUdeviceptr, size_t, CUdevice, CUstream) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemPrefetchAsync)(devPtr, count, dstDevice, hStream)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":4345
 *     if __cuMemPrefetchAsync == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuMemPrefetchAsync" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUdeviceptr, size_t, CUdevice, CUstream) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemPrefetchAsync)(devPtr, count, dstDevice, hStream)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__192, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 4345, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 4345, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":4344
 *     cuPythonInit()
 *     if __cuMemPrefetchAsync == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuMemPrefetchAsync" not found')
 *     err = (<CUresult (*)(CUdeviceptr, size_t, CUdevice, CUstream) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemPrefetchAsync)(devPtr, count, dstDevice, hStream)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":4343
 *     global __cuMemPrefetchAsync
 *     cuPythonInit()
 *     if __cuMemPrefetchAsync == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuMemPrefetchAsync" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":4346
 *         with gil:
 *             raise RuntimeError('Function "cuMemPrefetchAsync" not found')
 *     err = (<CUresult (*)(CUdeviceptr, size_t, CUdevice, CUstream) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemPrefetchAsync)(devPtr, count, dstDevice, hStream)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUdeviceptr, size_t, CUdevice, CUstream))__pyx_v_4cuda_5_cuda_5ccuda___cuMemPrefetchAsync)(__pyx_v_devPtr, __pyx_v_count, __pyx_v_dstDevice, __pyx_v_hStream); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 4346, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":4347
 *             raise RuntimeError('Function "cuMemPrefetchAsync" not found')
 *     err = (<CUresult (*)(CUdeviceptr, size_t, CUdevice, CUstream) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemPrefetchAsync)(devPtr, count, dstDevice, hStream)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuMemPrefetchAsync_v2(CUdeviceptr devPtr, size_t count, CUmemLocation location, unsigned int flags, CUstream hStream) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":4340
 *     return err
 * 
 * cdef CUresult _cuMemPrefetchAsync(CUdeviceptr devPtr, size_t count, CUdevice dstDevice, CUstream hStream) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuMemPrefetchAsync
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuMemPrefetchAsync", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":4349
 *     return err
 * 
 * cdef CUresult _cuMemPrefetchAsync_v2(CUdeviceptr devPtr, size_t count, CUmemLocation location, unsigned int flags, CUstream hStream) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuMemPrefetchAsync_v2
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuMemPrefetchAsync_v2(CUdeviceptr __pyx_v_devPtr, size_t __pyx_v_count, CUmemLocation __pyx_v_location, unsigned int __pyx_v_flags, CUstream __pyx_v_hStream) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuMemPrefetchAsync_v2", 1);
  __Pyx_TraceCall("_cuMemPrefetchAsync_v2", __pyx_f[0], 4349, 1, __PYX_ERR(0, 4349, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":4351
 * cdef CUresult _cuMemPrefetchAsync_v2(CUdeviceptr devPtr, size_t count, CUmemLocation location, unsigned int flags, CUstream hStream) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuMemPrefetchAsync_v2
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuMemPrefetchAsync_v2 == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 4351, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":4352
 *     global __cuMemPrefetchAsync_v2
 *     cuPythonInit()
 *     if __cuMemPrefetchAsync_v2 == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuMemPrefetchAsync_v2" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuMemPrefetchAsync_v2 == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":4353
 *     cuPythonInit()
 *     if __cuMemPrefetchAsync_v2 == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuMemPrefetchAsync_v2" not found')
 *     err = (<CUresult (*)(CUdeviceptr, size_t, CUmemLocation, unsigned int, CUstream) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemPrefetchAsync_v2)(devPtr, count, location, flags, hStream)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":4354
 *     if __cuMemPrefetchAsync_v2 == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuMemPrefetchAsync_v2" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUdeviceptr, size_t, CUmemLocation, unsigned int, CUstream) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemPrefetchAsync_v2)(devPtr, count, location, flags, hStream)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__193, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 4354, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 4354, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":4353
 *     cuPythonInit()
 *     if __cuMemPrefetchAsync_v2 == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuMemPrefetchAsync_v2" not found')
 *     err = (<CUresult (*)(CUdeviceptr, size_t, CUmemLocation, unsigned int, CUstream) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemPrefetchAsync_v2)(devPtr, count, location, flags, hStream)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":4352
 *     global __cuMemPrefetchAsync_v2
 *     cuPythonInit()
 *     if __cuMemPrefetchAsync_v2 == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuMemPrefetchAsync_v2" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":4355
 *         with gil:
 *             raise RuntimeError('Function "cuMemPrefetchAsync_v2" not found')
 *     err = (<CUresult (*)(CUdeviceptr, size_t, CUmemLocation, unsigned int, CUstream) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemPrefetchAsync_v2)(devPtr, count, location, flags, hStream)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUdeviceptr, size_t, CUmemLocation, unsigned int, CUstream))__pyx_v_4cuda_5_cuda_5ccuda___cuMemPrefetchAsync_v2)(__pyx_v_devPtr, __pyx_v_count, __pyx_v_location, __pyx_v_flags, __pyx_v_hStream); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 4355, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":4356
 *             raise RuntimeError('Function "cuMemPrefetchAsync_v2" not found')
 *     err = (<CUresult (*)(CUdeviceptr, size_t, CUmemLocation, unsigned int, CUstream) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemPrefetchAsync_v2)(devPtr, count, location, flags, hStream)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuMemAdvise(CUdeviceptr devPtr, size_t count, CUmem_advise advice, CUdevice device) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":4349
 *     return err
 * 
 * cdef CUresult _cuMemPrefetchAsync_v2(CUdeviceptr devPtr, size_t count, CUmemLocation location, unsigned int flags, CUstream hStream) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuMemPrefetchAsync_v2
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuMemPrefetchAsync_v2", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":4358
 *     return err
 * 
 * cdef CUresult _cuMemAdvise(CUdeviceptr devPtr, size_t count, CUmem_advise advice, CUdevice device) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuMemAdvise
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuMemAdvise(CUdeviceptr __pyx_v_devPtr, size_t __pyx_v_count, CUmem_advise __pyx_v_advice, CUdevice __pyx_v_device) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuMemAdvise", 1);
  __Pyx_TraceCall("_cuMemAdvise", __pyx_f[0], 4358, 1, __PYX_ERR(0, 4358, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":4360
 * cdef CUresult _cuMemAdvise(CUdeviceptr devPtr, size_t count, CUmem_advise advice, CUdevice device) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuMemAdvise
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuMemAdvise == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 4360, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":4361
 *     global __cuMemAdvise
 *     cuPythonInit()
 *     if __cuMemAdvise == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuMemAdvise" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuMemAdvise == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":4362
 *     cuPythonInit()
 *     if __cuMemAdvise == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuMemAdvise" not found')
 *     err = (<CUresult (*)(CUdeviceptr, size_t, CUmem_advise, CUdevice) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemAdvise)(devPtr, count, advice, device)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":4363
 *     if __cuMemAdvise == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuMemAdvise" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUdeviceptr, size_t, CUmem_advise, CUdevice) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemAdvise)(devPtr, count, advice, device)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__194, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 4363, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 4363, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":4362
 *     cuPythonInit()
 *     if __cuMemAdvise == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuMemAdvise" not found')
 *     err = (<CUresult (*)(CUdeviceptr, size_t, CUmem_advise, CUdevice) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemAdvise)(devPtr, count, advice, device)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":4361
 *     global __cuMemAdvise
 *     cuPythonInit()
 *     if __cuMemAdvise == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuMemAdvise" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":4364
 *         with gil:
 *             raise RuntimeError('Function "cuMemAdvise" not found')
 *     err = (<CUresult (*)(CUdeviceptr, size_t, CUmem_advise, CUdevice) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemAdvise)(devPtr, count, advice, device)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUdeviceptr, size_t, CUmem_advise, CUdevice))__pyx_v_4cuda_5_cuda_5ccuda___cuMemAdvise)(__pyx_v_devPtr, __pyx_v_count, __pyx_v_advice, __pyx_v_device); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 4364, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":4365
 *             raise RuntimeError('Function "cuMemAdvise" not found')
 *     err = (<CUresult (*)(CUdeviceptr, size_t, CUmem_advise, CUdevice) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemAdvise)(devPtr, count, advice, device)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuMemAdvise_v2(CUdeviceptr devPtr, size_t count, CUmem_advise advice, CUmemLocation location) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":4358
 *     return err
 * 
 * cdef CUresult _cuMemAdvise(CUdeviceptr devPtr, size_t count, CUmem_advise advice, CUdevice device) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuMemAdvise
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuMemAdvise", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":4367
 *     return err
 * 
 * cdef CUresult _cuMemAdvise_v2(CUdeviceptr devPtr, size_t count, CUmem_advise advice, CUmemLocation location) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuMemAdvise_v2
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuMemAdvise_v2(CUdeviceptr __pyx_v_devPtr, size_t __pyx_v_count, CUmem_advise __pyx_v_advice, CUmemLocation __pyx_v_location) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuMemAdvise_v2", 1);
  __Pyx_TraceCall("_cuMemAdvise_v2", __pyx_f[0], 4367, 1, __PYX_ERR(0, 4367, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":4369
 * cdef CUresult _cuMemAdvise_v2(CUdeviceptr devPtr, size_t count, CUmem_advise advice, CUmemLocation location) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuMemAdvise_v2
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuMemAdvise_v2 == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 4369, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":4370
 *     global __cuMemAdvise_v2
 *     cuPythonInit()
 *     if __cuMemAdvise_v2 == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuMemAdvise_v2" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuMemAdvise_v2 == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":4371
 *     cuPythonInit()
 *     if __cuMemAdvise_v2 == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuMemAdvise_v2" not found')
 *     err = (<CUresult (*)(CUdeviceptr, size_t, CUmem_advise, CUmemLocation) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemAdvise_v2)(devPtr, count, advice, location)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":4372
 *     if __cuMemAdvise_v2 == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuMemAdvise_v2" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUdeviceptr, size_t, CUmem_advise, CUmemLocation) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemAdvise_v2)(devPtr, count, advice, location)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__195, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 4372, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 4372, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":4371
 *     cuPythonInit()
 *     if __cuMemAdvise_v2 == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuMemAdvise_v2" not found')
 *     err = (<CUresult (*)(CUdeviceptr, size_t, CUmem_advise, CUmemLocation) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemAdvise_v2)(devPtr, count, advice, location)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":4370
 *     global __cuMemAdvise_v2
 *     cuPythonInit()
 *     if __cuMemAdvise_v2 == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuMemAdvise_v2" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":4373
 *         with gil:
 *             raise RuntimeError('Function "cuMemAdvise_v2" not found')
 *     err = (<CUresult (*)(CUdeviceptr, size_t, CUmem_advise, CUmemLocation) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemAdvise_v2)(devPtr, count, advice, location)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUdeviceptr, size_t, CUmem_advise, CUmemLocation))__pyx_v_4cuda_5_cuda_5ccuda___cuMemAdvise_v2)(__pyx_v_devPtr, __pyx_v_count, __pyx_v_advice, __pyx_v_location); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 4373, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":4374
 *             raise RuntimeError('Function "cuMemAdvise_v2" not found')
 *     err = (<CUresult (*)(CUdeviceptr, size_t, CUmem_advise, CUmemLocation) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemAdvise_v2)(devPtr, count, advice, location)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuMemRangeGetAttribute(void* data, size_t dataSize, CUmem_range_attribute attribute, CUdeviceptr devPtr, size_t count) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":4367
 *     return err
 * 
 * cdef CUresult _cuMemAdvise_v2(CUdeviceptr devPtr, size_t count, CUmem_advise advice, CUmemLocation location) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuMemAdvise_v2
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuMemAdvise_v2", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":4376
 *     return err
 * 
 * cdef CUresult _cuMemRangeGetAttribute(void* data, size_t dataSize, CUmem_range_attribute attribute, CUdeviceptr devPtr, size_t count) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuMemRangeGetAttribute
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuMemRangeGetAttribute(void *__pyx_v_data, size_t __pyx_v_dataSize, CUmem_range_attribute __pyx_v_attribute, CUdeviceptr __pyx_v_devPtr, size_t __pyx_v_count) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuMemRangeGetAttribute", 1);
  __Pyx_TraceCall("_cuMemRangeGetAttribute", __pyx_f[0], 4376, 1, __PYX_ERR(0, 4376, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":4378
 * cdef CUresult _cuMemRangeGetAttribute(void* data, size_t dataSize, CUmem_range_attribute attribute, CUdeviceptr devPtr, size_t count) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuMemRangeGetAttribute
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuMemRangeGetAttribute == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 4378, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":4379
 *     global __cuMemRangeGetAttribute
 *     cuPythonInit()
 *     if __cuMemRangeGetAttribute == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuMemRangeGetAttribute" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuMemRangeGetAttribute == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":4380
 *     cuPythonInit()
 *     if __cuMemRangeGetAttribute == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuMemRangeGetAttribute" not found')
 *     err = (<CUresult (*)(void*, size_t, CUmem_range_attribute, CUdeviceptr, size_t) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemRangeGetAttribute)(data, dataSize, attribute, devPtr, count)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":4381
 *     if __cuMemRangeGetAttribute == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuMemRangeGetAttribute" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(void*, size_t, CUmem_range_attribute, CUdeviceptr, size_t) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemRangeGetAttribute)(data, dataSize, attribute, devPtr, count)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__196, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 4381, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 4381, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":4380
 *     cuPythonInit()
 *     if __cuMemRangeGetAttribute == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuMemRangeGetAttribute" not found')
 *     err = (<CUresult (*)(void*, size_t, CUmem_range_attribute, CUdeviceptr, size_t) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemRangeGetAttribute)(data, dataSize, attribute, devPtr, count)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":4379
 *     global __cuMemRangeGetAttribute
 *     cuPythonInit()
 *     if __cuMemRangeGetAttribute == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuMemRangeGetAttribute" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":4382
 *         with gil:
 *             raise RuntimeError('Function "cuMemRangeGetAttribute" not found')
 *     err = (<CUresult (*)(void*, size_t, CUmem_range_attribute, CUdeviceptr, size_t) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemRangeGetAttribute)(data, dataSize, attribute, devPtr, count)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(void *, size_t, CUmem_range_attribute, CUdeviceptr, size_t))__pyx_v_4cuda_5_cuda_5ccuda___cuMemRangeGetAttribute)(__pyx_v_data, __pyx_v_dataSize, __pyx_v_attribute, __pyx_v_devPtr, __pyx_v_count); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 4382, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":4383
 *             raise RuntimeError('Function "cuMemRangeGetAttribute" not found')
 *     err = (<CUresult (*)(void*, size_t, CUmem_range_attribute, CUdeviceptr, size_t) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemRangeGetAttribute)(data, dataSize, attribute, devPtr, count)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuMemRangeGetAttributes(void** data, size_t* dataSizes, CUmem_range_attribute* attributes, size_t numAttributes, CUdeviceptr devPtr, size_t count) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":4376
 *     return err
 * 
 * cdef CUresult _cuMemRangeGetAttribute(void* data, size_t dataSize, CUmem_range_attribute attribute, CUdeviceptr devPtr, size_t count) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuMemRangeGetAttribute
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuMemRangeGetAttribute", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":4385
 *     return err
 * 
 * cdef CUresult _cuMemRangeGetAttributes(void** data, size_t* dataSizes, CUmem_range_attribute* attributes, size_t numAttributes, CUdeviceptr devPtr, size_t count) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuMemRangeGetAttributes
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuMemRangeGetAttributes(void **__pyx_v_data, size_t *__pyx_v_dataSizes, CUmem_range_attribute *__pyx_v_attributes, size_t __pyx_v_numAttributes, CUdeviceptr __pyx_v_devPtr, size_t __pyx_v_count) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuMemRangeGetAttributes", 1);
  __Pyx_TraceCall("_cuMemRangeGetAttributes", __pyx_f[0], 4385, 1, __PYX_ERR(0, 4385, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":4387
 * cdef CUresult _cuMemRangeGetAttributes(void** data, size_t* dataSizes, CUmem_range_attribute* attributes, size_t numAttributes, CUdeviceptr devPtr, size_t count) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuMemRangeGetAttributes
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuMemRangeGetAttributes == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 4387, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":4388
 *     global __cuMemRangeGetAttributes
 *     cuPythonInit()
 *     if __cuMemRangeGetAttributes == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuMemRangeGetAttributes" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuMemRangeGetAttributes == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":4389
 *     cuPythonInit()
 *     if __cuMemRangeGetAttributes == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuMemRangeGetAttributes" not found')
 *     err = (<CUresult (*)(void**, size_t*, CUmem_range_attribute*, size_t, CUdeviceptr, size_t) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemRangeGetAttributes)(data, dataSizes, attributes, numAttributes, devPtr, count)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":4390
 *     if __cuMemRangeGetAttributes == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuMemRangeGetAttributes" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(void**, size_t*, CUmem_range_attribute*, size_t, CUdeviceptr, size_t) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemRangeGetAttributes)(data, dataSizes, attributes, numAttributes, devPtr, count)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__197, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 4390, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 4390, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":4389
 *     cuPythonInit()
 *     if __cuMemRangeGetAttributes == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuMemRangeGetAttributes" not found')
 *     err = (<CUresult (*)(void**, size_t*, CUmem_range_attribute*, size_t, CUdeviceptr, size_t) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemRangeGetAttributes)(data, dataSizes, attributes, numAttributes, devPtr, count)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":4388
 *     global __cuMemRangeGetAttributes
 *     cuPythonInit()
 *     if __cuMemRangeGetAttributes == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuMemRangeGetAttributes" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":4391
 *         with gil:
 *             raise RuntimeError('Function "cuMemRangeGetAttributes" not found')
 *     err = (<CUresult (*)(void**, size_t*, CUmem_range_attribute*, size_t, CUdeviceptr, size_t) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemRangeGetAttributes)(data, dataSizes, attributes, numAttributes, devPtr, count)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(void **, size_t *, CUmem_range_attribute *, size_t, CUdeviceptr, size_t))__pyx_v_4cuda_5_cuda_5ccuda___cuMemRangeGetAttributes)(__pyx_v_data, __pyx_v_dataSizes, __pyx_v_attributes, __pyx_v_numAttributes, __pyx_v_devPtr, __pyx_v_count); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 4391, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":4392
 *             raise RuntimeError('Function "cuMemRangeGetAttributes" not found')
 *     err = (<CUresult (*)(void**, size_t*, CUmem_range_attribute*, size_t, CUdeviceptr, size_t) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemRangeGetAttributes)(data, dataSizes, attributes, numAttributes, devPtr, count)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuPointerSetAttribute(const void* value, CUpointer_attribute attribute, CUdeviceptr ptr) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":4385
 *     return err
 * 
 * cdef CUresult _cuMemRangeGetAttributes(void** data, size_t* dataSizes, CUmem_range_attribute* attributes, size_t numAttributes, CUdeviceptr devPtr, size_t count) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuMemRangeGetAttributes
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuMemRangeGetAttributes", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":4394
 *     return err
 * 
 * cdef CUresult _cuPointerSetAttribute(const void* value, CUpointer_attribute attribute, CUdeviceptr ptr) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuPointerSetAttribute
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuPointerSetAttribute(void const *__pyx_v_value, CUpointer_attribute __pyx_v_attribute, CUdeviceptr __pyx_v_ptr) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuPointerSetAttribute", 1);
  __Pyx_TraceCall("_cuPointerSetAttribute", __pyx_f[0], 4394, 1, __PYX_ERR(0, 4394, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":4396
 * cdef CUresult _cuPointerSetAttribute(const void* value, CUpointer_attribute attribute, CUdeviceptr ptr) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuPointerSetAttribute
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuPointerSetAttribute == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 4396, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":4397
 *     global __cuPointerSetAttribute
 *     cuPythonInit()
 *     if __cuPointerSetAttribute == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuPointerSetAttribute" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuPointerSetAttribute == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":4398
 *     cuPythonInit()
 *     if __cuPointerSetAttribute == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuPointerSetAttribute" not found')
 *     err = (<CUresult (*)(const void*, CUpointer_attribute, CUdeviceptr) except ?CUDA_ERROR_NOT_FOUND nogil> __cuPointerSetAttribute)(value, attribute, ptr)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":4399
 *     if __cuPointerSetAttribute == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuPointerSetAttribute" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(const void*, CUpointer_attribute, CUdeviceptr) except ?CUDA_ERROR_NOT_FOUND nogil> __cuPointerSetAttribute)(value, attribute, ptr)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__198, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 4399, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 4399, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":4398
 *     cuPythonInit()
 *     if __cuPointerSetAttribute == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuPointerSetAttribute" not found')
 *     err = (<CUresult (*)(const void*, CUpointer_attribute, CUdeviceptr) except ?CUDA_ERROR_NOT_FOUND nogil> __cuPointerSetAttribute)(value, attribute, ptr)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":4397
 *     global __cuPointerSetAttribute
 *     cuPythonInit()
 *     if __cuPointerSetAttribute == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuPointerSetAttribute" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":4400
 *         with gil:
 *             raise RuntimeError('Function "cuPointerSetAttribute" not found')
 *     err = (<CUresult (*)(const void*, CUpointer_attribute, CUdeviceptr) except ?CUDA_ERROR_NOT_FOUND nogil> __cuPointerSetAttribute)(value, attribute, ptr)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(void const *, CUpointer_attribute, CUdeviceptr))__pyx_v_4cuda_5_cuda_5ccuda___cuPointerSetAttribute)(__pyx_v_value, __pyx_v_attribute, __pyx_v_ptr); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 4400, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":4401
 *             raise RuntimeError('Function "cuPointerSetAttribute" not found')
 *     err = (<CUresult (*)(const void*, CUpointer_attribute, CUdeviceptr) except ?CUDA_ERROR_NOT_FOUND nogil> __cuPointerSetAttribute)(value, attribute, ptr)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuPointerGetAttributes(unsigned int numAttributes, CUpointer_attribute* attributes, void** data, CUdeviceptr ptr) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":4394
 *     return err
 * 
 * cdef CUresult _cuPointerSetAttribute(const void* value, CUpointer_attribute attribute, CUdeviceptr ptr) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuPointerSetAttribute
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuPointerSetAttribute", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":4403
 *     return err
 * 
 * cdef CUresult _cuPointerGetAttributes(unsigned int numAttributes, CUpointer_attribute* attributes, void** data, CUdeviceptr ptr) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuPointerGetAttributes
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuPointerGetAttributes(unsigned int __pyx_v_numAttributes, CUpointer_attribute *__pyx_v_attributes, void **__pyx_v_data, CUdeviceptr __pyx_v_ptr) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuPointerGetAttributes", 1);
  __Pyx_TraceCall("_cuPointerGetAttributes", __pyx_f[0], 4403, 1, __PYX_ERR(0, 4403, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":4405
 * cdef CUresult _cuPointerGetAttributes(unsigned int numAttributes, CUpointer_attribute* attributes, void** data, CUdeviceptr ptr) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuPointerGetAttributes
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuPointerGetAttributes == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 4405, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":4406
 *     global __cuPointerGetAttributes
 *     cuPythonInit()
 *     if __cuPointerGetAttributes == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuPointerGetAttributes" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuPointerGetAttributes == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":4407
 *     cuPythonInit()
 *     if __cuPointerGetAttributes == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuPointerGetAttributes" not found')
 *     err = (<CUresult (*)(unsigned int, CUpointer_attribute*, void**, CUdeviceptr) except ?CUDA_ERROR_NOT_FOUND nogil> __cuPointerGetAttributes)(numAttributes, attributes, data, ptr)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":4408
 *     if __cuPointerGetAttributes == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuPointerGetAttributes" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(unsigned int, CUpointer_attribute*, void**, CUdeviceptr) except ?CUDA_ERROR_NOT_FOUND nogil> __cuPointerGetAttributes)(numAttributes, attributes, data, ptr)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__199, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 4408, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 4408, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":4407
 *     cuPythonInit()
 *     if __cuPointerGetAttributes == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuPointerGetAttributes" not found')
 *     err = (<CUresult (*)(unsigned int, CUpointer_attribute*, void**, CUdeviceptr) except ?CUDA_ERROR_NOT_FOUND nogil> __cuPointerGetAttributes)(numAttributes, attributes, data, ptr)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":4406
 *     global __cuPointerGetAttributes
 *     cuPythonInit()
 *     if __cuPointerGetAttributes == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuPointerGetAttributes" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":4409
 *         with gil:
 *             raise RuntimeError('Function "cuPointerGetAttributes" not found')
 *     err = (<CUresult (*)(unsigned int, CUpointer_attribute*, void**, CUdeviceptr) except ?CUDA_ERROR_NOT_FOUND nogil> __cuPointerGetAttributes)(numAttributes, attributes, data, ptr)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(unsigned int, CUpointer_attribute *, void **, CUdeviceptr))__pyx_v_4cuda_5_cuda_5ccuda___cuPointerGetAttributes)(__pyx_v_numAttributes, __pyx_v_attributes, __pyx_v_data, __pyx_v_ptr); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 4409, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":4410
 *             raise RuntimeError('Function "cuPointerGetAttributes" not found')
 *     err = (<CUresult (*)(unsigned int, CUpointer_attribute*, void**, CUdeviceptr) except ?CUDA_ERROR_NOT_FOUND nogil> __cuPointerGetAttributes)(numAttributes, attributes, data, ptr)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuStreamCreate(CUstream* phStream, unsigned int Flags) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":4403
 *     return err
 * 
 * cdef CUresult _cuPointerGetAttributes(unsigned int numAttributes, CUpointer_attribute* attributes, void** data, CUdeviceptr ptr) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuPointerGetAttributes
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuPointerGetAttributes", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":4412
 *     return err
 * 
 * cdef CUresult _cuStreamCreate(CUstream* phStream, unsigned int Flags) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuStreamCreate
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuStreamCreate(CUstream *__pyx_v_phStream, unsigned int __pyx_v_Flags) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuStreamCreate", 1);
  __Pyx_TraceCall("_cuStreamCreate", __pyx_f[0], 4412, 1, __PYX_ERR(0, 4412, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":4414
 * cdef CUresult _cuStreamCreate(CUstream* phStream, unsigned int Flags) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuStreamCreate
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuStreamCreate == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 4414, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":4415
 *     global __cuStreamCreate
 *     cuPythonInit()
 *     if __cuStreamCreate == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuStreamCreate" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuStreamCreate == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":4416
 *     cuPythonInit()
 *     if __cuStreamCreate == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuStreamCreate" not found')
 *     err = (<CUresult (*)(CUstream*, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuStreamCreate)(phStream, Flags)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":4417
 *     if __cuStreamCreate == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuStreamCreate" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUstream*, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuStreamCreate)(phStream, Flags)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__200, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 4417, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 4417, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":4416
 *     cuPythonInit()
 *     if __cuStreamCreate == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuStreamCreate" not found')
 *     err = (<CUresult (*)(CUstream*, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuStreamCreate)(phStream, Flags)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":4415
 *     global __cuStreamCreate
 *     cuPythonInit()
 *     if __cuStreamCreate == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuStreamCreate" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":4418
 *         with gil:
 *             raise RuntimeError('Function "cuStreamCreate" not found')
 *     err = (<CUresult (*)(CUstream*, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuStreamCreate)(phStream, Flags)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUstream *, unsigned int))__pyx_v_4cuda_5_cuda_5ccuda___cuStreamCreate)(__pyx_v_phStream, __pyx_v_Flags); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 4418, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":4419
 *             raise RuntimeError('Function "cuStreamCreate" not found')
 *     err = (<CUresult (*)(CUstream*, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuStreamCreate)(phStream, Flags)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuStreamCreateWithPriority(CUstream* phStream, unsigned int flags, int priority) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":4412
 *     return err
 * 
 * cdef CUresult _cuStreamCreate(CUstream* phStream, unsigned int Flags) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuStreamCreate
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuStreamCreate", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":4421
 *     return err
 * 
 * cdef CUresult _cuStreamCreateWithPriority(CUstream* phStream, unsigned int flags, int priority) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuStreamCreateWithPriority
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuStreamCreateWithPriority(CUstream *__pyx_v_phStream, unsigned int __pyx_v_flags, int __pyx_v_priority) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuStreamCreateWithPriority", 1);
  __Pyx_TraceCall("_cuStreamCreateWithPriority", __pyx_f[0], 4421, 1, __PYX_ERR(0, 4421, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":4423
 * cdef CUresult _cuStreamCreateWithPriority(CUstream* phStream, unsigned int flags, int priority) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuStreamCreateWithPriority
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuStreamCreateWithPriority == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 4423, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":4424
 *     global __cuStreamCreateWithPriority
 *     cuPythonInit()
 *     if __cuStreamCreateWithPriority == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuStreamCreateWithPriority" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuStreamCreateWithPriority == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":4425
 *     cuPythonInit()
 *     if __cuStreamCreateWithPriority == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuStreamCreateWithPriority" not found')
 *     err = (<CUresult (*)(CUstream*, unsigned int, int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuStreamCreateWithPriority)(phStream, flags, priority)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":4426
 *     if __cuStreamCreateWithPriority == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuStreamCreateWithPriority" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUstream*, unsigned int, int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuStreamCreateWithPriority)(phStream, flags, priority)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__201, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 4426, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 4426, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":4425
 *     cuPythonInit()
 *     if __cuStreamCreateWithPriority == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuStreamCreateWithPriority" not found')
 *     err = (<CUresult (*)(CUstream*, unsigned int, int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuStreamCreateWithPriority)(phStream, flags, priority)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":4424
 *     global __cuStreamCreateWithPriority
 *     cuPythonInit()
 *     if __cuStreamCreateWithPriority == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuStreamCreateWithPriority" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":4427
 *         with gil:
 *             raise RuntimeError('Function "cuStreamCreateWithPriority" not found')
 *     err = (<CUresult (*)(CUstream*, unsigned int, int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuStreamCreateWithPriority)(phStream, flags, priority)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUstream *, unsigned int, int))__pyx_v_4cuda_5_cuda_5ccuda___cuStreamCreateWithPriority)(__pyx_v_phStream, __pyx_v_flags, __pyx_v_priority); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 4427, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":4428
 *             raise RuntimeError('Function "cuStreamCreateWithPriority" not found')
 *     err = (<CUresult (*)(CUstream*, unsigned int, int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuStreamCreateWithPriority)(phStream, flags, priority)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuStreamGetPriority(CUstream hStream, int* priority) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":4421
 *     return err
 * 
 * cdef CUresult _cuStreamCreateWithPriority(CUstream* phStream, unsigned int flags, int priority) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuStreamCreateWithPriority
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuStreamCreateWithPriority", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":4430
 *     return err
 * 
 * cdef CUresult _cuStreamGetPriority(CUstream hStream, int* priority) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuStreamGetPriority
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuStreamGetPriority(CUstream __pyx_v_hStream, int *__pyx_v_priority) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuStreamGetPriority", 1);
  __Pyx_TraceCall("_cuStreamGetPriority", __pyx_f[0], 4430, 1, __PYX_ERR(0, 4430, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":4432
 * cdef CUresult _cuStreamGetPriority(CUstream hStream, int* priority) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuStreamGetPriority
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuStreamGetPriority == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 4432, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":4433
 *     global __cuStreamGetPriority
 *     cuPythonInit()
 *     if __cuStreamGetPriority == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuStreamGetPriority" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuStreamGetPriority == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":4434
 *     cuPythonInit()
 *     if __cuStreamGetPriority == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuStreamGetPriority" not found')
 *     err = (<CUresult (*)(CUstream, int*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuStreamGetPriority)(hStream, priority)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":4435
 *     if __cuStreamGetPriority == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuStreamGetPriority" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUstream, int*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuStreamGetPriority)(hStream, priority)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__202, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 4435, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 4435, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":4434
 *     cuPythonInit()
 *     if __cuStreamGetPriority == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuStreamGetPriority" not found')
 *     err = (<CUresult (*)(CUstream, int*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuStreamGetPriority)(hStream, priority)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":4433
 *     global __cuStreamGetPriority
 *     cuPythonInit()
 *     if __cuStreamGetPriority == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuStreamGetPriority" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":4436
 *         with gil:
 *             raise RuntimeError('Function "cuStreamGetPriority" not found')
 *     err = (<CUresult (*)(CUstream, int*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuStreamGetPriority)(hStream, priority)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUstream, int *))__pyx_v_4cuda_5_cuda_5ccuda___cuStreamGetPriority)(__pyx_v_hStream, __pyx_v_priority); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 4436, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":4437
 *             raise RuntimeError('Function "cuStreamGetPriority" not found')
 *     err = (<CUresult (*)(CUstream, int*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuStreamGetPriority)(hStream, priority)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuStreamGetFlags(CUstream hStream, unsigned int* flags) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":4430
 *     return err
 * 
 * cdef CUresult _cuStreamGetPriority(CUstream hStream, int* priority) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuStreamGetPriority
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuStreamGetPriority", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":4439
 *     return err
 * 
 * cdef CUresult _cuStreamGetFlags(CUstream hStream, unsigned int* flags) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuStreamGetFlags
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuStreamGetFlags(CUstream __pyx_v_hStream, unsigned int *__pyx_v_flags) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuStreamGetFlags", 1);
  __Pyx_TraceCall("_cuStreamGetFlags", __pyx_f[0], 4439, 1, __PYX_ERR(0, 4439, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":4441
 * cdef CUresult _cuStreamGetFlags(CUstream hStream, unsigned int* flags) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuStreamGetFlags
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuStreamGetFlags == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 4441, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":4442
 *     global __cuStreamGetFlags
 *     cuPythonInit()
 *     if __cuStreamGetFlags == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuStreamGetFlags" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuStreamGetFlags == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":4443
 *     cuPythonInit()
 *     if __cuStreamGetFlags == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuStreamGetFlags" not found')
 *     err = (<CUresult (*)(CUstream, unsigned int*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuStreamGetFlags)(hStream, flags)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":4444
 *     if __cuStreamGetFlags == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuStreamGetFlags" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUstream, unsigned int*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuStreamGetFlags)(hStream, flags)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__203, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 4444, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 4444, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":4443
 *     cuPythonInit()
 *     if __cuStreamGetFlags == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuStreamGetFlags" not found')
 *     err = (<CUresult (*)(CUstream, unsigned int*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuStreamGetFlags)(hStream, flags)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":4442
 *     global __cuStreamGetFlags
 *     cuPythonInit()
 *     if __cuStreamGetFlags == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuStreamGetFlags" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":4445
 *         with gil:
 *             raise RuntimeError('Function "cuStreamGetFlags" not found')
 *     err = (<CUresult (*)(CUstream, unsigned int*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuStreamGetFlags)(hStream, flags)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUstream, unsigned int *))__pyx_v_4cuda_5_cuda_5ccuda___cuStreamGetFlags)(__pyx_v_hStream, __pyx_v_flags); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 4445, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":4446
 *             raise RuntimeError('Function "cuStreamGetFlags" not found')
 *     err = (<CUresult (*)(CUstream, unsigned int*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuStreamGetFlags)(hStream, flags)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuStreamGetId(CUstream hStream, unsigned long long* streamId) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":4439
 *     return err
 * 
 * cdef CUresult _cuStreamGetFlags(CUstream hStream, unsigned int* flags) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuStreamGetFlags
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuStreamGetFlags", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":4448
 *     return err
 * 
 * cdef CUresult _cuStreamGetId(CUstream hStream, unsigned long long* streamId) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuStreamGetId
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuStreamGetId(CUstream __pyx_v_hStream, unsigned PY_LONG_LONG *__pyx_v_streamId) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuStreamGetId", 1);
  __Pyx_TraceCall("_cuStreamGetId", __pyx_f[0], 4448, 1, __PYX_ERR(0, 4448, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":4450
 * cdef CUresult _cuStreamGetId(CUstream hStream, unsigned long long* streamId) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuStreamGetId
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuStreamGetId == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 4450, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":4451
 *     global __cuStreamGetId
 *     cuPythonInit()
 *     if __cuStreamGetId == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuStreamGetId" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuStreamGetId == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":4452
 *     cuPythonInit()
 *     if __cuStreamGetId == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuStreamGetId" not found')
 *     err = (<CUresult (*)(CUstream, unsigned long long*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuStreamGetId)(hStream, streamId)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":4453
 *     if __cuStreamGetId == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuStreamGetId" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUstream, unsigned long long*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuStreamGetId)(hStream, streamId)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__204, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 4453, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 4453, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":4452
 *     cuPythonInit()
 *     if __cuStreamGetId == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuStreamGetId" not found')
 *     err = (<CUresult (*)(CUstream, unsigned long long*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuStreamGetId)(hStream, streamId)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":4451
 *     global __cuStreamGetId
 *     cuPythonInit()
 *     if __cuStreamGetId == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuStreamGetId" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":4454
 *         with gil:
 *             raise RuntimeError('Function "cuStreamGetId" not found')
 *     err = (<CUresult (*)(CUstream, unsigned long long*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuStreamGetId)(hStream, streamId)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUstream, unsigned PY_LONG_LONG *))__pyx_v_4cuda_5_cuda_5ccuda___cuStreamGetId)(__pyx_v_hStream, __pyx_v_streamId); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 4454, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":4455
 *             raise RuntimeError('Function "cuStreamGetId" not found')
 *     err = (<CUresult (*)(CUstream, unsigned long long*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuStreamGetId)(hStream, streamId)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuStreamGetCtx(CUstream hStream, CUcontext* pctx) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":4448
 *     return err
 * 
 * cdef CUresult _cuStreamGetId(CUstream hStream, unsigned long long* streamId) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuStreamGetId
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuStreamGetId", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":4457
 *     return err
 * 
 * cdef CUresult _cuStreamGetCtx(CUstream hStream, CUcontext* pctx) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuStreamGetCtx
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuStreamGetCtx(CUstream __pyx_v_hStream, CUcontext *__pyx_v_pctx) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuStreamGetCtx", 1);
  __Pyx_TraceCall("_cuStreamGetCtx", __pyx_f[0], 4457, 1, __PYX_ERR(0, 4457, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":4459
 * cdef CUresult _cuStreamGetCtx(CUstream hStream, CUcontext* pctx) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuStreamGetCtx
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuStreamGetCtx == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 4459, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":4460
 *     global __cuStreamGetCtx
 *     cuPythonInit()
 *     if __cuStreamGetCtx == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuStreamGetCtx" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuStreamGetCtx == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":4461
 *     cuPythonInit()
 *     if __cuStreamGetCtx == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuStreamGetCtx" not found')
 *     err = (<CUresult (*)(CUstream, CUcontext*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuStreamGetCtx)(hStream, pctx)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":4462
 *     if __cuStreamGetCtx == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuStreamGetCtx" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUstream, CUcontext*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuStreamGetCtx)(hStream, pctx)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__205, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 4462, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 4462, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":4461
 *     cuPythonInit()
 *     if __cuStreamGetCtx == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuStreamGetCtx" not found')
 *     err = (<CUresult (*)(CUstream, CUcontext*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuStreamGetCtx)(hStream, pctx)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":4460
 *     global __cuStreamGetCtx
 *     cuPythonInit()
 *     if __cuStreamGetCtx == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuStreamGetCtx" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":4463
 *         with gil:
 *             raise RuntimeError('Function "cuStreamGetCtx" not found')
 *     err = (<CUresult (*)(CUstream, CUcontext*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuStreamGetCtx)(hStream, pctx)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUstream, CUcontext *))__pyx_v_4cuda_5_cuda_5ccuda___cuStreamGetCtx)(__pyx_v_hStream, __pyx_v_pctx); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 4463, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":4464
 *             raise RuntimeError('Function "cuStreamGetCtx" not found')
 *     err = (<CUresult (*)(CUstream, CUcontext*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuStreamGetCtx)(hStream, pctx)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuStreamWaitEvent(CUstream hStream, CUevent hEvent, unsigned int Flags) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":4457
 *     return err
 * 
 * cdef CUresult _cuStreamGetCtx(CUstream hStream, CUcontext* pctx) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuStreamGetCtx
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuStreamGetCtx", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":4466
 *     return err
 * 
 * cdef CUresult _cuStreamWaitEvent(CUstream hStream, CUevent hEvent, unsigned int Flags) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuStreamWaitEvent
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuStreamWaitEvent(CUstream __pyx_v_hStream, CUevent __pyx_v_hEvent, unsigned int __pyx_v_Flags) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuStreamWaitEvent", 1);
  __Pyx_TraceCall("_cuStreamWaitEvent", __pyx_f[0], 4466, 1, __PYX_ERR(0, 4466, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":4468
 * cdef CUresult _cuStreamWaitEvent(CUstream hStream, CUevent hEvent, unsigned int Flags) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuStreamWaitEvent
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuStreamWaitEvent == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 4468, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":4469
 *     global __cuStreamWaitEvent
 *     cuPythonInit()
 *     if __cuStreamWaitEvent == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuStreamWaitEvent" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuStreamWaitEvent == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":4470
 *     cuPythonInit()
 *     if __cuStreamWaitEvent == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuStreamWaitEvent" not found')
 *     err = (<CUresult (*)(CUstream, CUevent, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuStreamWaitEvent)(hStream, hEvent, Flags)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":4471
 *     if __cuStreamWaitEvent == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuStreamWaitEvent" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUstream, CUevent, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuStreamWaitEvent)(hStream, hEvent, Flags)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__206, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 4471, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 4471, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":4470
 *     cuPythonInit()
 *     if __cuStreamWaitEvent == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuStreamWaitEvent" not found')
 *     err = (<CUresult (*)(CUstream, CUevent, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuStreamWaitEvent)(hStream, hEvent, Flags)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":4469
 *     global __cuStreamWaitEvent
 *     cuPythonInit()
 *     if __cuStreamWaitEvent == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuStreamWaitEvent" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":4472
 *         with gil:
 *             raise RuntimeError('Function "cuStreamWaitEvent" not found')
 *     err = (<CUresult (*)(CUstream, CUevent, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuStreamWaitEvent)(hStream, hEvent, Flags)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUstream, CUevent, unsigned int))__pyx_v_4cuda_5_cuda_5ccuda___cuStreamWaitEvent)(__pyx_v_hStream, __pyx_v_hEvent, __pyx_v_Flags); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 4472, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":4473
 *             raise RuntimeError('Function "cuStreamWaitEvent" not found')
 *     err = (<CUresult (*)(CUstream, CUevent, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuStreamWaitEvent)(hStream, hEvent, Flags)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuStreamAddCallback(CUstream hStream, CUstreamCallback callback, void* userData, unsigned int flags) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":4466
 *     return err
 * 
 * cdef CUresult _cuStreamWaitEvent(CUstream hStream, CUevent hEvent, unsigned int Flags) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuStreamWaitEvent
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuStreamWaitEvent", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":4475
 *     return err
 * 
 * cdef CUresult _cuStreamAddCallback(CUstream hStream, CUstreamCallback callback, void* userData, unsigned int flags) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuStreamAddCallback
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuStreamAddCallback(CUstream __pyx_v_hStream, CUstreamCallback __pyx_v_callback, void *__pyx_v_userData, unsigned int __pyx_v_flags) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuStreamAddCallback", 1);
  __Pyx_TraceCall("_cuStreamAddCallback", __pyx_f[0], 4475, 1, __PYX_ERR(0, 4475, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":4477
 * cdef CUresult _cuStreamAddCallback(CUstream hStream, CUstreamCallback callback, void* userData, unsigned int flags) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuStreamAddCallback
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuStreamAddCallback == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 4477, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":4478
 *     global __cuStreamAddCallback
 *     cuPythonInit()
 *     if __cuStreamAddCallback == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuStreamAddCallback" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuStreamAddCallback == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":4479
 *     cuPythonInit()
 *     if __cuStreamAddCallback == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuStreamAddCallback" not found')
 *     err = (<CUresult (*)(CUstream, CUstreamCallback, void*, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuStreamAddCallback)(hStream, callback, userData, flags)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":4480
 *     if __cuStreamAddCallback == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuStreamAddCallback" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUstream, CUstreamCallback, void*, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuStreamAddCallback)(hStream, callback, userData, flags)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__207, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 4480, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 4480, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":4479
 *     cuPythonInit()
 *     if __cuStreamAddCallback == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuStreamAddCallback" not found')
 *     err = (<CUresult (*)(CUstream, CUstreamCallback, void*, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuStreamAddCallback)(hStream, callback, userData, flags)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":4478
 *     global __cuStreamAddCallback
 *     cuPythonInit()
 *     if __cuStreamAddCallback == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuStreamAddCallback" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":4481
 *         with gil:
 *             raise RuntimeError('Function "cuStreamAddCallback" not found')
 *     err = (<CUresult (*)(CUstream, CUstreamCallback, void*, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuStreamAddCallback)(hStream, callback, userData, flags)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUstream, CUstreamCallback, void *, unsigned int))__pyx_v_4cuda_5_cuda_5ccuda___cuStreamAddCallback)(__pyx_v_hStream, __pyx_v_callback, __pyx_v_userData, __pyx_v_flags); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 4481, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":4482
 *             raise RuntimeError('Function "cuStreamAddCallback" not found')
 *     err = (<CUresult (*)(CUstream, CUstreamCallback, void*, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuStreamAddCallback)(hStream, callback, userData, flags)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuStreamBeginCapture_v2(CUstream hStream, CUstreamCaptureMode mode) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":4475
 *     return err
 * 
 * cdef CUresult _cuStreamAddCallback(CUstream hStream, CUstreamCallback callback, void* userData, unsigned int flags) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuStreamAddCallback
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuStreamAddCallback", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":4484
 *     return err
 * 
 * cdef CUresult _cuStreamBeginCapture_v2(CUstream hStream, CUstreamCaptureMode mode) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuStreamBeginCapture_v2
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuStreamBeginCapture_v2(CUstream __pyx_v_hStream, CUstreamCaptureMode __pyx_v_mode) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuStreamBeginCapture_v2", 1);
  __Pyx_TraceCall("_cuStreamBeginCapture_v2", __pyx_f[0], 4484, 1, __PYX_ERR(0, 4484, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":4486
 * cdef CUresult _cuStreamBeginCapture_v2(CUstream hStream, CUstreamCaptureMode mode) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuStreamBeginCapture_v2
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuStreamBeginCapture_v2 == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 4486, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":4487
 *     global __cuStreamBeginCapture_v2
 *     cuPythonInit()
 *     if __cuStreamBeginCapture_v2 == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuStreamBeginCapture_v2" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuStreamBeginCapture_v2 == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":4488
 *     cuPythonInit()
 *     if __cuStreamBeginCapture_v2 == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuStreamBeginCapture_v2" not found')
 *     err = (<CUresult (*)(CUstream, CUstreamCaptureMode) except ?CUDA_ERROR_NOT_FOUND nogil> __cuStreamBeginCapture_v2)(hStream, mode)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":4489
 *     if __cuStreamBeginCapture_v2 == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuStreamBeginCapture_v2" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUstream, CUstreamCaptureMode) except ?CUDA_ERROR_NOT_FOUND nogil> __cuStreamBeginCapture_v2)(hStream, mode)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__208, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 4489, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 4489, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":4488
 *     cuPythonInit()
 *     if __cuStreamBeginCapture_v2 == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuStreamBeginCapture_v2" not found')
 *     err = (<CUresult (*)(CUstream, CUstreamCaptureMode) except ?CUDA_ERROR_NOT_FOUND nogil> __cuStreamBeginCapture_v2)(hStream, mode)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":4487
 *     global __cuStreamBeginCapture_v2
 *     cuPythonInit()
 *     if __cuStreamBeginCapture_v2 == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuStreamBeginCapture_v2" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":4490
 *         with gil:
 *             raise RuntimeError('Function "cuStreamBeginCapture_v2" not found')
 *     err = (<CUresult (*)(CUstream, CUstreamCaptureMode) except ?CUDA_ERROR_NOT_FOUND nogil> __cuStreamBeginCapture_v2)(hStream, mode)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUstream, CUstreamCaptureMode))__pyx_v_4cuda_5_cuda_5ccuda___cuStreamBeginCapture_v2)(__pyx_v_hStream, __pyx_v_mode); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 4490, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":4491
 *             raise RuntimeError('Function "cuStreamBeginCapture_v2" not found')
 *     err = (<CUresult (*)(CUstream, CUstreamCaptureMode) except ?CUDA_ERROR_NOT_FOUND nogil> __cuStreamBeginCapture_v2)(hStream, mode)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuStreamBeginCaptureToGraph(CUstream hStream, CUgraph hGraph, const CUgraphNode* dependencies, const CUgraphEdgeData* dependencyData, size_t numDependencies, CUstreamCaptureMode mode) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":4484
 *     return err
 * 
 * cdef CUresult _cuStreamBeginCapture_v2(CUstream hStream, CUstreamCaptureMode mode) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuStreamBeginCapture_v2
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuStreamBeginCapture_v2", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":4493
 *     return err
 * 
 * cdef CUresult _cuStreamBeginCaptureToGraph(CUstream hStream, CUgraph hGraph, const CUgraphNode* dependencies, const CUgraphEdgeData* dependencyData, size_t numDependencies, CUstreamCaptureMode mode) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuStreamBeginCaptureToGraph
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuStreamBeginCaptureToGraph(CUstream __pyx_v_hStream, CUgraph __pyx_v_hGraph, CUgraphNode const *__pyx_v_dependencies, CUgraphEdgeData const *__pyx_v_dependencyData, size_t __pyx_v_numDependencies, CUstreamCaptureMode __pyx_v_mode) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuStreamBeginCaptureToGraph", 1);
  __Pyx_TraceCall("_cuStreamBeginCaptureToGraph", __pyx_f[0], 4493, 1, __PYX_ERR(0, 4493, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":4495
 * cdef CUresult _cuStreamBeginCaptureToGraph(CUstream hStream, CUgraph hGraph, const CUgraphNode* dependencies, const CUgraphEdgeData* dependencyData, size_t numDependencies, CUstreamCaptureMode mode) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuStreamBeginCaptureToGraph
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuStreamBeginCaptureToGraph == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 4495, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":4496
 *     global __cuStreamBeginCaptureToGraph
 *     cuPythonInit()
 *     if __cuStreamBeginCaptureToGraph == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuStreamBeginCaptureToGraph" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuStreamBeginCaptureToGraph == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":4497
 *     cuPythonInit()
 *     if __cuStreamBeginCaptureToGraph == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuStreamBeginCaptureToGraph" not found')
 *     err = (<CUresult (*)(CUstream, CUgraph, const CUgraphNode*, const CUgraphEdgeData*, size_t, CUstreamCaptureMode) except ?CUDA_ERROR_NOT_FOUND nogil> __cuStreamBeginCaptureToGraph)(hStream, hGraph, dependencies, dependencyData, numDependencies, mode)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":4498
 *     if __cuStreamBeginCaptureToGraph == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuStreamBeginCaptureToGraph" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUstream, CUgraph, const CUgraphNode*, const CUgraphEdgeData*, size_t, CUstreamCaptureMode) except ?CUDA_ERROR_NOT_FOUND nogil> __cuStreamBeginCaptureToGraph)(hStream, hGraph, dependencies, dependencyData, numDependencies, mode)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__209, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 4498, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 4498, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":4497
 *     cuPythonInit()
 *     if __cuStreamBeginCaptureToGraph == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuStreamBeginCaptureToGraph" not found')
 *     err = (<CUresult (*)(CUstream, CUgraph, const CUgraphNode*, const CUgraphEdgeData*, size_t, CUstreamCaptureMode) except ?CUDA_ERROR_NOT_FOUND nogil> __cuStreamBeginCaptureToGraph)(hStream, hGraph, dependencies, dependencyData, numDependencies, mode)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":4496
 *     global __cuStreamBeginCaptureToGraph
 *     cuPythonInit()
 *     if __cuStreamBeginCaptureToGraph == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuStreamBeginCaptureToGraph" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":4499
 *         with gil:
 *             raise RuntimeError('Function "cuStreamBeginCaptureToGraph" not found')
 *     err = (<CUresult (*)(CUstream, CUgraph, const CUgraphNode*, const CUgraphEdgeData*, size_t, CUstreamCaptureMode) except ?CUDA_ERROR_NOT_FOUND nogil> __cuStreamBeginCaptureToGraph)(hStream, hGraph, dependencies, dependencyData, numDependencies, mode)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUstream, CUgraph, CUgraphNode const *, CUgraphEdgeData const *, size_t, CUstreamCaptureMode))__pyx_v_4cuda_5_cuda_5ccuda___cuStreamBeginCaptureToGraph)(__pyx_v_hStream, __pyx_v_hGraph, __pyx_v_dependencies, __pyx_v_dependencyData, __pyx_v_numDependencies, __pyx_v_mode); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 4499, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":4500
 *             raise RuntimeError('Function "cuStreamBeginCaptureToGraph" not found')
 *     err = (<CUresult (*)(CUstream, CUgraph, const CUgraphNode*, const CUgraphEdgeData*, size_t, CUstreamCaptureMode) except ?CUDA_ERROR_NOT_FOUND nogil> __cuStreamBeginCaptureToGraph)(hStream, hGraph, dependencies, dependencyData, numDependencies, mode)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuThreadExchangeStreamCaptureMode(CUstreamCaptureMode* mode) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":4493
 *     return err
 * 
 * cdef CUresult _cuStreamBeginCaptureToGraph(CUstream hStream, CUgraph hGraph, const CUgraphNode* dependencies, const CUgraphEdgeData* dependencyData, size_t numDependencies, CUstreamCaptureMode mode) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuStreamBeginCaptureToGraph
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuStreamBeginCaptureToGraph", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":4502
 *     return err
 * 
 * cdef CUresult _cuThreadExchangeStreamCaptureMode(CUstreamCaptureMode* mode) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuThreadExchangeStreamCaptureMode
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuThreadExchangeStreamCaptureMode(CUstreamCaptureMode *__pyx_v_mode) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuThreadExchangeStreamCaptureMode", 1);
  __Pyx_TraceCall("_cuThreadExchangeStreamCaptureMode", __pyx_f[0], 4502, 1, __PYX_ERR(0, 4502, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":4504
 * cdef CUresult _cuThreadExchangeStreamCaptureMode(CUstreamCaptureMode* mode) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuThreadExchangeStreamCaptureMode
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuThreadExchangeStreamCaptureMode == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 4504, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":4505
 *     global __cuThreadExchangeStreamCaptureMode
 *     cuPythonInit()
 *     if __cuThreadExchangeStreamCaptureMode == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuThreadExchangeStreamCaptureMode" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuThreadExchangeStreamCaptureMode == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":4506
 *     cuPythonInit()
 *     if __cuThreadExchangeStreamCaptureMode == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuThreadExchangeStreamCaptureMode" not found')
 *     err = (<CUresult (*)(CUstreamCaptureMode*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuThreadExchangeStreamCaptureMode)(mode)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":4507
 *     if __cuThreadExchangeStreamCaptureMode == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuThreadExchangeStreamCaptureMode" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUstreamCaptureMode*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuThreadExchangeStreamCaptureMode)(mode)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__210, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 4507, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 4507, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":4506
 *     cuPythonInit()
 *     if __cuThreadExchangeStreamCaptureMode == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuThreadExchangeStreamCaptureMode" not found')
 *     err = (<CUresult (*)(CUstreamCaptureMode*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuThreadExchangeStreamCaptureMode)(mode)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":4505
 *     global __cuThreadExchangeStreamCaptureMode
 *     cuPythonInit()
 *     if __cuThreadExchangeStreamCaptureMode == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuThreadExchangeStreamCaptureMode" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":4508
 *         with gil:
 *             raise RuntimeError('Function "cuThreadExchangeStreamCaptureMode" not found')
 *     err = (<CUresult (*)(CUstreamCaptureMode*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuThreadExchangeStreamCaptureMode)(mode)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUstreamCaptureMode *))__pyx_v_4cuda_5_cuda_5ccuda___cuThreadExchangeStreamCaptureMode)(__pyx_v_mode); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 4508, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":4509
 *             raise RuntimeError('Function "cuThreadExchangeStreamCaptureMode" not found')
 *     err = (<CUresult (*)(CUstreamCaptureMode*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuThreadExchangeStreamCaptureMode)(mode)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuStreamEndCapture(CUstream hStream, CUgraph* phGraph) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":4502
 *     return err
 * 
 * cdef CUresult _cuThreadExchangeStreamCaptureMode(CUstreamCaptureMode* mode) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuThreadExchangeStreamCaptureMode
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuThreadExchangeStreamCaptureMode", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":4511
 *     return err
 * 
 * cdef CUresult _cuStreamEndCapture(CUstream hStream, CUgraph* phGraph) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuStreamEndCapture
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuStreamEndCapture(CUstream __pyx_v_hStream, CUgraph *__pyx_v_phGraph) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuStreamEndCapture", 1);
  __Pyx_TraceCall("_cuStreamEndCapture", __pyx_f[0], 4511, 1, __PYX_ERR(0, 4511, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":4513
 * cdef CUresult _cuStreamEndCapture(CUstream hStream, CUgraph* phGraph) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuStreamEndCapture
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuStreamEndCapture == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 4513, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":4514
 *     global __cuStreamEndCapture
 *     cuPythonInit()
 *     if __cuStreamEndCapture == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuStreamEndCapture" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuStreamEndCapture == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":4515
 *     cuPythonInit()
 *     if __cuStreamEndCapture == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuStreamEndCapture" not found')
 *     err = (<CUresult (*)(CUstream, CUgraph*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuStreamEndCapture)(hStream, phGraph)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":4516
 *     if __cuStreamEndCapture == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuStreamEndCapture" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUstream, CUgraph*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuStreamEndCapture)(hStream, phGraph)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__211, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 4516, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 4516, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":4515
 *     cuPythonInit()
 *     if __cuStreamEndCapture == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuStreamEndCapture" not found')
 *     err = (<CUresult (*)(CUstream, CUgraph*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuStreamEndCapture)(hStream, phGraph)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":4514
 *     global __cuStreamEndCapture
 *     cuPythonInit()
 *     if __cuStreamEndCapture == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuStreamEndCapture" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":4517
 *         with gil:
 *             raise RuntimeError('Function "cuStreamEndCapture" not found')
 *     err = (<CUresult (*)(CUstream, CUgraph*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuStreamEndCapture)(hStream, phGraph)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUstream, CUgraph *))__pyx_v_4cuda_5_cuda_5ccuda___cuStreamEndCapture)(__pyx_v_hStream, __pyx_v_phGraph); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 4517, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":4518
 *             raise RuntimeError('Function "cuStreamEndCapture" not found')
 *     err = (<CUresult (*)(CUstream, CUgraph*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuStreamEndCapture)(hStream, phGraph)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuStreamIsCapturing(CUstream hStream, CUstreamCaptureStatus* captureStatus) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":4511
 *     return err
 * 
 * cdef CUresult _cuStreamEndCapture(CUstream hStream, CUgraph* phGraph) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuStreamEndCapture
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuStreamEndCapture", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":4520
 *     return err
 * 
 * cdef CUresult _cuStreamIsCapturing(CUstream hStream, CUstreamCaptureStatus* captureStatus) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuStreamIsCapturing
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuStreamIsCapturing(CUstream __pyx_v_hStream, CUstreamCaptureStatus *__pyx_v_captureStatus) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuStreamIsCapturing", 1);
  __Pyx_TraceCall("_cuStreamIsCapturing", __pyx_f[0], 4520, 1, __PYX_ERR(0, 4520, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":4522
 * cdef CUresult _cuStreamIsCapturing(CUstream hStream, CUstreamCaptureStatus* captureStatus) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuStreamIsCapturing
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuStreamIsCapturing == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 4522, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":4523
 *     global __cuStreamIsCapturing
 *     cuPythonInit()
 *     if __cuStreamIsCapturing == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuStreamIsCapturing" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuStreamIsCapturing == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":4524
 *     cuPythonInit()
 *     if __cuStreamIsCapturing == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuStreamIsCapturing" not found')
 *     err = (<CUresult (*)(CUstream, CUstreamCaptureStatus*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuStreamIsCapturing)(hStream, captureStatus)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":4525
 *     if __cuStreamIsCapturing == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuStreamIsCapturing" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUstream, CUstreamCaptureStatus*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuStreamIsCapturing)(hStream, captureStatus)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__212, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 4525, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 4525, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":4524
 *     cuPythonInit()
 *     if __cuStreamIsCapturing == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuStreamIsCapturing" not found')
 *     err = (<CUresult (*)(CUstream, CUstreamCaptureStatus*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuStreamIsCapturing)(hStream, captureStatus)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":4523
 *     global __cuStreamIsCapturing
 *     cuPythonInit()
 *     if __cuStreamIsCapturing == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuStreamIsCapturing" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":4526
 *         with gil:
 *             raise RuntimeError('Function "cuStreamIsCapturing" not found')
 *     err = (<CUresult (*)(CUstream, CUstreamCaptureStatus*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuStreamIsCapturing)(hStream, captureStatus)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUstream, CUstreamCaptureStatus *))__pyx_v_4cuda_5_cuda_5ccuda___cuStreamIsCapturing)(__pyx_v_hStream, __pyx_v_captureStatus); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 4526, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":4527
 *             raise RuntimeError('Function "cuStreamIsCapturing" not found')
 *     err = (<CUresult (*)(CUstream, CUstreamCaptureStatus*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuStreamIsCapturing)(hStream, captureStatus)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuStreamGetCaptureInfo_v2(CUstream hStream, CUstreamCaptureStatus* captureStatus_out, cuuint64_t* id_out, CUgraph* graph_out, const CUgraphNode** dependencies_out, size_t* numDependencies_out) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":4520
 *     return err
 * 
 * cdef CUresult _cuStreamIsCapturing(CUstream hStream, CUstreamCaptureStatus* captureStatus) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuStreamIsCapturing
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuStreamIsCapturing", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":4529
 *     return err
 * 
 * cdef CUresult _cuStreamGetCaptureInfo_v2(CUstream hStream, CUstreamCaptureStatus* captureStatus_out, cuuint64_t* id_out, CUgraph* graph_out, const CUgraphNode** dependencies_out, size_t* numDependencies_out) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuStreamGetCaptureInfo_v2
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuStreamGetCaptureInfo_v2(CUstream __pyx_v_hStream, CUstreamCaptureStatus *__pyx_v_captureStatus_out, cuuint64_t *__pyx_v_id_out, CUgraph *__pyx_v_graph_out, CUgraphNode const **__pyx_v_dependencies_out, size_t *__pyx_v_numDependencies_out) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuStreamGetCaptureInfo_v2", 1);
  __Pyx_TraceCall("_cuStreamGetCaptureInfo_v2", __pyx_f[0], 4529, 1, __PYX_ERR(0, 4529, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":4531
 * cdef CUresult _cuStreamGetCaptureInfo_v2(CUstream hStream, CUstreamCaptureStatus* captureStatus_out, cuuint64_t* id_out, CUgraph* graph_out, const CUgraphNode** dependencies_out, size_t* numDependencies_out) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuStreamGetCaptureInfo_v2
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuStreamGetCaptureInfo_v2 == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 4531, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":4532
 *     global __cuStreamGetCaptureInfo_v2
 *     cuPythonInit()
 *     if __cuStreamGetCaptureInfo_v2 == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuStreamGetCaptureInfo_v2" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuStreamGetCaptureInfo_v2 == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":4533
 *     cuPythonInit()
 *     if __cuStreamGetCaptureInfo_v2 == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuStreamGetCaptureInfo_v2" not found')
 *     err = (<CUresult (*)(CUstream, CUstreamCaptureStatus*, cuuint64_t*, CUgraph*, const CUgraphNode**, size_t*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuStreamGetCaptureInfo_v2)(hStream, captureStatus_out, id_out, graph_out, dependencies_out, numDependencies_out)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":4534
 *     if __cuStreamGetCaptureInfo_v2 == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuStreamGetCaptureInfo_v2" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUstream, CUstreamCaptureStatus*, cuuint64_t*, CUgraph*, const CUgraphNode**, size_t*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuStreamGetCaptureInfo_v2)(hStream, captureStatus_out, id_out, graph_out, dependencies_out, numDependencies_out)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__213, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 4534, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 4534, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":4533
 *     cuPythonInit()
 *     if __cuStreamGetCaptureInfo_v2 == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuStreamGetCaptureInfo_v2" not found')
 *     err = (<CUresult (*)(CUstream, CUstreamCaptureStatus*, cuuint64_t*, CUgraph*, const CUgraphNode**, size_t*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuStreamGetCaptureInfo_v2)(hStream, captureStatus_out, id_out, graph_out, dependencies_out, numDependencies_out)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":4532
 *     global __cuStreamGetCaptureInfo_v2
 *     cuPythonInit()
 *     if __cuStreamGetCaptureInfo_v2 == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuStreamGetCaptureInfo_v2" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":4535
 *         with gil:
 *             raise RuntimeError('Function "cuStreamGetCaptureInfo_v2" not found')
 *     err = (<CUresult (*)(CUstream, CUstreamCaptureStatus*, cuuint64_t*, CUgraph*, const CUgraphNode**, size_t*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuStreamGetCaptureInfo_v2)(hStream, captureStatus_out, id_out, graph_out, dependencies_out, numDependencies_out)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUstream, CUstreamCaptureStatus *, cuuint64_t *, CUgraph *, CUgraphNode const **, size_t *))__pyx_v_4cuda_5_cuda_5ccuda___cuStreamGetCaptureInfo_v2)(__pyx_v_hStream, __pyx_v_captureStatus_out, __pyx_v_id_out, __pyx_v_graph_out, __pyx_v_dependencies_out, __pyx_v_numDependencies_out); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 4535, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":4536
 *             raise RuntimeError('Function "cuStreamGetCaptureInfo_v2" not found')
 *     err = (<CUresult (*)(CUstream, CUstreamCaptureStatus*, cuuint64_t*, CUgraph*, const CUgraphNode**, size_t*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuStreamGetCaptureInfo_v2)(hStream, captureStatus_out, id_out, graph_out, dependencies_out, numDependencies_out)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuStreamGetCaptureInfo_v3(CUstream hStream, CUstreamCaptureStatus* captureStatus_out, cuuint64_t* id_out, CUgraph* graph_out, const CUgraphNode** dependencies_out, const CUgraphEdgeData** edgeData_out, size_t* numDependencies_out) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":4529
 *     return err
 * 
 * cdef CUresult _cuStreamGetCaptureInfo_v2(CUstream hStream, CUstreamCaptureStatus* captureStatus_out, cuuint64_t* id_out, CUgraph* graph_out, const CUgraphNode** dependencies_out, size_t* numDependencies_out) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuStreamGetCaptureInfo_v2
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuStreamGetCaptureInfo_v2", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":4538
 *     return err
 * 
 * cdef CUresult _cuStreamGetCaptureInfo_v3(CUstream hStream, CUstreamCaptureStatus* captureStatus_out, cuuint64_t* id_out, CUgraph* graph_out, const CUgraphNode** dependencies_out, const CUgraphEdgeData** edgeData_out, size_t* numDependencies_out) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuStreamGetCaptureInfo_v3
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuStreamGetCaptureInfo_v3(CUstream __pyx_v_hStream, CUstreamCaptureStatus *__pyx_v_captureStatus_out, cuuint64_t *__pyx_v_id_out, CUgraph *__pyx_v_graph_out, CUgraphNode const **__pyx_v_dependencies_out, CUgraphEdgeData const **__pyx_v_edgeData_out, size_t *__pyx_v_numDependencies_out) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuStreamGetCaptureInfo_v3", 1);
  __Pyx_TraceCall("_cuStreamGetCaptureInfo_v3", __pyx_f[0], 4538, 1, __PYX_ERR(0, 4538, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":4540
 * cdef CUresult _cuStreamGetCaptureInfo_v3(CUstream hStream, CUstreamCaptureStatus* captureStatus_out, cuuint64_t* id_out, CUgraph* graph_out, const CUgraphNode** dependencies_out, const CUgraphEdgeData** edgeData_out, size_t* numDependencies_out) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuStreamGetCaptureInfo_v3
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuStreamGetCaptureInfo_v3 == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 4540, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":4541
 *     global __cuStreamGetCaptureInfo_v3
 *     cuPythonInit()
 *     if __cuStreamGetCaptureInfo_v3 == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuStreamGetCaptureInfo_v3" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuStreamGetCaptureInfo_v3 == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":4542
 *     cuPythonInit()
 *     if __cuStreamGetCaptureInfo_v3 == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuStreamGetCaptureInfo_v3" not found')
 *     err = (<CUresult (*)(CUstream, CUstreamCaptureStatus*, cuuint64_t*, CUgraph*, const CUgraphNode**, const CUgraphEdgeData**, size_t*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuStreamGetCaptureInfo_v3)(hStream, captureStatus_out, id_out, graph_out, dependencies_out, edgeData_out, numDependencies_out)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":4543
 *     if __cuStreamGetCaptureInfo_v3 == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuStreamGetCaptureInfo_v3" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUstream, CUstreamCaptureStatus*, cuuint64_t*, CUgraph*, const CUgraphNode**, const CUgraphEdgeData**, size_t*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuStreamGetCaptureInfo_v3)(hStream, captureStatus_out, id_out, graph_out, dependencies_out, edgeData_out, numDependencies_out)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__214, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 4543, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 4543, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":4542
 *     cuPythonInit()
 *     if __cuStreamGetCaptureInfo_v3 == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuStreamGetCaptureInfo_v3" not found')
 *     err = (<CUresult (*)(CUstream, CUstreamCaptureStatus*, cuuint64_t*, CUgraph*, const CUgraphNode**, const CUgraphEdgeData**, size_t*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuStreamGetCaptureInfo_v3)(hStream, captureStatus_out, id_out, graph_out, dependencies_out, edgeData_out, numDependencies_out)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":4541
 *     global __cuStreamGetCaptureInfo_v3
 *     cuPythonInit()
 *     if __cuStreamGetCaptureInfo_v3 == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuStreamGetCaptureInfo_v3" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":4544
 *         with gil:
 *             raise RuntimeError('Function "cuStreamGetCaptureInfo_v3" not found')
 *     err = (<CUresult (*)(CUstream, CUstreamCaptureStatus*, cuuint64_t*, CUgraph*, const CUgraphNode**, const CUgraphEdgeData**, size_t*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuStreamGetCaptureInfo_v3)(hStream, captureStatus_out, id_out, graph_out, dependencies_out, edgeData_out, numDependencies_out)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUstream, CUstreamCaptureStatus *, cuuint64_t *, CUgraph *, CUgraphNode const **, CUgraphEdgeData const **, size_t *))__pyx_v_4cuda_5_cuda_5ccuda___cuStreamGetCaptureInfo_v3)(__pyx_v_hStream, __pyx_v_captureStatus_out, __pyx_v_id_out, __pyx_v_graph_out, __pyx_v_dependencies_out, __pyx_v_edgeData_out, __pyx_v_numDependencies_out); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 4544, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":4545
 *             raise RuntimeError('Function "cuStreamGetCaptureInfo_v3" not found')
 *     err = (<CUresult (*)(CUstream, CUstreamCaptureStatus*, cuuint64_t*, CUgraph*, const CUgraphNode**, const CUgraphEdgeData**, size_t*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuStreamGetCaptureInfo_v3)(hStream, captureStatus_out, id_out, graph_out, dependencies_out, edgeData_out, numDependencies_out)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuStreamUpdateCaptureDependencies(CUstream hStream, CUgraphNode* dependencies, size_t numDependencies, unsigned int flags) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":4538
 *     return err
 * 
 * cdef CUresult _cuStreamGetCaptureInfo_v3(CUstream hStream, CUstreamCaptureStatus* captureStatus_out, cuuint64_t* id_out, CUgraph* graph_out, const CUgraphNode** dependencies_out, const CUgraphEdgeData** edgeData_out, size_t* numDependencies_out) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuStreamGetCaptureInfo_v3
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuStreamGetCaptureInfo_v3", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":4547
 *     return err
 * 
 * cdef CUresult _cuStreamUpdateCaptureDependencies(CUstream hStream, CUgraphNode* dependencies, size_t numDependencies, unsigned int flags) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuStreamUpdateCaptureDependencies
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuStreamUpdateCaptureDependencies(CUstream __pyx_v_hStream, CUgraphNode *__pyx_v_dependencies, size_t __pyx_v_numDependencies, unsigned int __pyx_v_flags) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuStreamUpdateCaptureDependencies", 1);
  __Pyx_TraceCall("_cuStreamUpdateCaptureDependencies", __pyx_f[0], 4547, 1, __PYX_ERR(0, 4547, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":4549
 * cdef CUresult _cuStreamUpdateCaptureDependencies(CUstream hStream, CUgraphNode* dependencies, size_t numDependencies, unsigned int flags) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuStreamUpdateCaptureDependencies
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuStreamUpdateCaptureDependencies == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 4549, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":4550
 *     global __cuStreamUpdateCaptureDependencies
 *     cuPythonInit()
 *     if __cuStreamUpdateCaptureDependencies == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuStreamUpdateCaptureDependencies" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuStreamUpdateCaptureDependencies == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":4551
 *     cuPythonInit()
 *     if __cuStreamUpdateCaptureDependencies == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuStreamUpdateCaptureDependencies" not found')
 *     err = (<CUresult (*)(CUstream, CUgraphNode*, size_t, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuStreamUpdateCaptureDependencies)(hStream, dependencies, numDependencies, flags)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":4552
 *     if __cuStreamUpdateCaptureDependencies == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuStreamUpdateCaptureDependencies" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUstream, CUgraphNode*, size_t, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuStreamUpdateCaptureDependencies)(hStream, dependencies, numDependencies, flags)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__215, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 4552, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 4552, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":4551
 *     cuPythonInit()
 *     if __cuStreamUpdateCaptureDependencies == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuStreamUpdateCaptureDependencies" not found')
 *     err = (<CUresult (*)(CUstream, CUgraphNode*, size_t, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuStreamUpdateCaptureDependencies)(hStream, dependencies, numDependencies, flags)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":4550
 *     global __cuStreamUpdateCaptureDependencies
 *     cuPythonInit()
 *     if __cuStreamUpdateCaptureDependencies == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuStreamUpdateCaptureDependencies" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":4553
 *         with gil:
 *             raise RuntimeError('Function "cuStreamUpdateCaptureDependencies" not found')
 *     err = (<CUresult (*)(CUstream, CUgraphNode*, size_t, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuStreamUpdateCaptureDependencies)(hStream, dependencies, numDependencies, flags)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUstream, CUgraphNode *, size_t, unsigned int))__pyx_v_4cuda_5_cuda_5ccuda___cuStreamUpdateCaptureDependencies)(__pyx_v_hStream, __pyx_v_dependencies, __pyx_v_numDependencies, __pyx_v_flags); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 4553, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":4554
 *             raise RuntimeError('Function "cuStreamUpdateCaptureDependencies" not found')
 *     err = (<CUresult (*)(CUstream, CUgraphNode*, size_t, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuStreamUpdateCaptureDependencies)(hStream, dependencies, numDependencies, flags)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuStreamUpdateCaptureDependencies_v2(CUstream hStream, CUgraphNode* dependencies, const CUgraphEdgeData* dependencyData, size_t numDependencies, unsigned int flags) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":4547
 *     return err
 * 
 * cdef CUresult _cuStreamUpdateCaptureDependencies(CUstream hStream, CUgraphNode* dependencies, size_t numDependencies, unsigned int flags) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuStreamUpdateCaptureDependencies
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuStreamUpdateCaptureDependencies", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":4556
 *     return err
 * 
 * cdef CUresult _cuStreamUpdateCaptureDependencies_v2(CUstream hStream, CUgraphNode* dependencies, const CUgraphEdgeData* dependencyData, size_t numDependencies, unsigned int flags) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuStreamUpdateCaptureDependencies_v2
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuStreamUpdateCaptureDependencies_v2(CUstream __pyx_v_hStream, CUgraphNode *__pyx_v_dependencies, CUgraphEdgeData const *__pyx_v_dependencyData, size_t __pyx_v_numDependencies, unsigned int __pyx_v_flags) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuStreamUpdateCaptureDependencies_v2", 1);
  __Pyx_TraceCall("_cuStreamUpdateCaptureDependencies_v2", __pyx_f[0], 4556, 1, __PYX_ERR(0, 4556, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":4558
 * cdef CUresult _cuStreamUpdateCaptureDependencies_v2(CUstream hStream, CUgraphNode* dependencies, const CUgraphEdgeData* dependencyData, size_t numDependencies, unsigned int flags) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuStreamUpdateCaptureDependencies_v2
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuStreamUpdateCaptureDependencies_v2 == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 4558, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":4559
 *     global __cuStreamUpdateCaptureDependencies_v2
 *     cuPythonInit()
 *     if __cuStreamUpdateCaptureDependencies_v2 == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuStreamUpdateCaptureDependencies_v2" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuStreamUpdateCaptureDependencies_v2 == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":4560
 *     cuPythonInit()
 *     if __cuStreamUpdateCaptureDependencies_v2 == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuStreamUpdateCaptureDependencies_v2" not found')
 *     err = (<CUresult (*)(CUstream, CUgraphNode*, const CUgraphEdgeData*, size_t, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuStreamUpdateCaptureDependencies_v2)(hStream, dependencies, dependencyData, numDependencies, flags)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":4561
 *     if __cuStreamUpdateCaptureDependencies_v2 == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuStreamUpdateCaptureDependencies_v2" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUstream, CUgraphNode*, const CUgraphEdgeData*, size_t, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuStreamUpdateCaptureDependencies_v2)(hStream, dependencies, dependencyData, numDependencies, flags)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__216, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 4561, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 4561, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":4560
 *     cuPythonInit()
 *     if __cuStreamUpdateCaptureDependencies_v2 == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuStreamUpdateCaptureDependencies_v2" not found')
 *     err = (<CUresult (*)(CUstream, CUgraphNode*, const CUgraphEdgeData*, size_t, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuStreamUpdateCaptureDependencies_v2)(hStream, dependencies, dependencyData, numDependencies, flags)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":4559
 *     global __cuStreamUpdateCaptureDependencies_v2
 *     cuPythonInit()
 *     if __cuStreamUpdateCaptureDependencies_v2 == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuStreamUpdateCaptureDependencies_v2" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":4562
 *         with gil:
 *             raise RuntimeError('Function "cuStreamUpdateCaptureDependencies_v2" not found')
 *     err = (<CUresult (*)(CUstream, CUgraphNode*, const CUgraphEdgeData*, size_t, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuStreamUpdateCaptureDependencies_v2)(hStream, dependencies, dependencyData, numDependencies, flags)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUstream, CUgraphNode *, CUgraphEdgeData const *, size_t, unsigned int))__pyx_v_4cuda_5_cuda_5ccuda___cuStreamUpdateCaptureDependencies_v2)(__pyx_v_hStream, __pyx_v_dependencies, __pyx_v_dependencyData, __pyx_v_numDependencies, __pyx_v_flags); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 4562, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":4563
 *             raise RuntimeError('Function "cuStreamUpdateCaptureDependencies_v2" not found')
 *     err = (<CUresult (*)(CUstream, CUgraphNode*, const CUgraphEdgeData*, size_t, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuStreamUpdateCaptureDependencies_v2)(hStream, dependencies, dependencyData, numDependencies, flags)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuStreamAttachMemAsync(CUstream hStream, CUdeviceptr dptr, size_t length, unsigned int flags) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":4556
 *     return err
 * 
 * cdef CUresult _cuStreamUpdateCaptureDependencies_v2(CUstream hStream, CUgraphNode* dependencies, const CUgraphEdgeData* dependencyData, size_t numDependencies, unsigned int flags) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuStreamUpdateCaptureDependencies_v2
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuStreamUpdateCaptureDependencies_v2", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":4565
 *     return err
 * 
 * cdef CUresult _cuStreamAttachMemAsync(CUstream hStream, CUdeviceptr dptr, size_t length, unsigned int flags) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuStreamAttachMemAsync
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuStreamAttachMemAsync(CUstream __pyx_v_hStream, CUdeviceptr __pyx_v_dptr, size_t __pyx_v_length, unsigned int __pyx_v_flags) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuStreamAttachMemAsync", 1);
  __Pyx_TraceCall("_cuStreamAttachMemAsync", __pyx_f[0], 4565, 1, __PYX_ERR(0, 4565, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":4567
 * cdef CUresult _cuStreamAttachMemAsync(CUstream hStream, CUdeviceptr dptr, size_t length, unsigned int flags) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuStreamAttachMemAsync
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuStreamAttachMemAsync == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 4567, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":4568
 *     global __cuStreamAttachMemAsync
 *     cuPythonInit()
 *     if __cuStreamAttachMemAsync == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuStreamAttachMemAsync" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuStreamAttachMemAsync == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":4569
 *     cuPythonInit()
 *     if __cuStreamAttachMemAsync == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuStreamAttachMemAsync" not found')
 *     err = (<CUresult (*)(CUstream, CUdeviceptr, size_t, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuStreamAttachMemAsync)(hStream, dptr, length, flags)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":4570
 *     if __cuStreamAttachMemAsync == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuStreamAttachMemAsync" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUstream, CUdeviceptr, size_t, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuStreamAttachMemAsync)(hStream, dptr, length, flags)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__217, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 4570, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 4570, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":4569
 *     cuPythonInit()
 *     if __cuStreamAttachMemAsync == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuStreamAttachMemAsync" not found')
 *     err = (<CUresult (*)(CUstream, CUdeviceptr, size_t, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuStreamAttachMemAsync)(hStream, dptr, length, flags)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":4568
 *     global __cuStreamAttachMemAsync
 *     cuPythonInit()
 *     if __cuStreamAttachMemAsync == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuStreamAttachMemAsync" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":4571
 *         with gil:
 *             raise RuntimeError('Function "cuStreamAttachMemAsync" not found')
 *     err = (<CUresult (*)(CUstream, CUdeviceptr, size_t, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuStreamAttachMemAsync)(hStream, dptr, length, flags)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUstream, CUdeviceptr, size_t, unsigned int))__pyx_v_4cuda_5_cuda_5ccuda___cuStreamAttachMemAsync)(__pyx_v_hStream, __pyx_v_dptr, __pyx_v_length, __pyx_v_flags); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 4571, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":4572
 *             raise RuntimeError('Function "cuStreamAttachMemAsync" not found')
 *     err = (<CUresult (*)(CUstream, CUdeviceptr, size_t, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuStreamAttachMemAsync)(hStream, dptr, length, flags)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuStreamQuery(CUstream hStream) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":4565
 *     return err
 * 
 * cdef CUresult _cuStreamAttachMemAsync(CUstream hStream, CUdeviceptr dptr, size_t length, unsigned int flags) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuStreamAttachMemAsync
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuStreamAttachMemAsync", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":4574
 *     return err
 * 
 * cdef CUresult _cuStreamQuery(CUstream hStream) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuStreamQuery
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuStreamQuery(CUstream __pyx_v_hStream) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuStreamQuery", 1);
  __Pyx_TraceCall("_cuStreamQuery", __pyx_f[0], 4574, 1, __PYX_ERR(0, 4574, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":4576
 * cdef CUresult _cuStreamQuery(CUstream hStream) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuStreamQuery
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuStreamQuery == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 4576, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":4577
 *     global __cuStreamQuery
 *     cuPythonInit()
 *     if __cuStreamQuery == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuStreamQuery" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuStreamQuery == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":4578
 *     cuPythonInit()
 *     if __cuStreamQuery == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuStreamQuery" not found')
 *     err = (<CUresult (*)(CUstream) except ?CUDA_ERROR_NOT_FOUND nogil> __cuStreamQuery)(hStream)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":4579
 *     if __cuStreamQuery == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuStreamQuery" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUstream) except ?CUDA_ERROR_NOT_FOUND nogil> __cuStreamQuery)(hStream)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__218, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 4579, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 4579, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":4578
 *     cuPythonInit()
 *     if __cuStreamQuery == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuStreamQuery" not found')
 *     err = (<CUresult (*)(CUstream) except ?CUDA_ERROR_NOT_FOUND nogil> __cuStreamQuery)(hStream)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":4577
 *     global __cuStreamQuery
 *     cuPythonInit()
 *     if __cuStreamQuery == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuStreamQuery" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":4580
 *         with gil:
 *             raise RuntimeError('Function "cuStreamQuery" not found')
 *     err = (<CUresult (*)(CUstream) except ?CUDA_ERROR_NOT_FOUND nogil> __cuStreamQuery)(hStream)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUstream))__pyx_v_4cuda_5_cuda_5ccuda___cuStreamQuery)(__pyx_v_hStream); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 4580, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":4581
 *             raise RuntimeError('Function "cuStreamQuery" not found')
 *     err = (<CUresult (*)(CUstream) except ?CUDA_ERROR_NOT_FOUND nogil> __cuStreamQuery)(hStream)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuStreamSynchronize(CUstream hStream) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":4574
 *     return err
 * 
 * cdef CUresult _cuStreamQuery(CUstream hStream) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuStreamQuery
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuStreamQuery", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":4583
 *     return err
 * 
 * cdef CUresult _cuStreamSynchronize(CUstream hStream) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuStreamSynchronize
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuStreamSynchronize(CUstream __pyx_v_hStream) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuStreamSynchronize", 1);
  __Pyx_TraceCall("_cuStreamSynchronize", __pyx_f[0], 4583, 1, __PYX_ERR(0, 4583, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":4585
 * cdef CUresult _cuStreamSynchronize(CUstream hStream) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuStreamSynchronize
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuStreamSynchronize == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 4585, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":4586
 *     global __cuStreamSynchronize
 *     cuPythonInit()
 *     if __cuStreamSynchronize == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuStreamSynchronize" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuStreamSynchronize == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":4587
 *     cuPythonInit()
 *     if __cuStreamSynchronize == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuStreamSynchronize" not found')
 *     err = (<CUresult (*)(CUstream) except ?CUDA_ERROR_NOT_FOUND nogil> __cuStreamSynchronize)(hStream)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":4588
 *     if __cuStreamSynchronize == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuStreamSynchronize" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUstream) except ?CUDA_ERROR_NOT_FOUND nogil> __cuStreamSynchronize)(hStream)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__219, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 4588, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 4588, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":4587
 *     cuPythonInit()
 *     if __cuStreamSynchronize == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuStreamSynchronize" not found')
 *     err = (<CUresult (*)(CUstream) except ?CUDA_ERROR_NOT_FOUND nogil> __cuStreamSynchronize)(hStream)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":4586
 *     global __cuStreamSynchronize
 *     cuPythonInit()
 *     if __cuStreamSynchronize == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuStreamSynchronize" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":4589
 *         with gil:
 *             raise RuntimeError('Function "cuStreamSynchronize" not found')
 *     err = (<CUresult (*)(CUstream) except ?CUDA_ERROR_NOT_FOUND nogil> __cuStreamSynchronize)(hStream)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUstream))__pyx_v_4cuda_5_cuda_5ccuda___cuStreamSynchronize)(__pyx_v_hStream); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 4589, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":4590
 *             raise RuntimeError('Function "cuStreamSynchronize" not found')
 *     err = (<CUresult (*)(CUstream) except ?CUDA_ERROR_NOT_FOUND nogil> __cuStreamSynchronize)(hStream)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuStreamDestroy_v2(CUstream hStream) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":4583
 *     return err
 * 
 * cdef CUresult _cuStreamSynchronize(CUstream hStream) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuStreamSynchronize
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuStreamSynchronize", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":4592
 *     return err
 * 
 * cdef CUresult _cuStreamDestroy_v2(CUstream hStream) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuStreamDestroy_v2
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuStreamDestroy_v2(CUstream __pyx_v_hStream) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuStreamDestroy_v2", 1);
  __Pyx_TraceCall("_cuStreamDestroy_v2", __pyx_f[0], 4592, 1, __PYX_ERR(0, 4592, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":4594
 * cdef CUresult _cuStreamDestroy_v2(CUstream hStream) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuStreamDestroy_v2
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuStreamDestroy_v2 == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 4594, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":4595
 *     global __cuStreamDestroy_v2
 *     cuPythonInit()
 *     if __cuStreamDestroy_v2 == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuStreamDestroy_v2" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuStreamDestroy_v2 == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":4596
 *     cuPythonInit()
 *     if __cuStreamDestroy_v2 == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuStreamDestroy_v2" not found')
 *     err = (<CUresult (*)(CUstream) except ?CUDA_ERROR_NOT_FOUND nogil> __cuStreamDestroy_v2)(hStream)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":4597
 *     if __cuStreamDestroy_v2 == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuStreamDestroy_v2" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUstream) except ?CUDA_ERROR_NOT_FOUND nogil> __cuStreamDestroy_v2)(hStream)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__220, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 4597, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 4597, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":4596
 *     cuPythonInit()
 *     if __cuStreamDestroy_v2 == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuStreamDestroy_v2" not found')
 *     err = (<CUresult (*)(CUstream) except ?CUDA_ERROR_NOT_FOUND nogil> __cuStreamDestroy_v2)(hStream)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":4595
 *     global __cuStreamDestroy_v2
 *     cuPythonInit()
 *     if __cuStreamDestroy_v2 == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuStreamDestroy_v2" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":4598
 *         with gil:
 *             raise RuntimeError('Function "cuStreamDestroy_v2" not found')
 *     err = (<CUresult (*)(CUstream) except ?CUDA_ERROR_NOT_FOUND nogil> __cuStreamDestroy_v2)(hStream)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUstream))__pyx_v_4cuda_5_cuda_5ccuda___cuStreamDestroy_v2)(__pyx_v_hStream); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 4598, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":4599
 *             raise RuntimeError('Function "cuStreamDestroy_v2" not found')
 *     err = (<CUresult (*)(CUstream) except ?CUDA_ERROR_NOT_FOUND nogil> __cuStreamDestroy_v2)(hStream)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuStreamCopyAttributes(CUstream dst, CUstream src) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":4592
 *     return err
 * 
 * cdef CUresult _cuStreamDestroy_v2(CUstream hStream) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuStreamDestroy_v2
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuStreamDestroy_v2", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":4601
 *     return err
 * 
 * cdef CUresult _cuStreamCopyAttributes(CUstream dst, CUstream src) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuStreamCopyAttributes
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuStreamCopyAttributes(CUstream __pyx_v_dst, CUstream __pyx_v_src) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuStreamCopyAttributes", 1);
  __Pyx_TraceCall("_cuStreamCopyAttributes", __pyx_f[0], 4601, 1, __PYX_ERR(0, 4601, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":4603
 * cdef CUresult _cuStreamCopyAttributes(CUstream dst, CUstream src) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuStreamCopyAttributes
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuStreamCopyAttributes == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 4603, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":4604
 *     global __cuStreamCopyAttributes
 *     cuPythonInit()
 *     if __cuStreamCopyAttributes == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuStreamCopyAttributes" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuStreamCopyAttributes == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":4605
 *     cuPythonInit()
 *     if __cuStreamCopyAttributes == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuStreamCopyAttributes" not found')
 *     err = (<CUresult (*)(CUstream, CUstream) except ?CUDA_ERROR_NOT_FOUND nogil> __cuStreamCopyAttributes)(dst, src)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":4606
 *     if __cuStreamCopyAttributes == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuStreamCopyAttributes" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUstream, CUstream) except ?CUDA_ERROR_NOT_FOUND nogil> __cuStreamCopyAttributes)(dst, src)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__221, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 4606, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 4606, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":4605
 *     cuPythonInit()
 *     if __cuStreamCopyAttributes == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuStreamCopyAttributes" not found')
 *     err = (<CUresult (*)(CUstream, CUstream) except ?CUDA_ERROR_NOT_FOUND nogil> __cuStreamCopyAttributes)(dst, src)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":4604
 *     global __cuStreamCopyAttributes
 *     cuPythonInit()
 *     if __cuStreamCopyAttributes == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuStreamCopyAttributes" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":4607
 *         with gil:
 *             raise RuntimeError('Function "cuStreamCopyAttributes" not found')
 *     err = (<CUresult (*)(CUstream, CUstream) except ?CUDA_ERROR_NOT_FOUND nogil> __cuStreamCopyAttributes)(dst, src)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUstream, CUstream))__pyx_v_4cuda_5_cuda_5ccuda___cuStreamCopyAttributes)(__pyx_v_dst, __pyx_v_src); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 4607, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":4608
 *             raise RuntimeError('Function "cuStreamCopyAttributes" not found')
 *     err = (<CUresult (*)(CUstream, CUstream) except ?CUDA_ERROR_NOT_FOUND nogil> __cuStreamCopyAttributes)(dst, src)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuStreamGetAttribute(CUstream hStream, CUstreamAttrID attr, CUstreamAttrValue* value_out) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":4601
 *     return err
 * 
 * cdef CUresult _cuStreamCopyAttributes(CUstream dst, CUstream src) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuStreamCopyAttributes
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuStreamCopyAttributes", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":4610
 *     return err
 * 
 * cdef CUresult _cuStreamGetAttribute(CUstream hStream, CUstreamAttrID attr, CUstreamAttrValue* value_out) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuStreamGetAttribute
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuStreamGetAttribute(CUstream __pyx_v_hStream, CUstreamAttrID __pyx_v_attr, CUstreamAttrValue *__pyx_v_value_out) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuStreamGetAttribute", 1);
  __Pyx_TraceCall("_cuStreamGetAttribute", __pyx_f[0], 4610, 1, __PYX_ERR(0, 4610, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":4612
 * cdef CUresult _cuStreamGetAttribute(CUstream hStream, CUstreamAttrID attr, CUstreamAttrValue* value_out) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuStreamGetAttribute
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuStreamGetAttribute == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 4612, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":4613
 *     global __cuStreamGetAttribute
 *     cuPythonInit()
 *     if __cuStreamGetAttribute == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuStreamGetAttribute" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuStreamGetAttribute == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":4614
 *     cuPythonInit()
 *     if __cuStreamGetAttribute == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuStreamGetAttribute" not found')
 *     err = (<CUresult (*)(CUstream, CUstreamAttrID, CUstreamAttrValue*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuStreamGetAttribute)(hStream, attr, value_out)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":4615
 *     if __cuStreamGetAttribute == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuStreamGetAttribute" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUstream, CUstreamAttrID, CUstreamAttrValue*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuStreamGetAttribute)(hStream, attr, value_out)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__222, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 4615, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 4615, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":4614
 *     cuPythonInit()
 *     if __cuStreamGetAttribute == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuStreamGetAttribute" not found')
 *     err = (<CUresult (*)(CUstream, CUstreamAttrID, CUstreamAttrValue*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuStreamGetAttribute)(hStream, attr, value_out)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":4613
 *     global __cuStreamGetAttribute
 *     cuPythonInit()
 *     if __cuStreamGetAttribute == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuStreamGetAttribute" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":4616
 *         with gil:
 *             raise RuntimeError('Function "cuStreamGetAttribute" not found')
 *     err = (<CUresult (*)(CUstream, CUstreamAttrID, CUstreamAttrValue*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuStreamGetAttribute)(hStream, attr, value_out)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUstream, CUstreamAttrID, CUstreamAttrValue *))__pyx_v_4cuda_5_cuda_5ccuda___cuStreamGetAttribute)(__pyx_v_hStream, __pyx_v_attr, __pyx_v_value_out); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 4616, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":4617
 *             raise RuntimeError('Function "cuStreamGetAttribute" not found')
 *     err = (<CUresult (*)(CUstream, CUstreamAttrID, CUstreamAttrValue*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuStreamGetAttribute)(hStream, attr, value_out)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuStreamSetAttribute(CUstream hStream, CUstreamAttrID attr, const CUstreamAttrValue* value) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":4610
 *     return err
 * 
 * cdef CUresult _cuStreamGetAttribute(CUstream hStream, CUstreamAttrID attr, CUstreamAttrValue* value_out) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuStreamGetAttribute
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuStreamGetAttribute", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":4619
 *     return err
 * 
 * cdef CUresult _cuStreamSetAttribute(CUstream hStream, CUstreamAttrID attr, const CUstreamAttrValue* value) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuStreamSetAttribute
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuStreamSetAttribute(CUstream __pyx_v_hStream, CUstreamAttrID __pyx_v_attr, CUstreamAttrValue const *__pyx_v_value) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuStreamSetAttribute", 1);
  __Pyx_TraceCall("_cuStreamSetAttribute", __pyx_f[0], 4619, 1, __PYX_ERR(0, 4619, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":4621
 * cdef CUresult _cuStreamSetAttribute(CUstream hStream, CUstreamAttrID attr, const CUstreamAttrValue* value) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuStreamSetAttribute
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuStreamSetAttribute == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 4621, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":4622
 *     global __cuStreamSetAttribute
 *     cuPythonInit()
 *     if __cuStreamSetAttribute == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuStreamSetAttribute" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuStreamSetAttribute == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":4623
 *     cuPythonInit()
 *     if __cuStreamSetAttribute == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuStreamSetAttribute" not found')
 *     err = (<CUresult (*)(CUstream, CUstreamAttrID, const CUstreamAttrValue*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuStreamSetAttribute)(hStream, attr, value)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":4624
 *     if __cuStreamSetAttribute == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuStreamSetAttribute" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUstream, CUstreamAttrID, const CUstreamAttrValue*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuStreamSetAttribute)(hStream, attr, value)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__223, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 4624, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 4624, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":4623
 *     cuPythonInit()
 *     if __cuStreamSetAttribute == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuStreamSetAttribute" not found')
 *     err = (<CUresult (*)(CUstream, CUstreamAttrID, const CUstreamAttrValue*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuStreamSetAttribute)(hStream, attr, value)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":4622
 *     global __cuStreamSetAttribute
 *     cuPythonInit()
 *     if __cuStreamSetAttribute == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuStreamSetAttribute" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":4625
 *         with gil:
 *             raise RuntimeError('Function "cuStreamSetAttribute" not found')
 *     err = (<CUresult (*)(CUstream, CUstreamAttrID, const CUstreamAttrValue*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuStreamSetAttribute)(hStream, attr, value)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUstream, CUstreamAttrID, CUstreamAttrValue const *))__pyx_v_4cuda_5_cuda_5ccuda___cuStreamSetAttribute)(__pyx_v_hStream, __pyx_v_attr, __pyx_v_value); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 4625, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":4626
 *             raise RuntimeError('Function "cuStreamSetAttribute" not found')
 *     err = (<CUresult (*)(CUstream, CUstreamAttrID, const CUstreamAttrValue*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuStreamSetAttribute)(hStream, attr, value)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuEventCreate(CUevent* phEvent, unsigned int Flags) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":4619
 *     return err
 * 
 * cdef CUresult _cuStreamSetAttribute(CUstream hStream, CUstreamAttrID attr, const CUstreamAttrValue* value) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuStreamSetAttribute
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuStreamSetAttribute", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":4628
 *     return err
 * 
 * cdef CUresult _cuEventCreate(CUevent* phEvent, unsigned int Flags) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuEventCreate
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuEventCreate(CUevent *__pyx_v_phEvent, unsigned int __pyx_v_Flags) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuEventCreate", 1);
  __Pyx_TraceCall("_cuEventCreate", __pyx_f[0], 4628, 1, __PYX_ERR(0, 4628, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":4630
 * cdef CUresult _cuEventCreate(CUevent* phEvent, unsigned int Flags) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuEventCreate
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuEventCreate == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 4630, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":4631
 *     global __cuEventCreate
 *     cuPythonInit()
 *     if __cuEventCreate == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuEventCreate" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuEventCreate == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":4632
 *     cuPythonInit()
 *     if __cuEventCreate == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuEventCreate" not found')
 *     err = (<CUresult (*)(CUevent*, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuEventCreate)(phEvent, Flags)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":4633
 *     if __cuEventCreate == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuEventCreate" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUevent*, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuEventCreate)(phEvent, Flags)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__224, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 4633, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 4633, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":4632
 *     cuPythonInit()
 *     if __cuEventCreate == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuEventCreate" not found')
 *     err = (<CUresult (*)(CUevent*, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuEventCreate)(phEvent, Flags)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":4631
 *     global __cuEventCreate
 *     cuPythonInit()
 *     if __cuEventCreate == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuEventCreate" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":4634
 *         with gil:
 *             raise RuntimeError('Function "cuEventCreate" not found')
 *     err = (<CUresult (*)(CUevent*, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuEventCreate)(phEvent, Flags)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUevent *, unsigned int))__pyx_v_4cuda_5_cuda_5ccuda___cuEventCreate)(__pyx_v_phEvent, __pyx_v_Flags); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 4634, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":4635
 *             raise RuntimeError('Function "cuEventCreate" not found')
 *     err = (<CUresult (*)(CUevent*, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuEventCreate)(phEvent, Flags)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuEventRecord(CUevent hEvent, CUstream hStream) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":4628
 *     return err
 * 
 * cdef CUresult _cuEventCreate(CUevent* phEvent, unsigned int Flags) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuEventCreate
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuEventCreate", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":4637
 *     return err
 * 
 * cdef CUresult _cuEventRecord(CUevent hEvent, CUstream hStream) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuEventRecord
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuEventRecord(CUevent __pyx_v_hEvent, CUstream __pyx_v_hStream) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuEventRecord", 1);
  __Pyx_TraceCall("_cuEventRecord", __pyx_f[0], 4637, 1, __PYX_ERR(0, 4637, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":4639
 * cdef CUresult _cuEventRecord(CUevent hEvent, CUstream hStream) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuEventRecord
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuEventRecord == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 4639, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":4640
 *     global __cuEventRecord
 *     cuPythonInit()
 *     if __cuEventRecord == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuEventRecord" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuEventRecord == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":4641
 *     cuPythonInit()
 *     if __cuEventRecord == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuEventRecord" not found')
 *     err = (<CUresult (*)(CUevent, CUstream) except ?CUDA_ERROR_NOT_FOUND nogil> __cuEventRecord)(hEvent, hStream)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":4642
 *     if __cuEventRecord == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuEventRecord" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUevent, CUstream) except ?CUDA_ERROR_NOT_FOUND nogil> __cuEventRecord)(hEvent, hStream)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__225, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 4642, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 4642, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":4641
 *     cuPythonInit()
 *     if __cuEventRecord == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuEventRecord" not found')
 *     err = (<CUresult (*)(CUevent, CUstream) except ?CUDA_ERROR_NOT_FOUND nogil> __cuEventRecord)(hEvent, hStream)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":4640
 *     global __cuEventRecord
 *     cuPythonInit()
 *     if __cuEventRecord == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuEventRecord" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":4643
 *         with gil:
 *             raise RuntimeError('Function "cuEventRecord" not found')
 *     err = (<CUresult (*)(CUevent, CUstream) except ?CUDA_ERROR_NOT_FOUND nogil> __cuEventRecord)(hEvent, hStream)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUevent, CUstream))__pyx_v_4cuda_5_cuda_5ccuda___cuEventRecord)(__pyx_v_hEvent, __pyx_v_hStream); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 4643, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":4644
 *             raise RuntimeError('Function "cuEventRecord" not found')
 *     err = (<CUresult (*)(CUevent, CUstream) except ?CUDA_ERROR_NOT_FOUND nogil> __cuEventRecord)(hEvent, hStream)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuEventRecordWithFlags(CUevent hEvent, CUstream hStream, unsigned int flags) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":4637
 *     return err
 * 
 * cdef CUresult _cuEventRecord(CUevent hEvent, CUstream hStream) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuEventRecord
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuEventRecord", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":4646
 *     return err
 * 
 * cdef CUresult _cuEventRecordWithFlags(CUevent hEvent, CUstream hStream, unsigned int flags) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuEventRecordWithFlags
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuEventRecordWithFlags(CUevent __pyx_v_hEvent, CUstream __pyx_v_hStream, unsigned int __pyx_v_flags) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuEventRecordWithFlags", 1);
  __Pyx_TraceCall("_cuEventRecordWithFlags", __pyx_f[0], 4646, 1, __PYX_ERR(0, 4646, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":4648
 * cdef CUresult _cuEventRecordWithFlags(CUevent hEvent, CUstream hStream, unsigned int flags) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuEventRecordWithFlags
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuEventRecordWithFlags == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 4648, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":4649
 *     global __cuEventRecordWithFlags
 *     cuPythonInit()
 *     if __cuEventRecordWithFlags == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuEventRecordWithFlags" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuEventRecordWithFlags == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":4650
 *     cuPythonInit()
 *     if __cuEventRecordWithFlags == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuEventRecordWithFlags" not found')
 *     err = (<CUresult (*)(CUevent, CUstream, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuEventRecordWithFlags)(hEvent, hStream, flags)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":4651
 *     if __cuEventRecordWithFlags == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuEventRecordWithFlags" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUevent, CUstream, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuEventRecordWithFlags)(hEvent, hStream, flags)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__226, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 4651, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 4651, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":4650
 *     cuPythonInit()
 *     if __cuEventRecordWithFlags == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuEventRecordWithFlags" not found')
 *     err = (<CUresult (*)(CUevent, CUstream, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuEventRecordWithFlags)(hEvent, hStream, flags)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":4649
 *     global __cuEventRecordWithFlags
 *     cuPythonInit()
 *     if __cuEventRecordWithFlags == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuEventRecordWithFlags" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":4652
 *         with gil:
 *             raise RuntimeError('Function "cuEventRecordWithFlags" not found')
 *     err = (<CUresult (*)(CUevent, CUstream, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuEventRecordWithFlags)(hEvent, hStream, flags)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUevent, CUstream, unsigned int))__pyx_v_4cuda_5_cuda_5ccuda___cuEventRecordWithFlags)(__pyx_v_hEvent, __pyx_v_hStream, __pyx_v_flags); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 4652, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":4653
 *             raise RuntimeError('Function "cuEventRecordWithFlags" not found')
 *     err = (<CUresult (*)(CUevent, CUstream, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuEventRecordWithFlags)(hEvent, hStream, flags)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuEventQuery(CUevent hEvent) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":4646
 *     return err
 * 
 * cdef CUresult _cuEventRecordWithFlags(CUevent hEvent, CUstream hStream, unsigned int flags) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuEventRecordWithFlags
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuEventRecordWithFlags", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":4655
 *     return err
 * 
 * cdef CUresult _cuEventQuery(CUevent hEvent) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuEventQuery
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuEventQuery(CUevent __pyx_v_hEvent) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuEventQuery", 1);
  __Pyx_TraceCall("_cuEventQuery", __pyx_f[0], 4655, 1, __PYX_ERR(0, 4655, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":4657
 * cdef CUresult _cuEventQuery(CUevent hEvent) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuEventQuery
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuEventQuery == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 4657, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":4658
 *     global __cuEventQuery
 *     cuPythonInit()
 *     if __cuEventQuery == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuEventQuery" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuEventQuery == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":4659
 *     cuPythonInit()
 *     if __cuEventQuery == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuEventQuery" not found')
 *     err = (<CUresult (*)(CUevent) except ?CUDA_ERROR_NOT_FOUND nogil> __cuEventQuery)(hEvent)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":4660
 *     if __cuEventQuery == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuEventQuery" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUevent) except ?CUDA_ERROR_NOT_FOUND nogil> __cuEventQuery)(hEvent)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__227, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 4660, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 4660, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":4659
 *     cuPythonInit()
 *     if __cuEventQuery == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuEventQuery" not found')
 *     err = (<CUresult (*)(CUevent) except ?CUDA_ERROR_NOT_FOUND nogil> __cuEventQuery)(hEvent)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":4658
 *     global __cuEventQuery
 *     cuPythonInit()
 *     if __cuEventQuery == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuEventQuery" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":4661
 *         with gil:
 *             raise RuntimeError('Function "cuEventQuery" not found')
 *     err = (<CUresult (*)(CUevent) except ?CUDA_ERROR_NOT_FOUND nogil> __cuEventQuery)(hEvent)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUevent))__pyx_v_4cuda_5_cuda_5ccuda___cuEventQuery)(__pyx_v_hEvent); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 4661, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":4662
 *             raise RuntimeError('Function "cuEventQuery" not found')
 *     err = (<CUresult (*)(CUevent) except ?CUDA_ERROR_NOT_FOUND nogil> __cuEventQuery)(hEvent)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuEventSynchronize(CUevent hEvent) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":4655
 *     return err
 * 
 * cdef CUresult _cuEventQuery(CUevent hEvent) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuEventQuery
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuEventQuery", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":4664
 *     return err
 * 
 * cdef CUresult _cuEventSynchronize(CUevent hEvent) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuEventSynchronize
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuEventSynchronize(CUevent __pyx_v_hEvent) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuEventSynchronize", 1);
  __Pyx_TraceCall("_cuEventSynchronize", __pyx_f[0], 4664, 1, __PYX_ERR(0, 4664, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":4666
 * cdef CUresult _cuEventSynchronize(CUevent hEvent) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuEventSynchronize
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuEventSynchronize == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 4666, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":4667
 *     global __cuEventSynchronize
 *     cuPythonInit()
 *     if __cuEventSynchronize == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuEventSynchronize" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuEventSynchronize == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":4668
 *     cuPythonInit()
 *     if __cuEventSynchronize == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuEventSynchronize" not found')
 *     err = (<CUresult (*)(CUevent) except ?CUDA_ERROR_NOT_FOUND nogil> __cuEventSynchronize)(hEvent)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":4669
 *     if __cuEventSynchronize == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuEventSynchronize" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUevent) except ?CUDA_ERROR_NOT_FOUND nogil> __cuEventSynchronize)(hEvent)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__228, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 4669, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 4669, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":4668
 *     cuPythonInit()
 *     if __cuEventSynchronize == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuEventSynchronize" not found')
 *     err = (<CUresult (*)(CUevent) except ?CUDA_ERROR_NOT_FOUND nogil> __cuEventSynchronize)(hEvent)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":4667
 *     global __cuEventSynchronize
 *     cuPythonInit()
 *     if __cuEventSynchronize == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuEventSynchronize" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":4670
 *         with gil:
 *             raise RuntimeError('Function "cuEventSynchronize" not found')
 *     err = (<CUresult (*)(CUevent) except ?CUDA_ERROR_NOT_FOUND nogil> __cuEventSynchronize)(hEvent)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUevent))__pyx_v_4cuda_5_cuda_5ccuda___cuEventSynchronize)(__pyx_v_hEvent); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 4670, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":4671
 *             raise RuntimeError('Function "cuEventSynchronize" not found')
 *     err = (<CUresult (*)(CUevent) except ?CUDA_ERROR_NOT_FOUND nogil> __cuEventSynchronize)(hEvent)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuEventDestroy_v2(CUevent hEvent) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":4664
 *     return err
 * 
 * cdef CUresult _cuEventSynchronize(CUevent hEvent) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuEventSynchronize
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuEventSynchronize", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":4673
 *     return err
 * 
 * cdef CUresult _cuEventDestroy_v2(CUevent hEvent) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuEventDestroy_v2
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuEventDestroy_v2(CUevent __pyx_v_hEvent) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuEventDestroy_v2", 1);
  __Pyx_TraceCall("_cuEventDestroy_v2", __pyx_f[0], 4673, 1, __PYX_ERR(0, 4673, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":4675
 * cdef CUresult _cuEventDestroy_v2(CUevent hEvent) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuEventDestroy_v2
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuEventDestroy_v2 == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 4675, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":4676
 *     global __cuEventDestroy_v2
 *     cuPythonInit()
 *     if __cuEventDestroy_v2 == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuEventDestroy_v2" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuEventDestroy_v2 == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":4677
 *     cuPythonInit()
 *     if __cuEventDestroy_v2 == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuEventDestroy_v2" not found')
 *     err = (<CUresult (*)(CUevent) except ?CUDA_ERROR_NOT_FOUND nogil> __cuEventDestroy_v2)(hEvent)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":4678
 *     if __cuEventDestroy_v2 == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuEventDestroy_v2" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUevent) except ?CUDA_ERROR_NOT_FOUND nogil> __cuEventDestroy_v2)(hEvent)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__229, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 4678, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 4678, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":4677
 *     cuPythonInit()
 *     if __cuEventDestroy_v2 == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuEventDestroy_v2" not found')
 *     err = (<CUresult (*)(CUevent) except ?CUDA_ERROR_NOT_FOUND nogil> __cuEventDestroy_v2)(hEvent)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":4676
 *     global __cuEventDestroy_v2
 *     cuPythonInit()
 *     if __cuEventDestroy_v2 == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuEventDestroy_v2" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":4679
 *         with gil:
 *             raise RuntimeError('Function "cuEventDestroy_v2" not found')
 *     err = (<CUresult (*)(CUevent) except ?CUDA_ERROR_NOT_FOUND nogil> __cuEventDestroy_v2)(hEvent)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUevent))__pyx_v_4cuda_5_cuda_5ccuda___cuEventDestroy_v2)(__pyx_v_hEvent); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 4679, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":4680
 *             raise RuntimeError('Function "cuEventDestroy_v2" not found')
 *     err = (<CUresult (*)(CUevent) except ?CUDA_ERROR_NOT_FOUND nogil> __cuEventDestroy_v2)(hEvent)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuEventElapsedTime(float* pMilliseconds, CUevent hStart, CUevent hEnd) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":4673
 *     return err
 * 
 * cdef CUresult _cuEventDestroy_v2(CUevent hEvent) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuEventDestroy_v2
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuEventDestroy_v2", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":4682
 *     return err
 * 
 * cdef CUresult _cuEventElapsedTime(float* pMilliseconds, CUevent hStart, CUevent hEnd) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuEventElapsedTime
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuEventElapsedTime(float *__pyx_v_pMilliseconds, CUevent __pyx_v_hStart, CUevent __pyx_v_hEnd) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuEventElapsedTime", 1);
  __Pyx_TraceCall("_cuEventElapsedTime", __pyx_f[0], 4682, 1, __PYX_ERR(0, 4682, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":4684
 * cdef CUresult _cuEventElapsedTime(float* pMilliseconds, CUevent hStart, CUevent hEnd) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuEventElapsedTime
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuEventElapsedTime == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 4684, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":4685
 *     global __cuEventElapsedTime
 *     cuPythonInit()
 *     if __cuEventElapsedTime == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuEventElapsedTime" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuEventElapsedTime == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":4686
 *     cuPythonInit()
 *     if __cuEventElapsedTime == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuEventElapsedTime" not found')
 *     err = (<CUresult (*)(float*, CUevent, CUevent) except ?CUDA_ERROR_NOT_FOUND nogil> __cuEventElapsedTime)(pMilliseconds, hStart, hEnd)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":4687
 *     if __cuEventElapsedTime == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuEventElapsedTime" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(float*, CUevent, CUevent) except ?CUDA_ERROR_NOT_FOUND nogil> __cuEventElapsedTime)(pMilliseconds, hStart, hEnd)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__230, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 4687, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 4687, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":4686
 *     cuPythonInit()
 *     if __cuEventElapsedTime == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuEventElapsedTime" not found')
 *     err = (<CUresult (*)(float*, CUevent, CUevent) except ?CUDA_ERROR_NOT_FOUND nogil> __cuEventElapsedTime)(pMilliseconds, hStart, hEnd)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":4685
 *     global __cuEventElapsedTime
 *     cuPythonInit()
 *     if __cuEventElapsedTime == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuEventElapsedTime" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":4688
 *         with gil:
 *             raise RuntimeError('Function "cuEventElapsedTime" not found')
 *     err = (<CUresult (*)(float*, CUevent, CUevent) except ?CUDA_ERROR_NOT_FOUND nogil> __cuEventElapsedTime)(pMilliseconds, hStart, hEnd)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(float *, CUevent, CUevent))__pyx_v_4cuda_5_cuda_5ccuda___cuEventElapsedTime)(__pyx_v_pMilliseconds, __pyx_v_hStart, __pyx_v_hEnd); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 4688, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":4689
 *             raise RuntimeError('Function "cuEventElapsedTime" not found')
 *     err = (<CUresult (*)(float*, CUevent, CUevent) except ?CUDA_ERROR_NOT_FOUND nogil> __cuEventElapsedTime)(pMilliseconds, hStart, hEnd)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuImportExternalMemory(CUexternalMemory* extMem_out, const CUDA_EXTERNAL_MEMORY_HANDLE_DESC* memHandleDesc) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":4682
 *     return err
 * 
 * cdef CUresult _cuEventElapsedTime(float* pMilliseconds, CUevent hStart, CUevent hEnd) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuEventElapsedTime
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuEventElapsedTime", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":4691
 *     return err
 * 
 * cdef CUresult _cuImportExternalMemory(CUexternalMemory* extMem_out, const CUDA_EXTERNAL_MEMORY_HANDLE_DESC* memHandleDesc) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuImportExternalMemory
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuImportExternalMemory(CUexternalMemory *__pyx_v_extMem_out, CUDA_EXTERNAL_MEMORY_HANDLE_DESC const *__pyx_v_memHandleDesc) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuImportExternalMemory", 1);
  __Pyx_TraceCall("_cuImportExternalMemory", __pyx_f[0], 4691, 1, __PYX_ERR(0, 4691, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":4693
 * cdef CUresult _cuImportExternalMemory(CUexternalMemory* extMem_out, const CUDA_EXTERNAL_MEMORY_HANDLE_DESC* memHandleDesc) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuImportExternalMemory
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuImportExternalMemory == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 4693, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":4694
 *     global __cuImportExternalMemory
 *     cuPythonInit()
 *     if __cuImportExternalMemory == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuImportExternalMemory" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuImportExternalMemory == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":4695
 *     cuPythonInit()
 *     if __cuImportExternalMemory == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuImportExternalMemory" not found')
 *     err = (<CUresult (*)(CUexternalMemory*, const CUDA_EXTERNAL_MEMORY_HANDLE_DESC*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuImportExternalMemory)(extMem_out, memHandleDesc)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":4696
 *     if __cuImportExternalMemory == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuImportExternalMemory" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUexternalMemory*, const CUDA_EXTERNAL_MEMORY_HANDLE_DESC*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuImportExternalMemory)(extMem_out, memHandleDesc)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__231, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 4696, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 4696, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":4695
 *     cuPythonInit()
 *     if __cuImportExternalMemory == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuImportExternalMemory" not found')
 *     err = (<CUresult (*)(CUexternalMemory*, const CUDA_EXTERNAL_MEMORY_HANDLE_DESC*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuImportExternalMemory)(extMem_out, memHandleDesc)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":4694
 *     global __cuImportExternalMemory
 *     cuPythonInit()
 *     if __cuImportExternalMemory == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuImportExternalMemory" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":4697
 *         with gil:
 *             raise RuntimeError('Function "cuImportExternalMemory" not found')
 *     err = (<CUresult (*)(CUexternalMemory*, const CUDA_EXTERNAL_MEMORY_HANDLE_DESC*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuImportExternalMemory)(extMem_out, memHandleDesc)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUexternalMemory *, CUDA_EXTERNAL_MEMORY_HANDLE_DESC const *))__pyx_v_4cuda_5_cuda_5ccuda___cuImportExternalMemory)(__pyx_v_extMem_out, __pyx_v_memHandleDesc); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 4697, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":4698
 *             raise RuntimeError('Function "cuImportExternalMemory" not found')
 *     err = (<CUresult (*)(CUexternalMemory*, const CUDA_EXTERNAL_MEMORY_HANDLE_DESC*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuImportExternalMemory)(extMem_out, memHandleDesc)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuExternalMemoryGetMappedBuffer(CUdeviceptr* devPtr, CUexternalMemory extMem, const CUDA_EXTERNAL_MEMORY_BUFFER_DESC* bufferDesc) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":4691
 *     return err
 * 
 * cdef CUresult _cuImportExternalMemory(CUexternalMemory* extMem_out, const CUDA_EXTERNAL_MEMORY_HANDLE_DESC* memHandleDesc) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuImportExternalMemory
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuImportExternalMemory", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":4700
 *     return err
 * 
 * cdef CUresult _cuExternalMemoryGetMappedBuffer(CUdeviceptr* devPtr, CUexternalMemory extMem, const CUDA_EXTERNAL_MEMORY_BUFFER_DESC* bufferDesc) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuExternalMemoryGetMappedBuffer
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuExternalMemoryGetMappedBuffer(CUdeviceptr *__pyx_v_devPtr, CUexternalMemory __pyx_v_extMem, CUDA_EXTERNAL_MEMORY_BUFFER_DESC const *__pyx_v_bufferDesc) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuExternalMemoryGetMappedBuffer", 1);
  __Pyx_TraceCall("_cuExternalMemoryGetMappedBuffer", __pyx_f[0], 4700, 1, __PYX_ERR(0, 4700, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":4702
 * cdef CUresult _cuExternalMemoryGetMappedBuffer(CUdeviceptr* devPtr, CUexternalMemory extMem, const CUDA_EXTERNAL_MEMORY_BUFFER_DESC* bufferDesc) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuExternalMemoryGetMappedBuffer
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuExternalMemoryGetMappedBuffer == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 4702, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":4703
 *     global __cuExternalMemoryGetMappedBuffer
 *     cuPythonInit()
 *     if __cuExternalMemoryGetMappedBuffer == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuExternalMemoryGetMappedBuffer" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuExternalMemoryGetMappedBuffer == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":4704
 *     cuPythonInit()
 *     if __cuExternalMemoryGetMappedBuffer == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuExternalMemoryGetMappedBuffer" not found')
 *     err = (<CUresult (*)(CUdeviceptr*, CUexternalMemory, const CUDA_EXTERNAL_MEMORY_BUFFER_DESC*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuExternalMemoryGetMappedBuffer)(devPtr, extMem, bufferDesc)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":4705
 *     if __cuExternalMemoryGetMappedBuffer == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuExternalMemoryGetMappedBuffer" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUdeviceptr*, CUexternalMemory, const CUDA_EXTERNAL_MEMORY_BUFFER_DESC*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuExternalMemoryGetMappedBuffer)(devPtr, extMem, bufferDesc)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__232, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 4705, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 4705, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":4704
 *     cuPythonInit()
 *     if __cuExternalMemoryGetMappedBuffer == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuExternalMemoryGetMappedBuffer" not found')
 *     err = (<CUresult (*)(CUdeviceptr*, CUexternalMemory, const CUDA_EXTERNAL_MEMORY_BUFFER_DESC*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuExternalMemoryGetMappedBuffer)(devPtr, extMem, bufferDesc)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":4703
 *     global __cuExternalMemoryGetMappedBuffer
 *     cuPythonInit()
 *     if __cuExternalMemoryGetMappedBuffer == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuExternalMemoryGetMappedBuffer" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":4706
 *         with gil:
 *             raise RuntimeError('Function "cuExternalMemoryGetMappedBuffer" not found')
 *     err = (<CUresult (*)(CUdeviceptr*, CUexternalMemory, const CUDA_EXTERNAL_MEMORY_BUFFER_DESC*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuExternalMemoryGetMappedBuffer)(devPtr, extMem, bufferDesc)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUdeviceptr *, CUexternalMemory, CUDA_EXTERNAL_MEMORY_BUFFER_DESC const *))__pyx_v_4cuda_5_cuda_5ccuda___cuExternalMemoryGetMappedBuffer)(__pyx_v_devPtr, __pyx_v_extMem, __pyx_v_bufferDesc); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 4706, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":4707
 *             raise RuntimeError('Function "cuExternalMemoryGetMappedBuffer" not found')
 *     err = (<CUresult (*)(CUdeviceptr*, CUexternalMemory, const CUDA_EXTERNAL_MEMORY_BUFFER_DESC*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuExternalMemoryGetMappedBuffer)(devPtr, extMem, bufferDesc)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuExternalMemoryGetMappedMipmappedArray(CUmipmappedArray* mipmap, CUexternalMemory extMem, const CUDA_EXTERNAL_MEMORY_MIPMAPPED_ARRAY_DESC* mipmapDesc) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":4700
 *     return err
 * 
 * cdef CUresult _cuExternalMemoryGetMappedBuffer(CUdeviceptr* devPtr, CUexternalMemory extMem, const CUDA_EXTERNAL_MEMORY_BUFFER_DESC* bufferDesc) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuExternalMemoryGetMappedBuffer
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuExternalMemoryGetMappedBuffer", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":4709
 *     return err
 * 
 * cdef CUresult _cuExternalMemoryGetMappedMipmappedArray(CUmipmappedArray* mipmap, CUexternalMemory extMem, const CUDA_EXTERNAL_MEMORY_MIPMAPPED_ARRAY_DESC* mipmapDesc) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuExternalMemoryGetMappedMipmappedArray
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuExternalMemoryGetMappedMipmappedArray(CUmipmappedArray *__pyx_v_mipmap, CUexternalMemory __pyx_v_extMem, CUDA_EXTERNAL_MEMORY_MIPMAPPED_ARRAY_DESC const *__pyx_v_mipmapDesc) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuExternalMemoryGetMappedMipmappedArray", 1);
  __Pyx_TraceCall("_cuExternalMemoryGetMappedMipmappedArray", __pyx_f[0], 4709, 1, __PYX_ERR(0, 4709, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":4711
 * cdef CUresult _cuExternalMemoryGetMappedMipmappedArray(CUmipmappedArray* mipmap, CUexternalMemory extMem, const CUDA_EXTERNAL_MEMORY_MIPMAPPED_ARRAY_DESC* mipmapDesc) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuExternalMemoryGetMappedMipmappedArray
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuExternalMemoryGetMappedMipmappedArray == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 4711, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":4712
 *     global __cuExternalMemoryGetMappedMipmappedArray
 *     cuPythonInit()
 *     if __cuExternalMemoryGetMappedMipmappedArray == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuExternalMemoryGetMappedMipmappedArray" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuExternalMemoryGetMappedMipmappedArray == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":4713
 *     cuPythonInit()
 *     if __cuExternalMemoryGetMappedMipmappedArray == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuExternalMemoryGetMappedMipmappedArray" not found')
 *     err = (<CUresult (*)(CUmipmappedArray*, CUexternalMemory, const CUDA_EXTERNAL_MEMORY_MIPMAPPED_ARRAY_DESC*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuExternalMemoryGetMappedMipmappedArray)(mipmap, extMem, mipmapDesc)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":4714
 *     if __cuExternalMemoryGetMappedMipmappedArray == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuExternalMemoryGetMappedMipmappedArray" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUmipmappedArray*, CUexternalMemory, const CUDA_EXTERNAL_MEMORY_MIPMAPPED_ARRAY_DESC*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuExternalMemoryGetMappedMipmappedArray)(mipmap, extMem, mipmapDesc)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__233, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 4714, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 4714, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":4713
 *     cuPythonInit()
 *     if __cuExternalMemoryGetMappedMipmappedArray == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuExternalMemoryGetMappedMipmappedArray" not found')
 *     err = (<CUresult (*)(CUmipmappedArray*, CUexternalMemory, const CUDA_EXTERNAL_MEMORY_MIPMAPPED_ARRAY_DESC*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuExternalMemoryGetMappedMipmappedArray)(mipmap, extMem, mipmapDesc)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":4712
 *     global __cuExternalMemoryGetMappedMipmappedArray
 *     cuPythonInit()
 *     if __cuExternalMemoryGetMappedMipmappedArray == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuExternalMemoryGetMappedMipmappedArray" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":4715
 *         with gil:
 *             raise RuntimeError('Function "cuExternalMemoryGetMappedMipmappedArray" not found')
 *     err = (<CUresult (*)(CUmipmappedArray*, CUexternalMemory, const CUDA_EXTERNAL_MEMORY_MIPMAPPED_ARRAY_DESC*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuExternalMemoryGetMappedMipmappedArray)(mipmap, extMem, mipmapDesc)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUmipmappedArray *, CUexternalMemory, CUDA_EXTERNAL_MEMORY_MIPMAPPED_ARRAY_DESC const *))__pyx_v_4cuda_5_cuda_5ccuda___cuExternalMemoryGetMappedMipmappedArray)(__pyx_v_mipmap, __pyx_v_extMem, __pyx_v_mipmapDesc); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 4715, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":4716
 *             raise RuntimeError('Function "cuExternalMemoryGetMappedMipmappedArray" not found')
 *     err = (<CUresult (*)(CUmipmappedArray*, CUexternalMemory, const CUDA_EXTERNAL_MEMORY_MIPMAPPED_ARRAY_DESC*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuExternalMemoryGetMappedMipmappedArray)(mipmap, extMem, mipmapDesc)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuDestroyExternalMemory(CUexternalMemory extMem) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":4709
 *     return err
 * 
 * cdef CUresult _cuExternalMemoryGetMappedMipmappedArray(CUmipmappedArray* mipmap, CUexternalMemory extMem, const CUDA_EXTERNAL_MEMORY_MIPMAPPED_ARRAY_DESC* mipmapDesc) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuExternalMemoryGetMappedMipmappedArray
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuExternalMemoryGetMappedMipmappedArray", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":4718
 *     return err
 * 
 * cdef CUresult _cuDestroyExternalMemory(CUexternalMemory extMem) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuDestroyExternalMemory
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuDestroyExternalMemory(CUexternalMemory __pyx_v_extMem) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuDestroyExternalMemory", 1);
  __Pyx_TraceCall("_cuDestroyExternalMemory", __pyx_f[0], 4718, 1, __PYX_ERR(0, 4718, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":4720
 * cdef CUresult _cuDestroyExternalMemory(CUexternalMemory extMem) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuDestroyExternalMemory
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuDestroyExternalMemory == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 4720, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":4721
 *     global __cuDestroyExternalMemory
 *     cuPythonInit()
 *     if __cuDestroyExternalMemory == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuDestroyExternalMemory" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuDestroyExternalMemory == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":4722
 *     cuPythonInit()
 *     if __cuDestroyExternalMemory == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuDestroyExternalMemory" not found')
 *     err = (<CUresult (*)(CUexternalMemory) except ?CUDA_ERROR_NOT_FOUND nogil> __cuDestroyExternalMemory)(extMem)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":4723
 *     if __cuDestroyExternalMemory == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuDestroyExternalMemory" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUexternalMemory) except ?CUDA_ERROR_NOT_FOUND nogil> __cuDestroyExternalMemory)(extMem)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__234, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 4723, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 4723, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":4722
 *     cuPythonInit()
 *     if __cuDestroyExternalMemory == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuDestroyExternalMemory" not found')
 *     err = (<CUresult (*)(CUexternalMemory) except ?CUDA_ERROR_NOT_FOUND nogil> __cuDestroyExternalMemory)(extMem)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":4721
 *     global __cuDestroyExternalMemory
 *     cuPythonInit()
 *     if __cuDestroyExternalMemory == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuDestroyExternalMemory" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":4724
 *         with gil:
 *             raise RuntimeError('Function "cuDestroyExternalMemory" not found')
 *     err = (<CUresult (*)(CUexternalMemory) except ?CUDA_ERROR_NOT_FOUND nogil> __cuDestroyExternalMemory)(extMem)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUexternalMemory))__pyx_v_4cuda_5_cuda_5ccuda___cuDestroyExternalMemory)(__pyx_v_extMem); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 4724, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":4725
 *             raise RuntimeError('Function "cuDestroyExternalMemory" not found')
 *     err = (<CUresult (*)(CUexternalMemory) except ?CUDA_ERROR_NOT_FOUND nogil> __cuDestroyExternalMemory)(extMem)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuImportExternalSemaphore(CUexternalSemaphore* extSem_out, const CUDA_EXTERNAL_SEMAPHORE_HANDLE_DESC* semHandleDesc) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":4718
 *     return err
 * 
 * cdef CUresult _cuDestroyExternalMemory(CUexternalMemory extMem) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuDestroyExternalMemory
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuDestroyExternalMemory", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":4727
 *     return err
 * 
 * cdef CUresult _cuImportExternalSemaphore(CUexternalSemaphore* extSem_out, const CUDA_EXTERNAL_SEMAPHORE_HANDLE_DESC* semHandleDesc) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuImportExternalSemaphore
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuImportExternalSemaphore(CUexternalSemaphore *__pyx_v_extSem_out, CUDA_EXTERNAL_SEMAPHORE_HANDLE_DESC const *__pyx_v_semHandleDesc) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuImportExternalSemaphore", 1);
  __Pyx_TraceCall("_cuImportExternalSemaphore", __pyx_f[0], 4727, 1, __PYX_ERR(0, 4727, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":4729
 * cdef CUresult _cuImportExternalSemaphore(CUexternalSemaphore* extSem_out, const CUDA_EXTERNAL_SEMAPHORE_HANDLE_DESC* semHandleDesc) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuImportExternalSemaphore
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuImportExternalSemaphore == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 4729, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":4730
 *     global __cuImportExternalSemaphore
 *     cuPythonInit()
 *     if __cuImportExternalSemaphore == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuImportExternalSemaphore" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuImportExternalSemaphore == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":4731
 *     cuPythonInit()
 *     if __cuImportExternalSemaphore == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuImportExternalSemaphore" not found')
 *     err = (<CUresult (*)(CUexternalSemaphore*, const CUDA_EXTERNAL_SEMAPHORE_HANDLE_DESC*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuImportExternalSemaphore)(extSem_out, semHandleDesc)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":4732
 *     if __cuImportExternalSemaphore == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuImportExternalSemaphore" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUexternalSemaphore*, const CUDA_EXTERNAL_SEMAPHORE_HANDLE_DESC*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuImportExternalSemaphore)(extSem_out, semHandleDesc)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__235, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 4732, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 4732, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":4731
 *     cuPythonInit()
 *     if __cuImportExternalSemaphore == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuImportExternalSemaphore" not found')
 *     err = (<CUresult (*)(CUexternalSemaphore*, const CUDA_EXTERNAL_SEMAPHORE_HANDLE_DESC*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuImportExternalSemaphore)(extSem_out, semHandleDesc)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":4730
 *     global __cuImportExternalSemaphore
 *     cuPythonInit()
 *     if __cuImportExternalSemaphore == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuImportExternalSemaphore" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":4733
 *         with gil:
 *             raise RuntimeError('Function "cuImportExternalSemaphore" not found')
 *     err = (<CUresult (*)(CUexternalSemaphore*, const CUDA_EXTERNAL_SEMAPHORE_HANDLE_DESC*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuImportExternalSemaphore)(extSem_out, semHandleDesc)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUexternalSemaphore *, CUDA_EXTERNAL_SEMAPHORE_HANDLE_DESC const *))__pyx_v_4cuda_5_cuda_5ccuda___cuImportExternalSemaphore)(__pyx_v_extSem_out, __pyx_v_semHandleDesc); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 4733, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":4734
 *             raise RuntimeError('Function "cuImportExternalSemaphore" not found')
 *     err = (<CUresult (*)(CUexternalSemaphore*, const CUDA_EXTERNAL_SEMAPHORE_HANDLE_DESC*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuImportExternalSemaphore)(extSem_out, semHandleDesc)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuSignalExternalSemaphoresAsync(const CUexternalSemaphore* extSemArray, const CUDA_EXTERNAL_SEMAPHORE_SIGNAL_PARAMS* paramsArray, unsigned int numExtSems, CUstream stream) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":4727
 *     return err
 * 
 * cdef CUresult _cuImportExternalSemaphore(CUexternalSemaphore* extSem_out, const CUDA_EXTERNAL_SEMAPHORE_HANDLE_DESC* semHandleDesc) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuImportExternalSemaphore
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuImportExternalSemaphore", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":4736
 *     return err
 * 
 * cdef CUresult _cuSignalExternalSemaphoresAsync(const CUexternalSemaphore* extSemArray, const CUDA_EXTERNAL_SEMAPHORE_SIGNAL_PARAMS* paramsArray, unsigned int numExtSems, CUstream stream) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuSignalExternalSemaphoresAsync
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuSignalExternalSemaphoresAsync(CUexternalSemaphore const *__pyx_v_extSemArray, CUDA_EXTERNAL_SEMAPHORE_SIGNAL_PARAMS const *__pyx_v_paramsArray, unsigned int __pyx_v_numExtSems, CUstream __pyx_v_stream) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuSignalExternalSemaphoresAsync", 1);
  __Pyx_TraceCall("_cuSignalExternalSemaphoresAsync", __pyx_f[0], 4736, 1, __PYX_ERR(0, 4736, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":4738
 * cdef CUresult _cuSignalExternalSemaphoresAsync(const CUexternalSemaphore* extSemArray, const CUDA_EXTERNAL_SEMAPHORE_SIGNAL_PARAMS* paramsArray, unsigned int numExtSems, CUstream stream) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuSignalExternalSemaphoresAsync
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuSignalExternalSemaphoresAsync == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 4738, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":4739
 *     global __cuSignalExternalSemaphoresAsync
 *     cuPythonInit()
 *     if __cuSignalExternalSemaphoresAsync == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuSignalExternalSemaphoresAsync" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuSignalExternalSemaphoresAsync == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":4740
 *     cuPythonInit()
 *     if __cuSignalExternalSemaphoresAsync == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuSignalExternalSemaphoresAsync" not found')
 *     err = (<CUresult (*)(const CUexternalSemaphore*, const CUDA_EXTERNAL_SEMAPHORE_SIGNAL_PARAMS*, unsigned int, CUstream) except ?CUDA_ERROR_NOT_FOUND nogil> __cuSignalExternalSemaphoresAsync)(extSemArray, paramsArray, numExtSems, stream)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":4741
 *     if __cuSignalExternalSemaphoresAsync == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuSignalExternalSemaphoresAsync" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(const CUexternalSemaphore*, const CUDA_EXTERNAL_SEMAPHORE_SIGNAL_PARAMS*, unsigned int, CUstream) except ?CUDA_ERROR_NOT_FOUND nogil> __cuSignalExternalSemaphoresAsync)(extSemArray, paramsArray, numExtSems, stream)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__236, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 4741, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 4741, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":4740
 *     cuPythonInit()
 *     if __cuSignalExternalSemaphoresAsync == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuSignalExternalSemaphoresAsync" not found')
 *     err = (<CUresult (*)(const CUexternalSemaphore*, const CUDA_EXTERNAL_SEMAPHORE_SIGNAL_PARAMS*, unsigned int, CUstream) except ?CUDA_ERROR_NOT_FOUND nogil> __cuSignalExternalSemaphoresAsync)(extSemArray, paramsArray, numExtSems, stream)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":4739
 *     global __cuSignalExternalSemaphoresAsync
 *     cuPythonInit()
 *     if __cuSignalExternalSemaphoresAsync == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuSignalExternalSemaphoresAsync" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":4742
 *         with gil:
 *             raise RuntimeError('Function "cuSignalExternalSemaphoresAsync" not found')
 *     err = (<CUresult (*)(const CUexternalSemaphore*, const CUDA_EXTERNAL_SEMAPHORE_SIGNAL_PARAMS*, unsigned int, CUstream) except ?CUDA_ERROR_NOT_FOUND nogil> __cuSignalExternalSemaphoresAsync)(extSemArray, paramsArray, numExtSems, stream)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUexternalSemaphore const *, CUDA_EXTERNAL_SEMAPHORE_SIGNAL_PARAMS const *, unsigned int, CUstream))__pyx_v_4cuda_5_cuda_5ccuda___cuSignalExternalSemaphoresAsync)(__pyx_v_extSemArray, __pyx_v_paramsArray, __pyx_v_numExtSems, __pyx_v_stream); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 4742, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":4743
 *             raise RuntimeError('Function "cuSignalExternalSemaphoresAsync" not found')
 *     err = (<CUresult (*)(const CUexternalSemaphore*, const CUDA_EXTERNAL_SEMAPHORE_SIGNAL_PARAMS*, unsigned int, CUstream) except ?CUDA_ERROR_NOT_FOUND nogil> __cuSignalExternalSemaphoresAsync)(extSemArray, paramsArray, numExtSems, stream)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuWaitExternalSemaphoresAsync(const CUexternalSemaphore* extSemArray, const CUDA_EXTERNAL_SEMAPHORE_WAIT_PARAMS* paramsArray, unsigned int numExtSems, CUstream stream) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":4736
 *     return err
 * 
 * cdef CUresult _cuSignalExternalSemaphoresAsync(const CUexternalSemaphore* extSemArray, const CUDA_EXTERNAL_SEMAPHORE_SIGNAL_PARAMS* paramsArray, unsigned int numExtSems, CUstream stream) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuSignalExternalSemaphoresAsync
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuSignalExternalSemaphoresAsync", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":4745
 *     return err
 * 
 * cdef CUresult _cuWaitExternalSemaphoresAsync(const CUexternalSemaphore* extSemArray, const CUDA_EXTERNAL_SEMAPHORE_WAIT_PARAMS* paramsArray, unsigned int numExtSems, CUstream stream) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuWaitExternalSemaphoresAsync
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuWaitExternalSemaphoresAsync(CUexternalSemaphore const *__pyx_v_extSemArray, CUDA_EXTERNAL_SEMAPHORE_WAIT_PARAMS const *__pyx_v_paramsArray, unsigned int __pyx_v_numExtSems, CUstream __pyx_v_stream) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuWaitExternalSemaphoresAsync", 1);
  __Pyx_TraceCall("_cuWaitExternalSemaphoresAsync", __pyx_f[0], 4745, 1, __PYX_ERR(0, 4745, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":4747
 * cdef CUresult _cuWaitExternalSemaphoresAsync(const CUexternalSemaphore* extSemArray, const CUDA_EXTERNAL_SEMAPHORE_WAIT_PARAMS* paramsArray, unsigned int numExtSems, CUstream stream) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuWaitExternalSemaphoresAsync
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuWaitExternalSemaphoresAsync == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 4747, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":4748
 *     global __cuWaitExternalSemaphoresAsync
 *     cuPythonInit()
 *     if __cuWaitExternalSemaphoresAsync == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuWaitExternalSemaphoresAsync" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuWaitExternalSemaphoresAsync == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":4749
 *     cuPythonInit()
 *     if __cuWaitExternalSemaphoresAsync == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuWaitExternalSemaphoresAsync" not found')
 *     err = (<CUresult (*)(const CUexternalSemaphore*, const CUDA_EXTERNAL_SEMAPHORE_WAIT_PARAMS*, unsigned int, CUstream) except ?CUDA_ERROR_NOT_FOUND nogil> __cuWaitExternalSemaphoresAsync)(extSemArray, paramsArray, numExtSems, stream)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":4750
 *     if __cuWaitExternalSemaphoresAsync == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuWaitExternalSemaphoresAsync" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(const CUexternalSemaphore*, const CUDA_EXTERNAL_SEMAPHORE_WAIT_PARAMS*, unsigned int, CUstream) except ?CUDA_ERROR_NOT_FOUND nogil> __cuWaitExternalSemaphoresAsync)(extSemArray, paramsArray, numExtSems, stream)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__237, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 4750, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 4750, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":4749
 *     cuPythonInit()
 *     if __cuWaitExternalSemaphoresAsync == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuWaitExternalSemaphoresAsync" not found')
 *     err = (<CUresult (*)(const CUexternalSemaphore*, const CUDA_EXTERNAL_SEMAPHORE_WAIT_PARAMS*, unsigned int, CUstream) except ?CUDA_ERROR_NOT_FOUND nogil> __cuWaitExternalSemaphoresAsync)(extSemArray, paramsArray, numExtSems, stream)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":4748
 *     global __cuWaitExternalSemaphoresAsync
 *     cuPythonInit()
 *     if __cuWaitExternalSemaphoresAsync == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuWaitExternalSemaphoresAsync" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":4751
 *         with gil:
 *             raise RuntimeError('Function "cuWaitExternalSemaphoresAsync" not found')
 *     err = (<CUresult (*)(const CUexternalSemaphore*, const CUDA_EXTERNAL_SEMAPHORE_WAIT_PARAMS*, unsigned int, CUstream) except ?CUDA_ERROR_NOT_FOUND nogil> __cuWaitExternalSemaphoresAsync)(extSemArray, paramsArray, numExtSems, stream)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUexternalSemaphore const *, CUDA_EXTERNAL_SEMAPHORE_WAIT_PARAMS const *, unsigned int, CUstream))__pyx_v_4cuda_5_cuda_5ccuda___cuWaitExternalSemaphoresAsync)(__pyx_v_extSemArray, __pyx_v_paramsArray, __pyx_v_numExtSems, __pyx_v_stream); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 4751, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":4752
 *             raise RuntimeError('Function "cuWaitExternalSemaphoresAsync" not found')
 *     err = (<CUresult (*)(const CUexternalSemaphore*, const CUDA_EXTERNAL_SEMAPHORE_WAIT_PARAMS*, unsigned int, CUstream) except ?CUDA_ERROR_NOT_FOUND nogil> __cuWaitExternalSemaphoresAsync)(extSemArray, paramsArray, numExtSems, stream)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuDestroyExternalSemaphore(CUexternalSemaphore extSem) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":4745
 *     return err
 * 
 * cdef CUresult _cuWaitExternalSemaphoresAsync(const CUexternalSemaphore* extSemArray, const CUDA_EXTERNAL_SEMAPHORE_WAIT_PARAMS* paramsArray, unsigned int numExtSems, CUstream stream) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuWaitExternalSemaphoresAsync
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuWaitExternalSemaphoresAsync", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":4754
 *     return err
 * 
 * cdef CUresult _cuDestroyExternalSemaphore(CUexternalSemaphore extSem) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuDestroyExternalSemaphore
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuDestroyExternalSemaphore(CUexternalSemaphore __pyx_v_extSem) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuDestroyExternalSemaphore", 1);
  __Pyx_TraceCall("_cuDestroyExternalSemaphore", __pyx_f[0], 4754, 1, __PYX_ERR(0, 4754, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":4756
 * cdef CUresult _cuDestroyExternalSemaphore(CUexternalSemaphore extSem) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuDestroyExternalSemaphore
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuDestroyExternalSemaphore == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 4756, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":4757
 *     global __cuDestroyExternalSemaphore
 *     cuPythonInit()
 *     if __cuDestroyExternalSemaphore == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuDestroyExternalSemaphore" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuDestroyExternalSemaphore == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":4758
 *     cuPythonInit()
 *     if __cuDestroyExternalSemaphore == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuDestroyExternalSemaphore" not found')
 *     err = (<CUresult (*)(CUexternalSemaphore) except ?CUDA_ERROR_NOT_FOUND nogil> __cuDestroyExternalSemaphore)(extSem)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":4759
 *     if __cuDestroyExternalSemaphore == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuDestroyExternalSemaphore" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUexternalSemaphore) except ?CUDA_ERROR_NOT_FOUND nogil> __cuDestroyExternalSemaphore)(extSem)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__238, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 4759, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 4759, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":4758
 *     cuPythonInit()
 *     if __cuDestroyExternalSemaphore == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuDestroyExternalSemaphore" not found')
 *     err = (<CUresult (*)(CUexternalSemaphore) except ?CUDA_ERROR_NOT_FOUND nogil> __cuDestroyExternalSemaphore)(extSem)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":4757
 *     global __cuDestroyExternalSemaphore
 *     cuPythonInit()
 *     if __cuDestroyExternalSemaphore == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuDestroyExternalSemaphore" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":4760
 *         with gil:
 *             raise RuntimeError('Function "cuDestroyExternalSemaphore" not found')
 *     err = (<CUresult (*)(CUexternalSemaphore) except ?CUDA_ERROR_NOT_FOUND nogil> __cuDestroyExternalSemaphore)(extSem)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUexternalSemaphore))__pyx_v_4cuda_5_cuda_5ccuda___cuDestroyExternalSemaphore)(__pyx_v_extSem); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 4760, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":4761
 *             raise RuntimeError('Function "cuDestroyExternalSemaphore" not found')
 *     err = (<CUresult (*)(CUexternalSemaphore) except ?CUDA_ERROR_NOT_FOUND nogil> __cuDestroyExternalSemaphore)(extSem)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuStreamWaitValue32_v2(CUstream stream, CUdeviceptr addr, cuuint32_t value, unsigned int flags) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":4754
 *     return err
 * 
 * cdef CUresult _cuDestroyExternalSemaphore(CUexternalSemaphore extSem) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuDestroyExternalSemaphore
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuDestroyExternalSemaphore", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":4763
 *     return err
 * 
 * cdef CUresult _cuStreamWaitValue32_v2(CUstream stream, CUdeviceptr addr, cuuint32_t value, unsigned int flags) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuStreamWaitValue32_v2
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuStreamWaitValue32_v2(CUstream __pyx_v_stream, CUdeviceptr __pyx_v_addr, cuuint32_t __pyx_v_value, unsigned int __pyx_v_flags) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuStreamWaitValue32_v2", 1);
  __Pyx_TraceCall("_cuStreamWaitValue32_v2", __pyx_f[0], 4763, 1, __PYX_ERR(0, 4763, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":4765
 * cdef CUresult _cuStreamWaitValue32_v2(CUstream stream, CUdeviceptr addr, cuuint32_t value, unsigned int flags) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuStreamWaitValue32_v2
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuStreamWaitValue32_v2 == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 4765, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":4766
 *     global __cuStreamWaitValue32_v2
 *     cuPythonInit()
 *     if __cuStreamWaitValue32_v2 == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuStreamWaitValue32_v2" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuStreamWaitValue32_v2 == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":4767
 *     cuPythonInit()
 *     if __cuStreamWaitValue32_v2 == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuStreamWaitValue32_v2" not found')
 *     err = (<CUresult (*)(CUstream, CUdeviceptr, cuuint32_t, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuStreamWaitValue32_v2)(stream, addr, value, flags)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":4768
 *     if __cuStreamWaitValue32_v2 == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuStreamWaitValue32_v2" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUstream, CUdeviceptr, cuuint32_t, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuStreamWaitValue32_v2)(stream, addr, value, flags)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__239, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 4768, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 4768, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":4767
 *     cuPythonInit()
 *     if __cuStreamWaitValue32_v2 == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuStreamWaitValue32_v2" not found')
 *     err = (<CUresult (*)(CUstream, CUdeviceptr, cuuint32_t, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuStreamWaitValue32_v2)(stream, addr, value, flags)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":4766
 *     global __cuStreamWaitValue32_v2
 *     cuPythonInit()
 *     if __cuStreamWaitValue32_v2 == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuStreamWaitValue32_v2" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":4769
 *         with gil:
 *             raise RuntimeError('Function "cuStreamWaitValue32_v2" not found')
 *     err = (<CUresult (*)(CUstream, CUdeviceptr, cuuint32_t, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuStreamWaitValue32_v2)(stream, addr, value, flags)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUstream, CUdeviceptr, cuuint32_t, unsigned int))__pyx_v_4cuda_5_cuda_5ccuda___cuStreamWaitValue32_v2)(__pyx_v_stream, __pyx_v_addr, __pyx_v_value, __pyx_v_flags); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 4769, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":4770
 *             raise RuntimeError('Function "cuStreamWaitValue32_v2" not found')
 *     err = (<CUresult (*)(CUstream, CUdeviceptr, cuuint32_t, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuStreamWaitValue32_v2)(stream, addr, value, flags)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuStreamWaitValue64_v2(CUstream stream, CUdeviceptr addr, cuuint64_t value, unsigned int flags) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":4763
 *     return err
 * 
 * cdef CUresult _cuStreamWaitValue32_v2(CUstream stream, CUdeviceptr addr, cuuint32_t value, unsigned int flags) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuStreamWaitValue32_v2
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuStreamWaitValue32_v2", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":4772
 *     return err
 * 
 * cdef CUresult _cuStreamWaitValue64_v2(CUstream stream, CUdeviceptr addr, cuuint64_t value, unsigned int flags) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuStreamWaitValue64_v2
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuStreamWaitValue64_v2(CUstream __pyx_v_stream, CUdeviceptr __pyx_v_addr, cuuint64_t __pyx_v_value, unsigned int __pyx_v_flags) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuStreamWaitValue64_v2", 1);
  __Pyx_TraceCall("_cuStreamWaitValue64_v2", __pyx_f[0], 4772, 1, __PYX_ERR(0, 4772, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":4774
 * cdef CUresult _cuStreamWaitValue64_v2(CUstream stream, CUdeviceptr addr, cuuint64_t value, unsigned int flags) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuStreamWaitValue64_v2
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuStreamWaitValue64_v2 == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 4774, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":4775
 *     global __cuStreamWaitValue64_v2
 *     cuPythonInit()
 *     if __cuStreamWaitValue64_v2 == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuStreamWaitValue64_v2" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuStreamWaitValue64_v2 == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":4776
 *     cuPythonInit()
 *     if __cuStreamWaitValue64_v2 == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuStreamWaitValue64_v2" not found')
 *     err = (<CUresult (*)(CUstream, CUdeviceptr, cuuint64_t, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuStreamWaitValue64_v2)(stream, addr, value, flags)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":4777
 *     if __cuStreamWaitValue64_v2 == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuStreamWaitValue64_v2" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUstream, CUdeviceptr, cuuint64_t, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuStreamWaitValue64_v2)(stream, addr, value, flags)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__240, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 4777, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 4777, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":4776
 *     cuPythonInit()
 *     if __cuStreamWaitValue64_v2 == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuStreamWaitValue64_v2" not found')
 *     err = (<CUresult (*)(CUstream, CUdeviceptr, cuuint64_t, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuStreamWaitValue64_v2)(stream, addr, value, flags)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":4775
 *     global __cuStreamWaitValue64_v2
 *     cuPythonInit()
 *     if __cuStreamWaitValue64_v2 == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuStreamWaitValue64_v2" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":4778
 *         with gil:
 *             raise RuntimeError('Function "cuStreamWaitValue64_v2" not found')
 *     err = (<CUresult (*)(CUstream, CUdeviceptr, cuuint64_t, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuStreamWaitValue64_v2)(stream, addr, value, flags)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUstream, CUdeviceptr, cuuint64_t, unsigned int))__pyx_v_4cuda_5_cuda_5ccuda___cuStreamWaitValue64_v2)(__pyx_v_stream, __pyx_v_addr, __pyx_v_value, __pyx_v_flags); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 4778, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":4779
 *             raise RuntimeError('Function "cuStreamWaitValue64_v2" not found')
 *     err = (<CUresult (*)(CUstream, CUdeviceptr, cuuint64_t, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuStreamWaitValue64_v2)(stream, addr, value, flags)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuStreamWriteValue32_v2(CUstream stream, CUdeviceptr addr, cuuint32_t value, unsigned int flags) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":4772
 *     return err
 * 
 * cdef CUresult _cuStreamWaitValue64_v2(CUstream stream, CUdeviceptr addr, cuuint64_t value, unsigned int flags) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuStreamWaitValue64_v2
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuStreamWaitValue64_v2", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":4781
 *     return err
 * 
 * cdef CUresult _cuStreamWriteValue32_v2(CUstream stream, CUdeviceptr addr, cuuint32_t value, unsigned int flags) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuStreamWriteValue32_v2
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuStreamWriteValue32_v2(CUstream __pyx_v_stream, CUdeviceptr __pyx_v_addr, cuuint32_t __pyx_v_value, unsigned int __pyx_v_flags) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuStreamWriteValue32_v2", 1);
  __Pyx_TraceCall("_cuStreamWriteValue32_v2", __pyx_f[0], 4781, 1, __PYX_ERR(0, 4781, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":4783
 * cdef CUresult _cuStreamWriteValue32_v2(CUstream stream, CUdeviceptr addr, cuuint32_t value, unsigned int flags) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuStreamWriteValue32_v2
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuStreamWriteValue32_v2 == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 4783, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":4784
 *     global __cuStreamWriteValue32_v2
 *     cuPythonInit()
 *     if __cuStreamWriteValue32_v2 == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuStreamWriteValue32_v2" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuStreamWriteValue32_v2 == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":4785
 *     cuPythonInit()
 *     if __cuStreamWriteValue32_v2 == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuStreamWriteValue32_v2" not found')
 *     err = (<CUresult (*)(CUstream, CUdeviceptr, cuuint32_t, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuStreamWriteValue32_v2)(stream, addr, value, flags)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":4786
 *     if __cuStreamWriteValue32_v2 == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuStreamWriteValue32_v2" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUstream, CUdeviceptr, cuuint32_t, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuStreamWriteValue32_v2)(stream, addr, value, flags)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__241, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 4786, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 4786, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":4785
 *     cuPythonInit()
 *     if __cuStreamWriteValue32_v2 == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuStreamWriteValue32_v2" not found')
 *     err = (<CUresult (*)(CUstream, CUdeviceptr, cuuint32_t, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuStreamWriteValue32_v2)(stream, addr, value, flags)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":4784
 *     global __cuStreamWriteValue32_v2
 *     cuPythonInit()
 *     if __cuStreamWriteValue32_v2 == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuStreamWriteValue32_v2" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":4787
 *         with gil:
 *             raise RuntimeError('Function "cuStreamWriteValue32_v2" not found')
 *     err = (<CUresult (*)(CUstream, CUdeviceptr, cuuint32_t, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuStreamWriteValue32_v2)(stream, addr, value, flags)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUstream, CUdeviceptr, cuuint32_t, unsigned int))__pyx_v_4cuda_5_cuda_5ccuda___cuStreamWriteValue32_v2)(__pyx_v_stream, __pyx_v_addr, __pyx_v_value, __pyx_v_flags); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 4787, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":4788
 *             raise RuntimeError('Function "cuStreamWriteValue32_v2" not found')
 *     err = (<CUresult (*)(CUstream, CUdeviceptr, cuuint32_t, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuStreamWriteValue32_v2)(stream, addr, value, flags)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuStreamWriteValue64_v2(CUstream stream, CUdeviceptr addr, cuuint64_t value, unsigned int flags) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":4781
 *     return err
 * 
 * cdef CUresult _cuStreamWriteValue32_v2(CUstream stream, CUdeviceptr addr, cuuint32_t value, unsigned int flags) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuStreamWriteValue32_v2
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuStreamWriteValue32_v2", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":4790
 *     return err
 * 
 * cdef CUresult _cuStreamWriteValue64_v2(CUstream stream, CUdeviceptr addr, cuuint64_t value, unsigned int flags) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuStreamWriteValue64_v2
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuStreamWriteValue64_v2(CUstream __pyx_v_stream, CUdeviceptr __pyx_v_addr, cuuint64_t __pyx_v_value, unsigned int __pyx_v_flags) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuStreamWriteValue64_v2", 1);
  __Pyx_TraceCall("_cuStreamWriteValue64_v2", __pyx_f[0], 4790, 1, __PYX_ERR(0, 4790, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":4792
 * cdef CUresult _cuStreamWriteValue64_v2(CUstream stream, CUdeviceptr addr, cuuint64_t value, unsigned int flags) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuStreamWriteValue64_v2
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuStreamWriteValue64_v2 == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 4792, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":4793
 *     global __cuStreamWriteValue64_v2
 *     cuPythonInit()
 *     if __cuStreamWriteValue64_v2 == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuStreamWriteValue64_v2" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuStreamWriteValue64_v2 == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":4794
 *     cuPythonInit()
 *     if __cuStreamWriteValue64_v2 == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuStreamWriteValue64_v2" not found')
 *     err = (<CUresult (*)(CUstream, CUdeviceptr, cuuint64_t, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuStreamWriteValue64_v2)(stream, addr, value, flags)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":4795
 *     if __cuStreamWriteValue64_v2 == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuStreamWriteValue64_v2" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUstream, CUdeviceptr, cuuint64_t, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuStreamWriteValue64_v2)(stream, addr, value, flags)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__242, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 4795, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 4795, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":4794
 *     cuPythonInit()
 *     if __cuStreamWriteValue64_v2 == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuStreamWriteValue64_v2" not found')
 *     err = (<CUresult (*)(CUstream, CUdeviceptr, cuuint64_t, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuStreamWriteValue64_v2)(stream, addr, value, flags)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":4793
 *     global __cuStreamWriteValue64_v2
 *     cuPythonInit()
 *     if __cuStreamWriteValue64_v2 == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuStreamWriteValue64_v2" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":4796
 *         with gil:
 *             raise RuntimeError('Function "cuStreamWriteValue64_v2" not found')
 *     err = (<CUresult (*)(CUstream, CUdeviceptr, cuuint64_t, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuStreamWriteValue64_v2)(stream, addr, value, flags)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUstream, CUdeviceptr, cuuint64_t, unsigned int))__pyx_v_4cuda_5_cuda_5ccuda___cuStreamWriteValue64_v2)(__pyx_v_stream, __pyx_v_addr, __pyx_v_value, __pyx_v_flags); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 4796, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":4797
 *             raise RuntimeError('Function "cuStreamWriteValue64_v2" not found')
 *     err = (<CUresult (*)(CUstream, CUdeviceptr, cuuint64_t, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuStreamWriteValue64_v2)(stream, addr, value, flags)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuStreamBatchMemOp_v2(CUstream stream, unsigned int count, CUstreamBatchMemOpParams* paramArray, unsigned int flags) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":4790
 *     return err
 * 
 * cdef CUresult _cuStreamWriteValue64_v2(CUstream stream, CUdeviceptr addr, cuuint64_t value, unsigned int flags) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuStreamWriteValue64_v2
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuStreamWriteValue64_v2", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":4799
 *     return err
 * 
 * cdef CUresult _cuStreamBatchMemOp_v2(CUstream stream, unsigned int count, CUstreamBatchMemOpParams* paramArray, unsigned int flags) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuStreamBatchMemOp_v2
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuStreamBatchMemOp_v2(CUstream __pyx_v_stream, unsigned int __pyx_v_count, CUstreamBatchMemOpParams *__pyx_v_paramArray, unsigned int __pyx_v_flags) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuStreamBatchMemOp_v2", 1);
  __Pyx_TraceCall("_cuStreamBatchMemOp_v2", __pyx_f[0], 4799, 1, __PYX_ERR(0, 4799, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":4801
 * cdef CUresult _cuStreamBatchMemOp_v2(CUstream stream, unsigned int count, CUstreamBatchMemOpParams* paramArray, unsigned int flags) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuStreamBatchMemOp_v2
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuStreamBatchMemOp_v2 == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 4801, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":4802
 *     global __cuStreamBatchMemOp_v2
 *     cuPythonInit()
 *     if __cuStreamBatchMemOp_v2 == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuStreamBatchMemOp_v2" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuStreamBatchMemOp_v2 == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":4803
 *     cuPythonInit()
 *     if __cuStreamBatchMemOp_v2 == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuStreamBatchMemOp_v2" not found')
 *     err = (<CUresult (*)(CUstream, unsigned int, CUstreamBatchMemOpParams*, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuStreamBatchMemOp_v2)(stream, count, paramArray, flags)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":4804
 *     if __cuStreamBatchMemOp_v2 == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuStreamBatchMemOp_v2" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUstream, unsigned int, CUstreamBatchMemOpParams*, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuStreamBatchMemOp_v2)(stream, count, paramArray, flags)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__243, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 4804, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 4804, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":4803
 *     cuPythonInit()
 *     if __cuStreamBatchMemOp_v2 == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuStreamBatchMemOp_v2" not found')
 *     err = (<CUresult (*)(CUstream, unsigned int, CUstreamBatchMemOpParams*, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuStreamBatchMemOp_v2)(stream, count, paramArray, flags)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":4802
 *     global __cuStreamBatchMemOp_v2
 *     cuPythonInit()
 *     if __cuStreamBatchMemOp_v2 == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuStreamBatchMemOp_v2" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":4805
 *         with gil:
 *             raise RuntimeError('Function "cuStreamBatchMemOp_v2" not found')
 *     err = (<CUresult (*)(CUstream, unsigned int, CUstreamBatchMemOpParams*, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuStreamBatchMemOp_v2)(stream, count, paramArray, flags)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUstream, unsigned int, CUstreamBatchMemOpParams *, unsigned int))__pyx_v_4cuda_5_cuda_5ccuda___cuStreamBatchMemOp_v2)(__pyx_v_stream, __pyx_v_count, __pyx_v_paramArray, __pyx_v_flags); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 4805, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":4806
 *             raise RuntimeError('Function "cuStreamBatchMemOp_v2" not found')
 *     err = (<CUresult (*)(CUstream, unsigned int, CUstreamBatchMemOpParams*, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuStreamBatchMemOp_v2)(stream, count, paramArray, flags)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuFuncGetAttribute(int* pi, CUfunction_attribute attrib, CUfunction hfunc) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":4799
 *     return err
 * 
 * cdef CUresult _cuStreamBatchMemOp_v2(CUstream stream, unsigned int count, CUstreamBatchMemOpParams* paramArray, unsigned int flags) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuStreamBatchMemOp_v2
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuStreamBatchMemOp_v2", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":4808
 *     return err
 * 
 * cdef CUresult _cuFuncGetAttribute(int* pi, CUfunction_attribute attrib, CUfunction hfunc) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuFuncGetAttribute
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuFuncGetAttribute(int *__pyx_v_pi, CUfunction_attribute __pyx_v_attrib, CUfunction __pyx_v_hfunc) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuFuncGetAttribute", 1);
  __Pyx_TraceCall("_cuFuncGetAttribute", __pyx_f[0], 4808, 1, __PYX_ERR(0, 4808, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":4810
 * cdef CUresult _cuFuncGetAttribute(int* pi, CUfunction_attribute attrib, CUfunction hfunc) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuFuncGetAttribute
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuFuncGetAttribute == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 4810, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":4811
 *     global __cuFuncGetAttribute
 *     cuPythonInit()
 *     if __cuFuncGetAttribute == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuFuncGetAttribute" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuFuncGetAttribute == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":4812
 *     cuPythonInit()
 *     if __cuFuncGetAttribute == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuFuncGetAttribute" not found')
 *     err = (<CUresult (*)(int*, CUfunction_attribute, CUfunction) except ?CUDA_ERROR_NOT_FOUND nogil> __cuFuncGetAttribute)(pi, attrib, hfunc)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":4813
 *     if __cuFuncGetAttribute == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuFuncGetAttribute" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(int*, CUfunction_attribute, CUfunction) except ?CUDA_ERROR_NOT_FOUND nogil> __cuFuncGetAttribute)(pi, attrib, hfunc)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__244, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 4813, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 4813, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":4812
 *     cuPythonInit()
 *     if __cuFuncGetAttribute == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuFuncGetAttribute" not found')
 *     err = (<CUresult (*)(int*, CUfunction_attribute, CUfunction) except ?CUDA_ERROR_NOT_FOUND nogil> __cuFuncGetAttribute)(pi, attrib, hfunc)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":4811
 *     global __cuFuncGetAttribute
 *     cuPythonInit()
 *     if __cuFuncGetAttribute == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuFuncGetAttribute" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":4814
 *         with gil:
 *             raise RuntimeError('Function "cuFuncGetAttribute" not found')
 *     err = (<CUresult (*)(int*, CUfunction_attribute, CUfunction) except ?CUDA_ERROR_NOT_FOUND nogil> __cuFuncGetAttribute)(pi, attrib, hfunc)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(int *, CUfunction_attribute, CUfunction))__pyx_v_4cuda_5_cuda_5ccuda___cuFuncGetAttribute)(__pyx_v_pi, __pyx_v_attrib, __pyx_v_hfunc); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 4814, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":4815
 *             raise RuntimeError('Function "cuFuncGetAttribute" not found')
 *     err = (<CUresult (*)(int*, CUfunction_attribute, CUfunction) except ?CUDA_ERROR_NOT_FOUND nogil> __cuFuncGetAttribute)(pi, attrib, hfunc)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuFuncSetAttribute(CUfunction hfunc, CUfunction_attribute attrib, int value) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":4808
 *     return err
 * 
 * cdef CUresult _cuFuncGetAttribute(int* pi, CUfunction_attribute attrib, CUfunction hfunc) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuFuncGetAttribute
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuFuncGetAttribute", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":4817
 *     return err
 * 
 * cdef CUresult _cuFuncSetAttribute(CUfunction hfunc, CUfunction_attribute attrib, int value) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuFuncSetAttribute
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuFuncSetAttribute(CUfunction __pyx_v_hfunc, CUfunction_attribute __pyx_v_attrib, int __pyx_v_value) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuFuncSetAttribute", 1);
  __Pyx_TraceCall("_cuFuncSetAttribute", __pyx_f[0], 4817, 1, __PYX_ERR(0, 4817, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":4819
 * cdef CUresult _cuFuncSetAttribute(CUfunction hfunc, CUfunction_attribute attrib, int value) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuFuncSetAttribute
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuFuncSetAttribute == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 4819, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":4820
 *     global __cuFuncSetAttribute
 *     cuPythonInit()
 *     if __cuFuncSetAttribute == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuFuncSetAttribute" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuFuncSetAttribute == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":4821
 *     cuPythonInit()
 *     if __cuFuncSetAttribute == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuFuncSetAttribute" not found')
 *     err = (<CUresult (*)(CUfunction, CUfunction_attribute, int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuFuncSetAttribute)(hfunc, attrib, value)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":4822
 *     if __cuFuncSetAttribute == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuFuncSetAttribute" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUfunction, CUfunction_attribute, int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuFuncSetAttribute)(hfunc, attrib, value)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__245, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 4822, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 4822, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":4821
 *     cuPythonInit()
 *     if __cuFuncSetAttribute == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuFuncSetAttribute" not found')
 *     err = (<CUresult (*)(CUfunction, CUfunction_attribute, int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuFuncSetAttribute)(hfunc, attrib, value)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":4820
 *     global __cuFuncSetAttribute
 *     cuPythonInit()
 *     if __cuFuncSetAttribute == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuFuncSetAttribute" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":4823
 *         with gil:
 *             raise RuntimeError('Function "cuFuncSetAttribute" not found')
 *     err = (<CUresult (*)(CUfunction, CUfunction_attribute, int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuFuncSetAttribute)(hfunc, attrib, value)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUfunction, CUfunction_attribute, int))__pyx_v_4cuda_5_cuda_5ccuda___cuFuncSetAttribute)(__pyx_v_hfunc, __pyx_v_attrib, __pyx_v_value); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 4823, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":4824
 *             raise RuntimeError('Function "cuFuncSetAttribute" not found')
 *     err = (<CUresult (*)(CUfunction, CUfunction_attribute, int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuFuncSetAttribute)(hfunc, attrib, value)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuFuncSetCacheConfig(CUfunction hfunc, CUfunc_cache config) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":4817
 *     return err
 * 
 * cdef CUresult _cuFuncSetAttribute(CUfunction hfunc, CUfunction_attribute attrib, int value) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuFuncSetAttribute
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuFuncSetAttribute", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":4826
 *     return err
 * 
 * cdef CUresult _cuFuncSetCacheConfig(CUfunction hfunc, CUfunc_cache config) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuFuncSetCacheConfig
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuFuncSetCacheConfig(CUfunction __pyx_v_hfunc, CUfunc_cache __pyx_v_config) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuFuncSetCacheConfig", 1);
  __Pyx_TraceCall("_cuFuncSetCacheConfig", __pyx_f[0], 4826, 1, __PYX_ERR(0, 4826, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":4828
 * cdef CUresult _cuFuncSetCacheConfig(CUfunction hfunc, CUfunc_cache config) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuFuncSetCacheConfig
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuFuncSetCacheConfig == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 4828, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":4829
 *     global __cuFuncSetCacheConfig
 *     cuPythonInit()
 *     if __cuFuncSetCacheConfig == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuFuncSetCacheConfig" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuFuncSetCacheConfig == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":4830
 *     cuPythonInit()
 *     if __cuFuncSetCacheConfig == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuFuncSetCacheConfig" not found')
 *     err = (<CUresult (*)(CUfunction, CUfunc_cache) except ?CUDA_ERROR_NOT_FOUND nogil> __cuFuncSetCacheConfig)(hfunc, config)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":4831
 *     if __cuFuncSetCacheConfig == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuFuncSetCacheConfig" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUfunction, CUfunc_cache) except ?CUDA_ERROR_NOT_FOUND nogil> __cuFuncSetCacheConfig)(hfunc, config)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__246, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 4831, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 4831, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":4830
 *     cuPythonInit()
 *     if __cuFuncSetCacheConfig == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuFuncSetCacheConfig" not found')
 *     err = (<CUresult (*)(CUfunction, CUfunc_cache) except ?CUDA_ERROR_NOT_FOUND nogil> __cuFuncSetCacheConfig)(hfunc, config)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":4829
 *     global __cuFuncSetCacheConfig
 *     cuPythonInit()
 *     if __cuFuncSetCacheConfig == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuFuncSetCacheConfig" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":4832
 *         with gil:
 *             raise RuntimeError('Function "cuFuncSetCacheConfig" not found')
 *     err = (<CUresult (*)(CUfunction, CUfunc_cache) except ?CUDA_ERROR_NOT_FOUND nogil> __cuFuncSetCacheConfig)(hfunc, config)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUfunction, CUfunc_cache))__pyx_v_4cuda_5_cuda_5ccuda___cuFuncSetCacheConfig)(__pyx_v_hfunc, __pyx_v_config); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 4832, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":4833
 *             raise RuntimeError('Function "cuFuncSetCacheConfig" not found')
 *     err = (<CUresult (*)(CUfunction, CUfunc_cache) except ?CUDA_ERROR_NOT_FOUND nogil> __cuFuncSetCacheConfig)(hfunc, config)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuFuncGetModule(CUmodule* hmod, CUfunction hfunc) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":4826
 *     return err
 * 
 * cdef CUresult _cuFuncSetCacheConfig(CUfunction hfunc, CUfunc_cache config) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuFuncSetCacheConfig
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuFuncSetCacheConfig", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":4835
 *     return err
 * 
 * cdef CUresult _cuFuncGetModule(CUmodule* hmod, CUfunction hfunc) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuFuncGetModule
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuFuncGetModule(CUmodule *__pyx_v_hmod, CUfunction __pyx_v_hfunc) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuFuncGetModule", 1);
  __Pyx_TraceCall("_cuFuncGetModule", __pyx_f[0], 4835, 1, __PYX_ERR(0, 4835, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":4837
 * cdef CUresult _cuFuncGetModule(CUmodule* hmod, CUfunction hfunc) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuFuncGetModule
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuFuncGetModule == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 4837, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":4838
 *     global __cuFuncGetModule
 *     cuPythonInit()
 *     if __cuFuncGetModule == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuFuncGetModule" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuFuncGetModule == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":4839
 *     cuPythonInit()
 *     if __cuFuncGetModule == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuFuncGetModule" not found')
 *     err = (<CUresult (*)(CUmodule*, CUfunction) except ?CUDA_ERROR_NOT_FOUND nogil> __cuFuncGetModule)(hmod, hfunc)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":4840
 *     if __cuFuncGetModule == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuFuncGetModule" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUmodule*, CUfunction) except ?CUDA_ERROR_NOT_FOUND nogil> __cuFuncGetModule)(hmod, hfunc)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__247, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 4840, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 4840, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":4839
 *     cuPythonInit()
 *     if __cuFuncGetModule == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuFuncGetModule" not found')
 *     err = (<CUresult (*)(CUmodule*, CUfunction) except ?CUDA_ERROR_NOT_FOUND nogil> __cuFuncGetModule)(hmod, hfunc)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":4838
 *     global __cuFuncGetModule
 *     cuPythonInit()
 *     if __cuFuncGetModule == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuFuncGetModule" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":4841
 *         with gil:
 *             raise RuntimeError('Function "cuFuncGetModule" not found')
 *     err = (<CUresult (*)(CUmodule*, CUfunction) except ?CUDA_ERROR_NOT_FOUND nogil> __cuFuncGetModule)(hmod, hfunc)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUmodule *, CUfunction))__pyx_v_4cuda_5_cuda_5ccuda___cuFuncGetModule)(__pyx_v_hmod, __pyx_v_hfunc); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 4841, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":4842
 *             raise RuntimeError('Function "cuFuncGetModule" not found')
 *     err = (<CUresult (*)(CUmodule*, CUfunction) except ?CUDA_ERROR_NOT_FOUND nogil> __cuFuncGetModule)(hmod, hfunc)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuFuncGetName(const char** name, CUfunction hfunc) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":4835
 *     return err
 * 
 * cdef CUresult _cuFuncGetModule(CUmodule* hmod, CUfunction hfunc) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuFuncGetModule
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuFuncGetModule", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":4844
 *     return err
 * 
 * cdef CUresult _cuFuncGetName(const char** name, CUfunction hfunc) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuFuncGetName
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuFuncGetName(char const **__pyx_v_name, CUfunction __pyx_v_hfunc) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuFuncGetName", 1);
  __Pyx_TraceCall("_cuFuncGetName", __pyx_f[0], 4844, 1, __PYX_ERR(0, 4844, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":4846
 * cdef CUresult _cuFuncGetName(const char** name, CUfunction hfunc) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuFuncGetName
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuFuncGetName == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 4846, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":4847
 *     global __cuFuncGetName
 *     cuPythonInit()
 *     if __cuFuncGetName == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuFuncGetName" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuFuncGetName == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":4848
 *     cuPythonInit()
 *     if __cuFuncGetName == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuFuncGetName" not found')
 *     err = (<CUresult (*)(const char**, CUfunction) except ?CUDA_ERROR_NOT_FOUND nogil> __cuFuncGetName)(name, hfunc)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":4849
 *     if __cuFuncGetName == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuFuncGetName" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(const char**, CUfunction) except ?CUDA_ERROR_NOT_FOUND nogil> __cuFuncGetName)(name, hfunc)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__248, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 4849, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 4849, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":4848
 *     cuPythonInit()
 *     if __cuFuncGetName == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuFuncGetName" not found')
 *     err = (<CUresult (*)(const char**, CUfunction) except ?CUDA_ERROR_NOT_FOUND nogil> __cuFuncGetName)(name, hfunc)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":4847
 *     global __cuFuncGetName
 *     cuPythonInit()
 *     if __cuFuncGetName == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuFuncGetName" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":4850
 *         with gil:
 *             raise RuntimeError('Function "cuFuncGetName" not found')
 *     err = (<CUresult (*)(const char**, CUfunction) except ?CUDA_ERROR_NOT_FOUND nogil> __cuFuncGetName)(name, hfunc)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(char const **, CUfunction))__pyx_v_4cuda_5_cuda_5ccuda___cuFuncGetName)(__pyx_v_name, __pyx_v_hfunc); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 4850, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":4851
 *             raise RuntimeError('Function "cuFuncGetName" not found')
 *     err = (<CUresult (*)(const char**, CUfunction) except ?CUDA_ERROR_NOT_FOUND nogil> __cuFuncGetName)(name, hfunc)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuFuncGetParamInfo(CUfunction func, size_t paramIndex, size_t* paramOffset, size_t* paramSize) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":4844
 *     return err
 * 
 * cdef CUresult _cuFuncGetName(const char** name, CUfunction hfunc) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuFuncGetName
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuFuncGetName", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":4853
 *     return err
 * 
 * cdef CUresult _cuFuncGetParamInfo(CUfunction func, size_t paramIndex, size_t* paramOffset, size_t* paramSize) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuFuncGetParamInfo
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuFuncGetParamInfo(CUfunction __pyx_v_func, size_t __pyx_v_paramIndex, size_t *__pyx_v_paramOffset, size_t *__pyx_v_paramSize) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuFuncGetParamInfo", 1);
  __Pyx_TraceCall("_cuFuncGetParamInfo", __pyx_f[0], 4853, 1, __PYX_ERR(0, 4853, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":4855
 * cdef CUresult _cuFuncGetParamInfo(CUfunction func, size_t paramIndex, size_t* paramOffset, size_t* paramSize) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuFuncGetParamInfo
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuFuncGetParamInfo == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 4855, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":4856
 *     global __cuFuncGetParamInfo
 *     cuPythonInit()
 *     if __cuFuncGetParamInfo == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuFuncGetParamInfo" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuFuncGetParamInfo == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":4857
 *     cuPythonInit()
 *     if __cuFuncGetParamInfo == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuFuncGetParamInfo" not found')
 *     err = (<CUresult (*)(CUfunction, size_t, size_t*, size_t*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuFuncGetParamInfo)(func, paramIndex, paramOffset, paramSize)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":4858
 *     if __cuFuncGetParamInfo == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuFuncGetParamInfo" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUfunction, size_t, size_t*, size_t*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuFuncGetParamInfo)(func, paramIndex, paramOffset, paramSize)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__249, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 4858, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 4858, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":4857
 *     cuPythonInit()
 *     if __cuFuncGetParamInfo == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuFuncGetParamInfo" not found')
 *     err = (<CUresult (*)(CUfunction, size_t, size_t*, size_t*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuFuncGetParamInfo)(func, paramIndex, paramOffset, paramSize)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":4856
 *     global __cuFuncGetParamInfo
 *     cuPythonInit()
 *     if __cuFuncGetParamInfo == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuFuncGetParamInfo" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":4859
 *         with gil:
 *             raise RuntimeError('Function "cuFuncGetParamInfo" not found')
 *     err = (<CUresult (*)(CUfunction, size_t, size_t*, size_t*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuFuncGetParamInfo)(func, paramIndex, paramOffset, paramSize)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUfunction, size_t, size_t *, size_t *))__pyx_v_4cuda_5_cuda_5ccuda___cuFuncGetParamInfo)(__pyx_v_func, __pyx_v_paramIndex, __pyx_v_paramOffset, __pyx_v_paramSize); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 4859, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":4860
 *             raise RuntimeError('Function "cuFuncGetParamInfo" not found')
 *     err = (<CUresult (*)(CUfunction, size_t, size_t*, size_t*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuFuncGetParamInfo)(func, paramIndex, paramOffset, paramSize)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuFuncIsLoaded(CUfunctionLoadingState* state, CUfunction function) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":4853
 *     return err
 * 
 * cdef CUresult _cuFuncGetParamInfo(CUfunction func, size_t paramIndex, size_t* paramOffset, size_t* paramSize) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuFuncGetParamInfo
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuFuncGetParamInfo", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":4862
 *     return err
 * 
 * cdef CUresult _cuFuncIsLoaded(CUfunctionLoadingState* state, CUfunction function) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuFuncIsLoaded
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuFuncIsLoaded(CUfunctionLoadingState *__pyx_v_state, CUfunction __pyx_v_function) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuFuncIsLoaded", 1);
  __Pyx_TraceCall("_cuFuncIsLoaded", __pyx_f[0], 4862, 1, __PYX_ERR(0, 4862, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":4864
 * cdef CUresult _cuFuncIsLoaded(CUfunctionLoadingState* state, CUfunction function) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuFuncIsLoaded
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuFuncIsLoaded == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 4864, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":4865
 *     global __cuFuncIsLoaded
 *     cuPythonInit()
 *     if __cuFuncIsLoaded == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuFuncIsLoaded" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuFuncIsLoaded == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":4866
 *     cuPythonInit()
 *     if __cuFuncIsLoaded == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuFuncIsLoaded" not found')
 *     err = (<CUresult (*)(CUfunctionLoadingState*, CUfunction) except ?CUDA_ERROR_NOT_FOUND nogil> __cuFuncIsLoaded)(state, function)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":4867
 *     if __cuFuncIsLoaded == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuFuncIsLoaded" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUfunctionLoadingState*, CUfunction) except ?CUDA_ERROR_NOT_FOUND nogil> __cuFuncIsLoaded)(state, function)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__250, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 4867, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 4867, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":4866
 *     cuPythonInit()
 *     if __cuFuncIsLoaded == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuFuncIsLoaded" not found')
 *     err = (<CUresult (*)(CUfunctionLoadingState*, CUfunction) except ?CUDA_ERROR_NOT_FOUND nogil> __cuFuncIsLoaded)(state, function)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":4865
 *     global __cuFuncIsLoaded
 *     cuPythonInit()
 *     if __cuFuncIsLoaded == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuFuncIsLoaded" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":4868
 *         with gil:
 *             raise RuntimeError('Function "cuFuncIsLoaded" not found')
 *     err = (<CUresult (*)(CUfunctionLoadingState*, CUfunction) except ?CUDA_ERROR_NOT_FOUND nogil> __cuFuncIsLoaded)(state, function)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUfunctionLoadingState *, CUfunction))__pyx_v_4cuda_5_cuda_5ccuda___cuFuncIsLoaded)(__pyx_v_state, __pyx_v_function); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 4868, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":4869
 *             raise RuntimeError('Function "cuFuncIsLoaded" not found')
 *     err = (<CUresult (*)(CUfunctionLoadingState*, CUfunction) except ?CUDA_ERROR_NOT_FOUND nogil> __cuFuncIsLoaded)(state, function)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuFuncLoad(CUfunction function) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":4862
 *     return err
 * 
 * cdef CUresult _cuFuncIsLoaded(CUfunctionLoadingState* state, CUfunction function) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuFuncIsLoaded
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuFuncIsLoaded", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":4871
 *     return err
 * 
 * cdef CUresult _cuFuncLoad(CUfunction function) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuFuncLoad
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuFuncLoad(CUfunction __pyx_v_function) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuFuncLoad", 1);
  __Pyx_TraceCall("_cuFuncLoad", __pyx_f[0], 4871, 1, __PYX_ERR(0, 4871, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":4873
 * cdef CUresult _cuFuncLoad(CUfunction function) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuFuncLoad
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuFuncLoad == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 4873, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":4874
 *     global __cuFuncLoad
 *     cuPythonInit()
 *     if __cuFuncLoad == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuFuncLoad" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuFuncLoad == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":4875
 *     cuPythonInit()
 *     if __cuFuncLoad == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuFuncLoad" not found')
 *     err = (<CUresult (*)(CUfunction) except ?CUDA_ERROR_NOT_FOUND nogil> __cuFuncLoad)(function)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":4876
 *     if __cuFuncLoad == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuFuncLoad" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUfunction) except ?CUDA_ERROR_NOT_FOUND nogil> __cuFuncLoad)(function)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__251, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 4876, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 4876, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":4875
 *     cuPythonInit()
 *     if __cuFuncLoad == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuFuncLoad" not found')
 *     err = (<CUresult (*)(CUfunction) except ?CUDA_ERROR_NOT_FOUND nogil> __cuFuncLoad)(function)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":4874
 *     global __cuFuncLoad
 *     cuPythonInit()
 *     if __cuFuncLoad == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuFuncLoad" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":4877
 *         with gil:
 *             raise RuntimeError('Function "cuFuncLoad" not found')
 *     err = (<CUresult (*)(CUfunction) except ?CUDA_ERROR_NOT_FOUND nogil> __cuFuncLoad)(function)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUfunction))__pyx_v_4cuda_5_cuda_5ccuda___cuFuncLoad)(__pyx_v_function); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 4877, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":4878
 *             raise RuntimeError('Function "cuFuncLoad" not found')
 *     err = (<CUresult (*)(CUfunction) except ?CUDA_ERROR_NOT_FOUND nogil> __cuFuncLoad)(function)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuLaunchKernel(CUfunction f, unsigned int gridDimX, unsigned int gridDimY, unsigned int gridDimZ, unsigned int blockDimX, unsigned int blockDimY, unsigned int blockDimZ, unsigned int sharedMemBytes, CUstream hStream, void** kernelParams, void** extra) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":4871
 *     return err
 * 
 * cdef CUresult _cuFuncLoad(CUfunction function) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuFuncLoad
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuFuncLoad", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":4880
 *     return err
 * 
 * cdef CUresult _cuLaunchKernel(CUfunction f, unsigned int gridDimX, unsigned int gridDimY, unsigned int gridDimZ, unsigned int blockDimX, unsigned int blockDimY, unsigned int blockDimZ, unsigned int sharedMemBytes, CUstream hStream, void** kernelParams, void** extra) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuLaunchKernel
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuLaunchKernel(CUfunction __pyx_v_f, unsigned int __pyx_v_gridDimX, unsigned int __pyx_v_gridDimY, unsigned int __pyx_v_gridDimZ, unsigned int __pyx_v_blockDimX, unsigned int __pyx_v_blockDimY, unsigned int __pyx_v_blockDimZ, unsigned int __pyx_v_sharedMemBytes, CUstream __pyx_v_hStream, void **__pyx_v_kernelParams, void **__pyx_v_extra) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuLaunchKernel", 1);
  __Pyx_TraceCall("_cuLaunchKernel", __pyx_f[0], 4880, 1, __PYX_ERR(0, 4880, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":4882
 * cdef CUresult _cuLaunchKernel(CUfunction f, unsigned int gridDimX, unsigned int gridDimY, unsigned int gridDimZ, unsigned int blockDimX, unsigned int blockDimY, unsigned int blockDimZ, unsigned int sharedMemBytes, CUstream hStream, void** kernelParams, void** extra) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuLaunchKernel
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuLaunchKernel == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 4882, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":4883
 *     global __cuLaunchKernel
 *     cuPythonInit()
 *     if __cuLaunchKernel == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuLaunchKernel" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuLaunchKernel == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":4884
 *     cuPythonInit()
 *     if __cuLaunchKernel == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuLaunchKernel" not found')
 *     err = (<CUresult (*)(CUfunction, unsigned int, unsigned int, unsigned int, unsigned int, unsigned int, unsigned int, unsigned int, CUstream, void**, void**) except ?CUDA_ERROR_NOT_FOUND nogil> __cuLaunchKernel)(f, gridDimX, gridDimY, gridDimZ, blockDimX, blockDimY, blockDimZ, sharedMemBytes, hStream, kernelParams, extra)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":4885
 *     if __cuLaunchKernel == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuLaunchKernel" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUfunction, unsigned int, unsigned int, unsigned int, unsigned int, unsigned int, unsigned int, unsigned int, CUstream, void**, void**) except ?CUDA_ERROR_NOT_FOUND nogil> __cuLaunchKernel)(f, gridDimX, gridDimY, gridDimZ, blockDimX, blockDimY, blockDimZ, sharedMemBytes, hStream, kernelParams, extra)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__252, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 4885, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 4885, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":4884
 *     cuPythonInit()
 *     if __cuLaunchKernel == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuLaunchKernel" not found')
 *     err = (<CUresult (*)(CUfunction, unsigned int, unsigned int, unsigned int, unsigned int, unsigned int, unsigned int, unsigned int, CUstream, void**, void**) except ?CUDA_ERROR_NOT_FOUND nogil> __cuLaunchKernel)(f, gridDimX, gridDimY, gridDimZ, blockDimX, blockDimY, blockDimZ, sharedMemBytes, hStream, kernelParams, extra)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":4883
 *     global __cuLaunchKernel
 *     cuPythonInit()
 *     if __cuLaunchKernel == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuLaunchKernel" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":4886
 *         with gil:
 *             raise RuntimeError('Function "cuLaunchKernel" not found')
 *     err = (<CUresult (*)(CUfunction, unsigned int, unsigned int, unsigned int, unsigned int, unsigned int, unsigned int, unsigned int, CUstream, void**, void**) except ?CUDA_ERROR_NOT_FOUND nogil> __cuLaunchKernel)(f, gridDimX, gridDimY, gridDimZ, blockDimX, blockDimY, blockDimZ, sharedMemBytes, hStream, kernelParams, extra)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUfunction, unsigned int, unsigned int, unsigned int, unsigned int, unsigned int, unsigned int, unsigned int, CUstream, void **, void **))__pyx_v_4cuda_5_cuda_5ccuda___cuLaunchKernel)(__pyx_v_f, __pyx_v_gridDimX, __pyx_v_gridDimY, __pyx_v_gridDimZ, __pyx_v_blockDimX, __pyx_v_blockDimY, __pyx_v_blockDimZ, __pyx_v_sharedMemBytes, __pyx_v_hStream, __pyx_v_kernelParams, __pyx_v_extra); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 4886, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":4887
 *             raise RuntimeError('Function "cuLaunchKernel" not found')
 *     err = (<CUresult (*)(CUfunction, unsigned int, unsigned int, unsigned int, unsigned int, unsigned int, unsigned int, unsigned int, CUstream, void**, void**) except ?CUDA_ERROR_NOT_FOUND nogil> __cuLaunchKernel)(f, gridDimX, gridDimY, gridDimZ, blockDimX, blockDimY, blockDimZ, sharedMemBytes, hStream, kernelParams, extra)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuLaunchKernelEx(const CUlaunchConfig* config, CUfunction f, void** kernelParams, void** extra) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":4880
 *     return err
 * 
 * cdef CUresult _cuLaunchKernel(CUfunction f, unsigned int gridDimX, unsigned int gridDimY, unsigned int gridDimZ, unsigned int blockDimX, unsigned int blockDimY, unsigned int blockDimZ, unsigned int sharedMemBytes, CUstream hStream, void** kernelParams, void** extra) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuLaunchKernel
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuLaunchKernel", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":4889
 *     return err
 * 
 * cdef CUresult _cuLaunchKernelEx(const CUlaunchConfig* config, CUfunction f, void** kernelParams, void** extra) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuLaunchKernelEx
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuLaunchKernelEx(CUlaunchConfig const *__pyx_v_config, CUfunction __pyx_v_f, void **__pyx_v_kernelParams, void **__pyx_v_extra) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuLaunchKernelEx", 1);
  __Pyx_TraceCall("_cuLaunchKernelEx", __pyx_f[0], 4889, 1, __PYX_ERR(0, 4889, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":4891
 * cdef CUresult _cuLaunchKernelEx(const CUlaunchConfig* config, CUfunction f, void** kernelParams, void** extra) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuLaunchKernelEx
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuLaunchKernelEx == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 4891, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":4892
 *     global __cuLaunchKernelEx
 *     cuPythonInit()
 *     if __cuLaunchKernelEx == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuLaunchKernelEx" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuLaunchKernelEx == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":4893
 *     cuPythonInit()
 *     if __cuLaunchKernelEx == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuLaunchKernelEx" not found')
 *     err = (<CUresult (*)(const CUlaunchConfig*, CUfunction, void**, void**) except ?CUDA_ERROR_NOT_FOUND nogil> __cuLaunchKernelEx)(config, f, kernelParams, extra)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":4894
 *     if __cuLaunchKernelEx == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuLaunchKernelEx" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(const CUlaunchConfig*, CUfunction, void**, void**) except ?CUDA_ERROR_NOT_FOUND nogil> __cuLaunchKernelEx)(config, f, kernelParams, extra)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__253, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 4894, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 4894, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":4893
 *     cuPythonInit()
 *     if __cuLaunchKernelEx == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuLaunchKernelEx" not found')
 *     err = (<CUresult (*)(const CUlaunchConfig*, CUfunction, void**, void**) except ?CUDA_ERROR_NOT_FOUND nogil> __cuLaunchKernelEx)(config, f, kernelParams, extra)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":4892
 *     global __cuLaunchKernelEx
 *     cuPythonInit()
 *     if __cuLaunchKernelEx == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuLaunchKernelEx" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":4895
 *         with gil:
 *             raise RuntimeError('Function "cuLaunchKernelEx" not found')
 *     err = (<CUresult (*)(const CUlaunchConfig*, CUfunction, void**, void**) except ?CUDA_ERROR_NOT_FOUND nogil> __cuLaunchKernelEx)(config, f, kernelParams, extra)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUlaunchConfig const *, CUfunction, void **, void **))__pyx_v_4cuda_5_cuda_5ccuda___cuLaunchKernelEx)(__pyx_v_config, __pyx_v_f, __pyx_v_kernelParams, __pyx_v_extra); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 4895, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":4896
 *             raise RuntimeError('Function "cuLaunchKernelEx" not found')
 *     err = (<CUresult (*)(const CUlaunchConfig*, CUfunction, void**, void**) except ?CUDA_ERROR_NOT_FOUND nogil> __cuLaunchKernelEx)(config, f, kernelParams, extra)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuLaunchCooperativeKernel(CUfunction f, unsigned int gridDimX, unsigned int gridDimY, unsigned int gridDimZ, unsigned int blockDimX, unsigned int blockDimY, unsigned int blockDimZ, unsigned int sharedMemBytes, CUstream hStream, void** kernelParams) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":4889
 *     return err
 * 
 * cdef CUresult _cuLaunchKernelEx(const CUlaunchConfig* config, CUfunction f, void** kernelParams, void** extra) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuLaunchKernelEx
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuLaunchKernelEx", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":4898
 *     return err
 * 
 * cdef CUresult _cuLaunchCooperativeKernel(CUfunction f, unsigned int gridDimX, unsigned int gridDimY, unsigned int gridDimZ, unsigned int blockDimX, unsigned int blockDimY, unsigned int blockDimZ, unsigned int sharedMemBytes, CUstream hStream, void** kernelParams) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuLaunchCooperativeKernel
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuLaunchCooperativeKernel(CUfunction __pyx_v_f, unsigned int __pyx_v_gridDimX, unsigned int __pyx_v_gridDimY, unsigned int __pyx_v_gridDimZ, unsigned int __pyx_v_blockDimX, unsigned int __pyx_v_blockDimY, unsigned int __pyx_v_blockDimZ, unsigned int __pyx_v_sharedMemBytes, CUstream __pyx_v_hStream, void **__pyx_v_kernelParams) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuLaunchCooperativeKernel", 1);
  __Pyx_TraceCall("_cuLaunchCooperativeKernel", __pyx_f[0], 4898, 1, __PYX_ERR(0, 4898, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":4900
 * cdef CUresult _cuLaunchCooperativeKernel(CUfunction f, unsigned int gridDimX, unsigned int gridDimY, unsigned int gridDimZ, unsigned int blockDimX, unsigned int blockDimY, unsigned int blockDimZ, unsigned int sharedMemBytes, CUstream hStream, void** kernelParams) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuLaunchCooperativeKernel
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuLaunchCooperativeKernel == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 4900, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":4901
 *     global __cuLaunchCooperativeKernel
 *     cuPythonInit()
 *     if __cuLaunchCooperativeKernel == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuLaunchCooperativeKernel" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuLaunchCooperativeKernel == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":4902
 *     cuPythonInit()
 *     if __cuLaunchCooperativeKernel == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuLaunchCooperativeKernel" not found')
 *     err = (<CUresult (*)(CUfunction, unsigned int, unsigned int, unsigned int, unsigned int, unsigned int, unsigned int, unsigned int, CUstream, void**) except ?CUDA_ERROR_NOT_FOUND nogil> __cuLaunchCooperativeKernel)(f, gridDimX, gridDimY, gridDimZ, blockDimX, blockDimY, blockDimZ, sharedMemBytes, hStream, kernelParams)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":4903
 *     if __cuLaunchCooperativeKernel == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuLaunchCooperativeKernel" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUfunction, unsigned int, unsigned int, unsigned int, unsigned int, unsigned int, unsigned int, unsigned int, CUstream, void**) except ?CUDA_ERROR_NOT_FOUND nogil> __cuLaunchCooperativeKernel)(f, gridDimX, gridDimY, gridDimZ, blockDimX, blockDimY, blockDimZ, sharedMemBytes, hStream, kernelParams)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__254, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 4903, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 4903, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":4902
 *     cuPythonInit()
 *     if __cuLaunchCooperativeKernel == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuLaunchCooperativeKernel" not found')
 *     err = (<CUresult (*)(CUfunction, unsigned int, unsigned int, unsigned int, unsigned int, unsigned int, unsigned int, unsigned int, CUstream, void**) except ?CUDA_ERROR_NOT_FOUND nogil> __cuLaunchCooperativeKernel)(f, gridDimX, gridDimY, gridDimZ, blockDimX, blockDimY, blockDimZ, sharedMemBytes, hStream, kernelParams)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":4901
 *     global __cuLaunchCooperativeKernel
 *     cuPythonInit()
 *     if __cuLaunchCooperativeKernel == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuLaunchCooperativeKernel" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":4904
 *         with gil:
 *             raise RuntimeError('Function "cuLaunchCooperativeKernel" not found')
 *     err = (<CUresult (*)(CUfunction, unsigned int, unsigned int, unsigned int, unsigned int, unsigned int, unsigned int, unsigned int, CUstream, void**) except ?CUDA_ERROR_NOT_FOUND nogil> __cuLaunchCooperativeKernel)(f, gridDimX, gridDimY, gridDimZ, blockDimX, blockDimY, blockDimZ, sharedMemBytes, hStream, kernelParams)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUfunction, unsigned int, unsigned int, unsigned int, unsigned int, unsigned int, unsigned int, unsigned int, CUstream, void **))__pyx_v_4cuda_5_cuda_5ccuda___cuLaunchCooperativeKernel)(__pyx_v_f, __pyx_v_gridDimX, __pyx_v_gridDimY, __pyx_v_gridDimZ, __pyx_v_blockDimX, __pyx_v_blockDimY, __pyx_v_blockDimZ, __pyx_v_sharedMemBytes, __pyx_v_hStream, __pyx_v_kernelParams); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 4904, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":4905
 *             raise RuntimeError('Function "cuLaunchCooperativeKernel" not found')
 *     err = (<CUresult (*)(CUfunction, unsigned int, unsigned int, unsigned int, unsigned int, unsigned int, unsigned int, unsigned int, CUstream, void**) except ?CUDA_ERROR_NOT_FOUND nogil> __cuLaunchCooperativeKernel)(f, gridDimX, gridDimY, gridDimZ, blockDimX, blockDimY, blockDimZ, sharedMemBytes, hStream, kernelParams)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuLaunchCooperativeKernelMultiDevice(CUDA_LAUNCH_PARAMS* launchParamsList, unsigned int numDevices, unsigned int flags) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":4898
 *     return err
 * 
 * cdef CUresult _cuLaunchCooperativeKernel(CUfunction f, unsigned int gridDimX, unsigned int gridDimY, unsigned int gridDimZ, unsigned int blockDimX, unsigned int blockDimY, unsigned int blockDimZ, unsigned int sharedMemBytes, CUstream hStream, void** kernelParams) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuLaunchCooperativeKernel
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuLaunchCooperativeKernel", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":4907
 *     return err
 * 
 * cdef CUresult _cuLaunchCooperativeKernelMultiDevice(CUDA_LAUNCH_PARAMS* launchParamsList, unsigned int numDevices, unsigned int flags) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuLaunchCooperativeKernelMultiDevice
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuLaunchCooperativeKernelMultiDevice(CUDA_LAUNCH_PARAMS *__pyx_v_launchParamsList, unsigned int __pyx_v_numDevices, unsigned int __pyx_v_flags) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuLaunchCooperativeKernelMultiDevice", 1);
  __Pyx_TraceCall("_cuLaunchCooperativeKernelMultiDevice", __pyx_f[0], 4907, 1, __PYX_ERR(0, 4907, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":4909
 * cdef CUresult _cuLaunchCooperativeKernelMultiDevice(CUDA_LAUNCH_PARAMS* launchParamsList, unsigned int numDevices, unsigned int flags) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuLaunchCooperativeKernelMultiDevice
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuLaunchCooperativeKernelMultiDevice == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 4909, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":4910
 *     global __cuLaunchCooperativeKernelMultiDevice
 *     cuPythonInit()
 *     if __cuLaunchCooperativeKernelMultiDevice == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuLaunchCooperativeKernelMultiDevice" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuLaunchCooperativeKernelMultiDevice == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":4911
 *     cuPythonInit()
 *     if __cuLaunchCooperativeKernelMultiDevice == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuLaunchCooperativeKernelMultiDevice" not found')
 *     err = (<CUresult (*)(CUDA_LAUNCH_PARAMS*, unsigned int, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuLaunchCooperativeKernelMultiDevice)(launchParamsList, numDevices, flags)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":4912
 *     if __cuLaunchCooperativeKernelMultiDevice == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuLaunchCooperativeKernelMultiDevice" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUDA_LAUNCH_PARAMS*, unsigned int, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuLaunchCooperativeKernelMultiDevice)(launchParamsList, numDevices, flags)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__255, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 4912, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 4912, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":4911
 *     cuPythonInit()
 *     if __cuLaunchCooperativeKernelMultiDevice == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuLaunchCooperativeKernelMultiDevice" not found')
 *     err = (<CUresult (*)(CUDA_LAUNCH_PARAMS*, unsigned int, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuLaunchCooperativeKernelMultiDevice)(launchParamsList, numDevices, flags)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":4910
 *     global __cuLaunchCooperativeKernelMultiDevice
 *     cuPythonInit()
 *     if __cuLaunchCooperativeKernelMultiDevice == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuLaunchCooperativeKernelMultiDevice" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":4913
 *         with gil:
 *             raise RuntimeError('Function "cuLaunchCooperativeKernelMultiDevice" not found')
 *     err = (<CUresult (*)(CUDA_LAUNCH_PARAMS*, unsigned int, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuLaunchCooperativeKernelMultiDevice)(launchParamsList, numDevices, flags)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUDA_LAUNCH_PARAMS *, unsigned int, unsigned int))__pyx_v_4cuda_5_cuda_5ccuda___cuLaunchCooperativeKernelMultiDevice)(__pyx_v_launchParamsList, __pyx_v_numDevices, __pyx_v_flags); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 4913, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":4914
 *             raise RuntimeError('Function "cuLaunchCooperativeKernelMultiDevice" not found')
 *     err = (<CUresult (*)(CUDA_LAUNCH_PARAMS*, unsigned int, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuLaunchCooperativeKernelMultiDevice)(launchParamsList, numDevices, flags)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuLaunchHostFunc(CUstream hStream, CUhostFn fn, void* userData) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":4907
 *     return err
 * 
 * cdef CUresult _cuLaunchCooperativeKernelMultiDevice(CUDA_LAUNCH_PARAMS* launchParamsList, unsigned int numDevices, unsigned int flags) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuLaunchCooperativeKernelMultiDevice
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuLaunchCooperativeKernelMultiDevice", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":4916
 *     return err
 * 
 * cdef CUresult _cuLaunchHostFunc(CUstream hStream, CUhostFn fn, void* userData) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuLaunchHostFunc
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuLaunchHostFunc(CUstream __pyx_v_hStream, CUhostFn __pyx_v_fn, void *__pyx_v_userData) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuLaunchHostFunc", 1);
  __Pyx_TraceCall("_cuLaunchHostFunc", __pyx_f[0], 4916, 1, __PYX_ERR(0, 4916, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":4918
 * cdef CUresult _cuLaunchHostFunc(CUstream hStream, CUhostFn fn, void* userData) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuLaunchHostFunc
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuLaunchHostFunc == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 4918, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":4919
 *     global __cuLaunchHostFunc
 *     cuPythonInit()
 *     if __cuLaunchHostFunc == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuLaunchHostFunc" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuLaunchHostFunc == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":4920
 *     cuPythonInit()
 *     if __cuLaunchHostFunc == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuLaunchHostFunc" not found')
 *     err = (<CUresult (*)(CUstream, CUhostFn, void*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuLaunchHostFunc)(hStream, fn, userData)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":4921
 *     if __cuLaunchHostFunc == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuLaunchHostFunc" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUstream, CUhostFn, void*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuLaunchHostFunc)(hStream, fn, userData)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__256, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 4921, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 4921, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":4920
 *     cuPythonInit()
 *     if __cuLaunchHostFunc == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuLaunchHostFunc" not found')
 *     err = (<CUresult (*)(CUstream, CUhostFn, void*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuLaunchHostFunc)(hStream, fn, userData)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":4919
 *     global __cuLaunchHostFunc
 *     cuPythonInit()
 *     if __cuLaunchHostFunc == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuLaunchHostFunc" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":4922
 *         with gil:
 *             raise RuntimeError('Function "cuLaunchHostFunc" not found')
 *     err = (<CUresult (*)(CUstream, CUhostFn, void*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuLaunchHostFunc)(hStream, fn, userData)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUstream, CUhostFn, void *))__pyx_v_4cuda_5_cuda_5ccuda___cuLaunchHostFunc)(__pyx_v_hStream, __pyx_v_fn, __pyx_v_userData); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 4922, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":4923
 *             raise RuntimeError('Function "cuLaunchHostFunc" not found')
 *     err = (<CUresult (*)(CUstream, CUhostFn, void*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuLaunchHostFunc)(hStream, fn, userData)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuFuncSetBlockShape(CUfunction hfunc, int x, int y, int z) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":4916
 *     return err
 * 
 * cdef CUresult _cuLaunchHostFunc(CUstream hStream, CUhostFn fn, void* userData) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuLaunchHostFunc
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuLaunchHostFunc", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":4925
 *     return err
 * 
 * cdef CUresult _cuFuncSetBlockShape(CUfunction hfunc, int x, int y, int z) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuFuncSetBlockShape
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuFuncSetBlockShape(CUfunction __pyx_v_hfunc, int __pyx_v_x, int __pyx_v_y, int __pyx_v_z) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuFuncSetBlockShape", 1);
  __Pyx_TraceCall("_cuFuncSetBlockShape", __pyx_f[0], 4925, 1, __PYX_ERR(0, 4925, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":4927
 * cdef CUresult _cuFuncSetBlockShape(CUfunction hfunc, int x, int y, int z) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuFuncSetBlockShape
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuFuncSetBlockShape == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 4927, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":4928
 *     global __cuFuncSetBlockShape
 *     cuPythonInit()
 *     if __cuFuncSetBlockShape == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuFuncSetBlockShape" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuFuncSetBlockShape == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":4929
 *     cuPythonInit()
 *     if __cuFuncSetBlockShape == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuFuncSetBlockShape" not found')
 *     err = (<CUresult (*)(CUfunction, int, int, int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuFuncSetBlockShape)(hfunc, x, y, z)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":4930
 *     if __cuFuncSetBlockShape == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuFuncSetBlockShape" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUfunction, int, int, int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuFuncSetBlockShape)(hfunc, x, y, z)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__257, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 4930, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 4930, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":4929
 *     cuPythonInit()
 *     if __cuFuncSetBlockShape == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuFuncSetBlockShape" not found')
 *     err = (<CUresult (*)(CUfunction, int, int, int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuFuncSetBlockShape)(hfunc, x, y, z)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":4928
 *     global __cuFuncSetBlockShape
 *     cuPythonInit()
 *     if __cuFuncSetBlockShape == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuFuncSetBlockShape" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":4931
 *         with gil:
 *             raise RuntimeError('Function "cuFuncSetBlockShape" not found')
 *     err = (<CUresult (*)(CUfunction, int, int, int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuFuncSetBlockShape)(hfunc, x, y, z)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUfunction, int, int, int))__pyx_v_4cuda_5_cuda_5ccuda___cuFuncSetBlockShape)(__pyx_v_hfunc, __pyx_v_x, __pyx_v_y, __pyx_v_z); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 4931, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":4932
 *             raise RuntimeError('Function "cuFuncSetBlockShape" not found')
 *     err = (<CUresult (*)(CUfunction, int, int, int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuFuncSetBlockShape)(hfunc, x, y, z)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuFuncSetSharedSize(CUfunction hfunc, unsigned int numbytes) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":4925
 *     return err
 * 
 * cdef CUresult _cuFuncSetBlockShape(CUfunction hfunc, int x, int y, int z) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuFuncSetBlockShape
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuFuncSetBlockShape", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":4934
 *     return err
 * 
 * cdef CUresult _cuFuncSetSharedSize(CUfunction hfunc, unsigned int numbytes) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuFuncSetSharedSize
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuFuncSetSharedSize(CUfunction __pyx_v_hfunc, unsigned int __pyx_v_numbytes) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuFuncSetSharedSize", 1);
  __Pyx_TraceCall("_cuFuncSetSharedSize", __pyx_f[0], 4934, 1, __PYX_ERR(0, 4934, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":4936
 * cdef CUresult _cuFuncSetSharedSize(CUfunction hfunc, unsigned int numbytes) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuFuncSetSharedSize
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuFuncSetSharedSize == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 4936, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":4937
 *     global __cuFuncSetSharedSize
 *     cuPythonInit()
 *     if __cuFuncSetSharedSize == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuFuncSetSharedSize" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuFuncSetSharedSize == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":4938
 *     cuPythonInit()
 *     if __cuFuncSetSharedSize == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuFuncSetSharedSize" not found')
 *     err = (<CUresult (*)(CUfunction, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuFuncSetSharedSize)(hfunc, numbytes)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":4939
 *     if __cuFuncSetSharedSize == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuFuncSetSharedSize" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUfunction, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuFuncSetSharedSize)(hfunc, numbytes)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__258, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 4939, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 4939, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":4938
 *     cuPythonInit()
 *     if __cuFuncSetSharedSize == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuFuncSetSharedSize" not found')
 *     err = (<CUresult (*)(CUfunction, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuFuncSetSharedSize)(hfunc, numbytes)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":4937
 *     global __cuFuncSetSharedSize
 *     cuPythonInit()
 *     if __cuFuncSetSharedSize == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuFuncSetSharedSize" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":4940
 *         with gil:
 *             raise RuntimeError('Function "cuFuncSetSharedSize" not found')
 *     err = (<CUresult (*)(CUfunction, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuFuncSetSharedSize)(hfunc, numbytes)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUfunction, unsigned int))__pyx_v_4cuda_5_cuda_5ccuda___cuFuncSetSharedSize)(__pyx_v_hfunc, __pyx_v_numbytes); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 4940, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":4941
 *             raise RuntimeError('Function "cuFuncSetSharedSize" not found')
 *     err = (<CUresult (*)(CUfunction, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuFuncSetSharedSize)(hfunc, numbytes)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuParamSetSize(CUfunction hfunc, unsigned int numbytes) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":4934
 *     return err
 * 
 * cdef CUresult _cuFuncSetSharedSize(CUfunction hfunc, unsigned int numbytes) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuFuncSetSharedSize
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuFuncSetSharedSize", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":4943
 *     return err
 * 
 * cdef CUresult _cuParamSetSize(CUfunction hfunc, unsigned int numbytes) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuParamSetSize
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuParamSetSize(CUfunction __pyx_v_hfunc, unsigned int __pyx_v_numbytes) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuParamSetSize", 1);
  __Pyx_TraceCall("_cuParamSetSize", __pyx_f[0], 4943, 1, __PYX_ERR(0, 4943, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":4945
 * cdef CUresult _cuParamSetSize(CUfunction hfunc, unsigned int numbytes) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuParamSetSize
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuParamSetSize == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 4945, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":4946
 *     global __cuParamSetSize
 *     cuPythonInit()
 *     if __cuParamSetSize == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuParamSetSize" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuParamSetSize == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":4947
 *     cuPythonInit()
 *     if __cuParamSetSize == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuParamSetSize" not found')
 *     err = (<CUresult (*)(CUfunction, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuParamSetSize)(hfunc, numbytes)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":4948
 *     if __cuParamSetSize == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuParamSetSize" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUfunction, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuParamSetSize)(hfunc, numbytes)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__259, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 4948, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 4948, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":4947
 *     cuPythonInit()
 *     if __cuParamSetSize == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuParamSetSize" not found')
 *     err = (<CUresult (*)(CUfunction, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuParamSetSize)(hfunc, numbytes)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":4946
 *     global __cuParamSetSize
 *     cuPythonInit()
 *     if __cuParamSetSize == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuParamSetSize" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":4949
 *         with gil:
 *             raise RuntimeError('Function "cuParamSetSize" not found')
 *     err = (<CUresult (*)(CUfunction, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuParamSetSize)(hfunc, numbytes)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUfunction, unsigned int))__pyx_v_4cuda_5_cuda_5ccuda___cuParamSetSize)(__pyx_v_hfunc, __pyx_v_numbytes); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 4949, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":4950
 *             raise RuntimeError('Function "cuParamSetSize" not found')
 *     err = (<CUresult (*)(CUfunction, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuParamSetSize)(hfunc, numbytes)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuParamSeti(CUfunction hfunc, int offset, unsigned int value) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":4943
 *     return err
 * 
 * cdef CUresult _cuParamSetSize(CUfunction hfunc, unsigned int numbytes) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuParamSetSize
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuParamSetSize", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":4952
 *     return err
 * 
 * cdef CUresult _cuParamSeti(CUfunction hfunc, int offset, unsigned int value) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuParamSeti
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuParamSeti(CUfunction __pyx_v_hfunc, int __pyx_v_offset, unsigned int __pyx_v_value) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuParamSeti", 1);
  __Pyx_TraceCall("_cuParamSeti", __pyx_f[0], 4952, 1, __PYX_ERR(0, 4952, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":4954
 * cdef CUresult _cuParamSeti(CUfunction hfunc, int offset, unsigned int value) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuParamSeti
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuParamSeti == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 4954, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":4955
 *     global __cuParamSeti
 *     cuPythonInit()
 *     if __cuParamSeti == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuParamSeti" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuParamSeti == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":4956
 *     cuPythonInit()
 *     if __cuParamSeti == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuParamSeti" not found')
 *     err = (<CUresult (*)(CUfunction, int, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuParamSeti)(hfunc, offset, value)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":4957
 *     if __cuParamSeti == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuParamSeti" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUfunction, int, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuParamSeti)(hfunc, offset, value)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__260, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 4957, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 4957, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":4956
 *     cuPythonInit()
 *     if __cuParamSeti == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuParamSeti" not found')
 *     err = (<CUresult (*)(CUfunction, int, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuParamSeti)(hfunc, offset, value)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":4955
 *     global __cuParamSeti
 *     cuPythonInit()
 *     if __cuParamSeti == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuParamSeti" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":4958
 *         with gil:
 *             raise RuntimeError('Function "cuParamSeti" not found')
 *     err = (<CUresult (*)(CUfunction, int, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuParamSeti)(hfunc, offset, value)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUfunction, int, unsigned int))__pyx_v_4cuda_5_cuda_5ccuda___cuParamSeti)(__pyx_v_hfunc, __pyx_v_offset, __pyx_v_value); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 4958, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":4959
 *             raise RuntimeError('Function "cuParamSeti" not found')
 *     err = (<CUresult (*)(CUfunction, int, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuParamSeti)(hfunc, offset, value)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuParamSetf(CUfunction hfunc, int offset, float value) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":4952
 *     return err
 * 
 * cdef CUresult _cuParamSeti(CUfunction hfunc, int offset, unsigned int value) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuParamSeti
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuParamSeti", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":4961
 *     return err
 * 
 * cdef CUresult _cuParamSetf(CUfunction hfunc, int offset, float value) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuParamSetf
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuParamSetf(CUfunction __pyx_v_hfunc, int __pyx_v_offset, float __pyx_v_value) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuParamSetf", 1);
  __Pyx_TraceCall("_cuParamSetf", __pyx_f[0], 4961, 1, __PYX_ERR(0, 4961, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":4963
 * cdef CUresult _cuParamSetf(CUfunction hfunc, int offset, float value) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuParamSetf
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuParamSetf == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 4963, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":4964
 *     global __cuParamSetf
 *     cuPythonInit()
 *     if __cuParamSetf == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuParamSetf" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuParamSetf == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":4965
 *     cuPythonInit()
 *     if __cuParamSetf == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuParamSetf" not found')
 *     err = (<CUresult (*)(CUfunction, int, float) except ?CUDA_ERROR_NOT_FOUND nogil> __cuParamSetf)(hfunc, offset, value)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":4966
 *     if __cuParamSetf == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuParamSetf" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUfunction, int, float) except ?CUDA_ERROR_NOT_FOUND nogil> __cuParamSetf)(hfunc, offset, value)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__261, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 4966, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 4966, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":4965
 *     cuPythonInit()
 *     if __cuParamSetf == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuParamSetf" not found')
 *     err = (<CUresult (*)(CUfunction, int, float) except ?CUDA_ERROR_NOT_FOUND nogil> __cuParamSetf)(hfunc, offset, value)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":4964
 *     global __cuParamSetf
 *     cuPythonInit()
 *     if __cuParamSetf == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuParamSetf" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":4967
 *         with gil:
 *             raise RuntimeError('Function "cuParamSetf" not found')
 *     err = (<CUresult (*)(CUfunction, int, float) except ?CUDA_ERROR_NOT_FOUND nogil> __cuParamSetf)(hfunc, offset, value)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUfunction, int, float))__pyx_v_4cuda_5_cuda_5ccuda___cuParamSetf)(__pyx_v_hfunc, __pyx_v_offset, __pyx_v_value); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 4967, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":4968
 *             raise RuntimeError('Function "cuParamSetf" not found')
 *     err = (<CUresult (*)(CUfunction, int, float) except ?CUDA_ERROR_NOT_FOUND nogil> __cuParamSetf)(hfunc, offset, value)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuParamSetv(CUfunction hfunc, int offset, void* ptr, unsigned int numbytes) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":4961
 *     return err
 * 
 * cdef CUresult _cuParamSetf(CUfunction hfunc, int offset, float value) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuParamSetf
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuParamSetf", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":4970
 *     return err
 * 
 * cdef CUresult _cuParamSetv(CUfunction hfunc, int offset, void* ptr, unsigned int numbytes) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuParamSetv
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuParamSetv(CUfunction __pyx_v_hfunc, int __pyx_v_offset, void *__pyx_v_ptr, unsigned int __pyx_v_numbytes) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuParamSetv", 1);
  __Pyx_TraceCall("_cuParamSetv", __pyx_f[0], 4970, 1, __PYX_ERR(0, 4970, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":4972
 * cdef CUresult _cuParamSetv(CUfunction hfunc, int offset, void* ptr, unsigned int numbytes) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuParamSetv
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuParamSetv == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 4972, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":4973
 *     global __cuParamSetv
 *     cuPythonInit()
 *     if __cuParamSetv == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuParamSetv" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuParamSetv == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":4974
 *     cuPythonInit()
 *     if __cuParamSetv == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuParamSetv" not found')
 *     err = (<CUresult (*)(CUfunction, int, void*, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuParamSetv)(hfunc, offset, ptr, numbytes)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":4975
 *     if __cuParamSetv == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuParamSetv" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUfunction, int, void*, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuParamSetv)(hfunc, offset, ptr, numbytes)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__262, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 4975, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 4975, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":4974
 *     cuPythonInit()
 *     if __cuParamSetv == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuParamSetv" not found')
 *     err = (<CUresult (*)(CUfunction, int, void*, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuParamSetv)(hfunc, offset, ptr, numbytes)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":4973
 *     global __cuParamSetv
 *     cuPythonInit()
 *     if __cuParamSetv == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuParamSetv" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":4976
 *         with gil:
 *             raise RuntimeError('Function "cuParamSetv" not found')
 *     err = (<CUresult (*)(CUfunction, int, void*, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuParamSetv)(hfunc, offset, ptr, numbytes)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUfunction, int, void *, unsigned int))__pyx_v_4cuda_5_cuda_5ccuda___cuParamSetv)(__pyx_v_hfunc, __pyx_v_offset, __pyx_v_ptr, __pyx_v_numbytes); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 4976, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":4977
 *             raise RuntimeError('Function "cuParamSetv" not found')
 *     err = (<CUresult (*)(CUfunction, int, void*, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuParamSetv)(hfunc, offset, ptr, numbytes)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuLaunch(CUfunction f) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":4970
 *     return err
 * 
 * cdef CUresult _cuParamSetv(CUfunction hfunc, int offset, void* ptr, unsigned int numbytes) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuParamSetv
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuParamSetv", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":4979
 *     return err
 * 
 * cdef CUresult _cuLaunch(CUfunction f) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuLaunch
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuLaunch(CUfunction __pyx_v_f) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuLaunch", 1);
  __Pyx_TraceCall("_cuLaunch", __pyx_f[0], 4979, 1, __PYX_ERR(0, 4979, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":4981
 * cdef CUresult _cuLaunch(CUfunction f) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuLaunch
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuLaunch == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 4981, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":4982
 *     global __cuLaunch
 *     cuPythonInit()
 *     if __cuLaunch == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuLaunch" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuLaunch == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":4983
 *     cuPythonInit()
 *     if __cuLaunch == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuLaunch" not found')
 *     err = (<CUresult (*)(CUfunction) except ?CUDA_ERROR_NOT_FOUND nogil> __cuLaunch)(f)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":4984
 *     if __cuLaunch == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuLaunch" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUfunction) except ?CUDA_ERROR_NOT_FOUND nogil> __cuLaunch)(f)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__263, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 4984, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 4984, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":4983
 *     cuPythonInit()
 *     if __cuLaunch == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuLaunch" not found')
 *     err = (<CUresult (*)(CUfunction) except ?CUDA_ERROR_NOT_FOUND nogil> __cuLaunch)(f)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":4982
 *     global __cuLaunch
 *     cuPythonInit()
 *     if __cuLaunch == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuLaunch" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":4985
 *         with gil:
 *             raise RuntimeError('Function "cuLaunch" not found')
 *     err = (<CUresult (*)(CUfunction) except ?CUDA_ERROR_NOT_FOUND nogil> __cuLaunch)(f)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUfunction))__pyx_v_4cuda_5_cuda_5ccuda___cuLaunch)(__pyx_v_f); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 4985, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":4986
 *             raise RuntimeError('Function "cuLaunch" not found')
 *     err = (<CUresult (*)(CUfunction) except ?CUDA_ERROR_NOT_FOUND nogil> __cuLaunch)(f)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuLaunchGrid(CUfunction f, int grid_width, int grid_height) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":4979
 *     return err
 * 
 * cdef CUresult _cuLaunch(CUfunction f) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuLaunch
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuLaunch", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":4988
 *     return err
 * 
 * cdef CUresult _cuLaunchGrid(CUfunction f, int grid_width, int grid_height) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuLaunchGrid
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuLaunchGrid(CUfunction __pyx_v_f, int __pyx_v_grid_width, int __pyx_v_grid_height) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuLaunchGrid", 1);
  __Pyx_TraceCall("_cuLaunchGrid", __pyx_f[0], 4988, 1, __PYX_ERR(0, 4988, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":4990
 * cdef CUresult _cuLaunchGrid(CUfunction f, int grid_width, int grid_height) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuLaunchGrid
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuLaunchGrid == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 4990, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":4991
 *     global __cuLaunchGrid
 *     cuPythonInit()
 *     if __cuLaunchGrid == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuLaunchGrid" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuLaunchGrid == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":4992
 *     cuPythonInit()
 *     if __cuLaunchGrid == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuLaunchGrid" not found')
 *     err = (<CUresult (*)(CUfunction, int, int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuLaunchGrid)(f, grid_width, grid_height)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":4993
 *     if __cuLaunchGrid == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuLaunchGrid" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUfunction, int, int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuLaunchGrid)(f, grid_width, grid_height)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__264, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 4993, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 4993, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":4992
 *     cuPythonInit()
 *     if __cuLaunchGrid == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuLaunchGrid" not found')
 *     err = (<CUresult (*)(CUfunction, int, int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuLaunchGrid)(f, grid_width, grid_height)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":4991
 *     global __cuLaunchGrid
 *     cuPythonInit()
 *     if __cuLaunchGrid == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuLaunchGrid" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":4994
 *         with gil:
 *             raise RuntimeError('Function "cuLaunchGrid" not found')
 *     err = (<CUresult (*)(CUfunction, int, int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuLaunchGrid)(f, grid_width, grid_height)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUfunction, int, int))__pyx_v_4cuda_5_cuda_5ccuda___cuLaunchGrid)(__pyx_v_f, __pyx_v_grid_width, __pyx_v_grid_height); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 4994, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":4995
 *             raise RuntimeError('Function "cuLaunchGrid" not found')
 *     err = (<CUresult (*)(CUfunction, int, int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuLaunchGrid)(f, grid_width, grid_height)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuLaunchGridAsync(CUfunction f, int grid_width, int grid_height, CUstream hStream) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":4988
 *     return err
 * 
 * cdef CUresult _cuLaunchGrid(CUfunction f, int grid_width, int grid_height) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuLaunchGrid
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuLaunchGrid", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":4997
 *     return err
 * 
 * cdef CUresult _cuLaunchGridAsync(CUfunction f, int grid_width, int grid_height, CUstream hStream) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuLaunchGridAsync
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuLaunchGridAsync(CUfunction __pyx_v_f, int __pyx_v_grid_width, int __pyx_v_grid_height, CUstream __pyx_v_hStream) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuLaunchGridAsync", 1);
  __Pyx_TraceCall("_cuLaunchGridAsync", __pyx_f[0], 4997, 1, __PYX_ERR(0, 4997, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":4999
 * cdef CUresult _cuLaunchGridAsync(CUfunction f, int grid_width, int grid_height, CUstream hStream) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuLaunchGridAsync
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuLaunchGridAsync == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 4999, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":5000
 *     global __cuLaunchGridAsync
 *     cuPythonInit()
 *     if __cuLaunchGridAsync == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuLaunchGridAsync" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuLaunchGridAsync == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":5001
 *     cuPythonInit()
 *     if __cuLaunchGridAsync == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuLaunchGridAsync" not found')
 *     err = (<CUresult (*)(CUfunction, int, int, CUstream) except ?CUDA_ERROR_NOT_FOUND nogil> __cuLaunchGridAsync)(f, grid_width, grid_height, hStream)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":5002
 *     if __cuLaunchGridAsync == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuLaunchGridAsync" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUfunction, int, int, CUstream) except ?CUDA_ERROR_NOT_FOUND nogil> __cuLaunchGridAsync)(f, grid_width, grid_height, hStream)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__265, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 5002, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 5002, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":5001
 *     cuPythonInit()
 *     if __cuLaunchGridAsync == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuLaunchGridAsync" not found')
 *     err = (<CUresult (*)(CUfunction, int, int, CUstream) except ?CUDA_ERROR_NOT_FOUND nogil> __cuLaunchGridAsync)(f, grid_width, grid_height, hStream)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":5000
 *     global __cuLaunchGridAsync
 *     cuPythonInit()
 *     if __cuLaunchGridAsync == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuLaunchGridAsync" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":5003
 *         with gil:
 *             raise RuntimeError('Function "cuLaunchGridAsync" not found')
 *     err = (<CUresult (*)(CUfunction, int, int, CUstream) except ?CUDA_ERROR_NOT_FOUND nogil> __cuLaunchGridAsync)(f, grid_width, grid_height, hStream)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUfunction, int, int, CUstream))__pyx_v_4cuda_5_cuda_5ccuda___cuLaunchGridAsync)(__pyx_v_f, __pyx_v_grid_width, __pyx_v_grid_height, __pyx_v_hStream); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 5003, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":5004
 *             raise RuntimeError('Function "cuLaunchGridAsync" not found')
 *     err = (<CUresult (*)(CUfunction, int, int, CUstream) except ?CUDA_ERROR_NOT_FOUND nogil> __cuLaunchGridAsync)(f, grid_width, grid_height, hStream)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuParamSetTexRef(CUfunction hfunc, int texunit, CUtexref hTexRef) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":4997
 *     return err
 * 
 * cdef CUresult _cuLaunchGridAsync(CUfunction f, int grid_width, int grid_height, CUstream hStream) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuLaunchGridAsync
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuLaunchGridAsync", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":5006
 *     return err
 * 
 * cdef CUresult _cuParamSetTexRef(CUfunction hfunc, int texunit, CUtexref hTexRef) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuParamSetTexRef
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuParamSetTexRef(CUfunction __pyx_v_hfunc, int __pyx_v_texunit, CUtexref __pyx_v_hTexRef) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuParamSetTexRef", 1);
  __Pyx_TraceCall("_cuParamSetTexRef", __pyx_f[0], 5006, 1, __PYX_ERR(0, 5006, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":5008
 * cdef CUresult _cuParamSetTexRef(CUfunction hfunc, int texunit, CUtexref hTexRef) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuParamSetTexRef
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuParamSetTexRef == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 5008, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":5009
 *     global __cuParamSetTexRef
 *     cuPythonInit()
 *     if __cuParamSetTexRef == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuParamSetTexRef" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuParamSetTexRef == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":5010
 *     cuPythonInit()
 *     if __cuParamSetTexRef == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuParamSetTexRef" not found')
 *     err = (<CUresult (*)(CUfunction, int, CUtexref) except ?CUDA_ERROR_NOT_FOUND nogil> __cuParamSetTexRef)(hfunc, texunit, hTexRef)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":5011
 *     if __cuParamSetTexRef == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuParamSetTexRef" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUfunction, int, CUtexref) except ?CUDA_ERROR_NOT_FOUND nogil> __cuParamSetTexRef)(hfunc, texunit, hTexRef)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__266, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 5011, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 5011, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":5010
 *     cuPythonInit()
 *     if __cuParamSetTexRef == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuParamSetTexRef" not found')
 *     err = (<CUresult (*)(CUfunction, int, CUtexref) except ?CUDA_ERROR_NOT_FOUND nogil> __cuParamSetTexRef)(hfunc, texunit, hTexRef)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":5009
 *     global __cuParamSetTexRef
 *     cuPythonInit()
 *     if __cuParamSetTexRef == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuParamSetTexRef" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":5012
 *         with gil:
 *             raise RuntimeError('Function "cuParamSetTexRef" not found')
 *     err = (<CUresult (*)(CUfunction, int, CUtexref) except ?CUDA_ERROR_NOT_FOUND nogil> __cuParamSetTexRef)(hfunc, texunit, hTexRef)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUfunction, int, CUtexref))__pyx_v_4cuda_5_cuda_5ccuda___cuParamSetTexRef)(__pyx_v_hfunc, __pyx_v_texunit, __pyx_v_hTexRef); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 5012, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":5013
 *             raise RuntimeError('Function "cuParamSetTexRef" not found')
 *     err = (<CUresult (*)(CUfunction, int, CUtexref) except ?CUDA_ERROR_NOT_FOUND nogil> __cuParamSetTexRef)(hfunc, texunit, hTexRef)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuFuncSetSharedMemConfig(CUfunction hfunc, CUsharedconfig config) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":5006
 *     return err
 * 
 * cdef CUresult _cuParamSetTexRef(CUfunction hfunc, int texunit, CUtexref hTexRef) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuParamSetTexRef
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuParamSetTexRef", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":5015
 *     return err
 * 
 * cdef CUresult _cuFuncSetSharedMemConfig(CUfunction hfunc, CUsharedconfig config) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuFuncSetSharedMemConfig
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuFuncSetSharedMemConfig(CUfunction __pyx_v_hfunc, CUsharedconfig __pyx_v_config) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuFuncSetSharedMemConfig", 1);
  __Pyx_TraceCall("_cuFuncSetSharedMemConfig", __pyx_f[0], 5015, 1, __PYX_ERR(0, 5015, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":5017
 * cdef CUresult _cuFuncSetSharedMemConfig(CUfunction hfunc, CUsharedconfig config) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuFuncSetSharedMemConfig
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuFuncSetSharedMemConfig == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 5017, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":5018
 *     global __cuFuncSetSharedMemConfig
 *     cuPythonInit()
 *     if __cuFuncSetSharedMemConfig == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuFuncSetSharedMemConfig" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuFuncSetSharedMemConfig == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":5019
 *     cuPythonInit()
 *     if __cuFuncSetSharedMemConfig == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuFuncSetSharedMemConfig" not found')
 *     err = (<CUresult (*)(CUfunction, CUsharedconfig) except ?CUDA_ERROR_NOT_FOUND nogil> __cuFuncSetSharedMemConfig)(hfunc, config)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":5020
 *     if __cuFuncSetSharedMemConfig == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuFuncSetSharedMemConfig" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUfunction, CUsharedconfig) except ?CUDA_ERROR_NOT_FOUND nogil> __cuFuncSetSharedMemConfig)(hfunc, config)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__267, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 5020, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 5020, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":5019
 *     cuPythonInit()
 *     if __cuFuncSetSharedMemConfig == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuFuncSetSharedMemConfig" not found')
 *     err = (<CUresult (*)(CUfunction, CUsharedconfig) except ?CUDA_ERROR_NOT_FOUND nogil> __cuFuncSetSharedMemConfig)(hfunc, config)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":5018
 *     global __cuFuncSetSharedMemConfig
 *     cuPythonInit()
 *     if __cuFuncSetSharedMemConfig == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuFuncSetSharedMemConfig" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":5021
 *         with gil:
 *             raise RuntimeError('Function "cuFuncSetSharedMemConfig" not found')
 *     err = (<CUresult (*)(CUfunction, CUsharedconfig) except ?CUDA_ERROR_NOT_FOUND nogil> __cuFuncSetSharedMemConfig)(hfunc, config)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUfunction, CUsharedconfig))__pyx_v_4cuda_5_cuda_5ccuda___cuFuncSetSharedMemConfig)(__pyx_v_hfunc, __pyx_v_config); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 5021, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":5022
 *             raise RuntimeError('Function "cuFuncSetSharedMemConfig" not found')
 *     err = (<CUresult (*)(CUfunction, CUsharedconfig) except ?CUDA_ERROR_NOT_FOUND nogil> __cuFuncSetSharedMemConfig)(hfunc, config)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuGraphCreate(CUgraph* phGraph, unsigned int flags) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":5015
 *     return err
 * 
 * cdef CUresult _cuFuncSetSharedMemConfig(CUfunction hfunc, CUsharedconfig config) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuFuncSetSharedMemConfig
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuFuncSetSharedMemConfig", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":5024
 *     return err
 * 
 * cdef CUresult _cuGraphCreate(CUgraph* phGraph, unsigned int flags) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuGraphCreate
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuGraphCreate(CUgraph *__pyx_v_phGraph, unsigned int __pyx_v_flags) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuGraphCreate", 1);
  __Pyx_TraceCall("_cuGraphCreate", __pyx_f[0], 5024, 1, __PYX_ERR(0, 5024, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":5026
 * cdef CUresult _cuGraphCreate(CUgraph* phGraph, unsigned int flags) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuGraphCreate
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuGraphCreate == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 5026, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":5027
 *     global __cuGraphCreate
 *     cuPythonInit()
 *     if __cuGraphCreate == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuGraphCreate" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuGraphCreate == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":5028
 *     cuPythonInit()
 *     if __cuGraphCreate == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuGraphCreate" not found')
 *     err = (<CUresult (*)(CUgraph*, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphCreate)(phGraph, flags)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":5029
 *     if __cuGraphCreate == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuGraphCreate" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUgraph*, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphCreate)(phGraph, flags)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__268, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 5029, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 5029, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":5028
 *     cuPythonInit()
 *     if __cuGraphCreate == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuGraphCreate" not found')
 *     err = (<CUresult (*)(CUgraph*, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphCreate)(phGraph, flags)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":5027
 *     global __cuGraphCreate
 *     cuPythonInit()
 *     if __cuGraphCreate == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuGraphCreate" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":5030
 *         with gil:
 *             raise RuntimeError('Function "cuGraphCreate" not found')
 *     err = (<CUresult (*)(CUgraph*, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphCreate)(phGraph, flags)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUgraph *, unsigned int))__pyx_v_4cuda_5_cuda_5ccuda___cuGraphCreate)(__pyx_v_phGraph, __pyx_v_flags); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 5030, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":5031
 *             raise RuntimeError('Function "cuGraphCreate" not found')
 *     err = (<CUresult (*)(CUgraph*, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphCreate)(phGraph, flags)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuGraphAddKernelNode_v2(CUgraphNode* phGraphNode, CUgraph hGraph, const CUgraphNode* dependencies, size_t numDependencies, const CUDA_KERNEL_NODE_PARAMS* nodeParams) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":5024
 *     return err
 * 
 * cdef CUresult _cuGraphCreate(CUgraph* phGraph, unsigned int flags) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuGraphCreate
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuGraphCreate", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":5033
 *     return err
 * 
 * cdef CUresult _cuGraphAddKernelNode_v2(CUgraphNode* phGraphNode, CUgraph hGraph, const CUgraphNode* dependencies, size_t numDependencies, const CUDA_KERNEL_NODE_PARAMS* nodeParams) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuGraphAddKernelNode_v2
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuGraphAddKernelNode_v2(CUgraphNode *__pyx_v_phGraphNode, CUgraph __pyx_v_hGraph, CUgraphNode const *__pyx_v_dependencies, size_t __pyx_v_numDependencies, CUDA_KERNEL_NODE_PARAMS const *__pyx_v_nodeParams) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuGraphAddKernelNode_v2", 1);
  __Pyx_TraceCall("_cuGraphAddKernelNode_v2", __pyx_f[0], 5033, 1, __PYX_ERR(0, 5033, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":5035
 * cdef CUresult _cuGraphAddKernelNode_v2(CUgraphNode* phGraphNode, CUgraph hGraph, const CUgraphNode* dependencies, size_t numDependencies, const CUDA_KERNEL_NODE_PARAMS* nodeParams) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuGraphAddKernelNode_v2
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuGraphAddKernelNode_v2 == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 5035, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":5036
 *     global __cuGraphAddKernelNode_v2
 *     cuPythonInit()
 *     if __cuGraphAddKernelNode_v2 == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuGraphAddKernelNode_v2" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuGraphAddKernelNode_v2 == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":5037
 *     cuPythonInit()
 *     if __cuGraphAddKernelNode_v2 == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuGraphAddKernelNode_v2" not found')
 *     err = (<CUresult (*)(CUgraphNode*, CUgraph, const CUgraphNode*, size_t, const CUDA_KERNEL_NODE_PARAMS*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphAddKernelNode_v2)(phGraphNode, hGraph, dependencies, numDependencies, nodeParams)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":5038
 *     if __cuGraphAddKernelNode_v2 == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuGraphAddKernelNode_v2" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUgraphNode*, CUgraph, const CUgraphNode*, size_t, const CUDA_KERNEL_NODE_PARAMS*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphAddKernelNode_v2)(phGraphNode, hGraph, dependencies, numDependencies, nodeParams)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__269, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 5038, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 5038, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":5037
 *     cuPythonInit()
 *     if __cuGraphAddKernelNode_v2 == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuGraphAddKernelNode_v2" not found')
 *     err = (<CUresult (*)(CUgraphNode*, CUgraph, const CUgraphNode*, size_t, const CUDA_KERNEL_NODE_PARAMS*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphAddKernelNode_v2)(phGraphNode, hGraph, dependencies, numDependencies, nodeParams)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":5036
 *     global __cuGraphAddKernelNode_v2
 *     cuPythonInit()
 *     if __cuGraphAddKernelNode_v2 == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuGraphAddKernelNode_v2" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":5039
 *         with gil:
 *             raise RuntimeError('Function "cuGraphAddKernelNode_v2" not found')
 *     err = (<CUresult (*)(CUgraphNode*, CUgraph, const CUgraphNode*, size_t, const CUDA_KERNEL_NODE_PARAMS*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphAddKernelNode_v2)(phGraphNode, hGraph, dependencies, numDependencies, nodeParams)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUgraphNode *, CUgraph, CUgraphNode const *, size_t, CUDA_KERNEL_NODE_PARAMS const *))__pyx_v_4cuda_5_cuda_5ccuda___cuGraphAddKernelNode_v2)(__pyx_v_phGraphNode, __pyx_v_hGraph, __pyx_v_dependencies, __pyx_v_numDependencies, __pyx_v_nodeParams); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 5039, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":5040
 *             raise RuntimeError('Function "cuGraphAddKernelNode_v2" not found')
 *     err = (<CUresult (*)(CUgraphNode*, CUgraph, const CUgraphNode*, size_t, const CUDA_KERNEL_NODE_PARAMS*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphAddKernelNode_v2)(phGraphNode, hGraph, dependencies, numDependencies, nodeParams)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuGraphKernelNodeGetParams_v2(CUgraphNode hNode, CUDA_KERNEL_NODE_PARAMS* nodeParams) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":5033
 *     return err
 * 
 * cdef CUresult _cuGraphAddKernelNode_v2(CUgraphNode* phGraphNode, CUgraph hGraph, const CUgraphNode* dependencies, size_t numDependencies, const CUDA_KERNEL_NODE_PARAMS* nodeParams) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuGraphAddKernelNode_v2
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuGraphAddKernelNode_v2", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":5042
 *     return err
 * 
 * cdef CUresult _cuGraphKernelNodeGetParams_v2(CUgraphNode hNode, CUDA_KERNEL_NODE_PARAMS* nodeParams) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuGraphKernelNodeGetParams_v2
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuGraphKernelNodeGetParams_v2(CUgraphNode __pyx_v_hNode, CUDA_KERNEL_NODE_PARAMS *__pyx_v_nodeParams) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuGraphKernelNodeGetParams_v2", 1);
  __Pyx_TraceCall("_cuGraphKernelNodeGetParams_v2", __pyx_f[0], 5042, 1, __PYX_ERR(0, 5042, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":5044
 * cdef CUresult _cuGraphKernelNodeGetParams_v2(CUgraphNode hNode, CUDA_KERNEL_NODE_PARAMS* nodeParams) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuGraphKernelNodeGetParams_v2
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuGraphKernelNodeGetParams_v2 == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 5044, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":5045
 *     global __cuGraphKernelNodeGetParams_v2
 *     cuPythonInit()
 *     if __cuGraphKernelNodeGetParams_v2 == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuGraphKernelNodeGetParams_v2" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuGraphKernelNodeGetParams_v2 == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":5046
 *     cuPythonInit()
 *     if __cuGraphKernelNodeGetParams_v2 == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuGraphKernelNodeGetParams_v2" not found')
 *     err = (<CUresult (*)(CUgraphNode, CUDA_KERNEL_NODE_PARAMS*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphKernelNodeGetParams_v2)(hNode, nodeParams)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":5047
 *     if __cuGraphKernelNodeGetParams_v2 == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuGraphKernelNodeGetParams_v2" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUgraphNode, CUDA_KERNEL_NODE_PARAMS*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphKernelNodeGetParams_v2)(hNode, nodeParams)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__270, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 5047, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 5047, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":5046
 *     cuPythonInit()
 *     if __cuGraphKernelNodeGetParams_v2 == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuGraphKernelNodeGetParams_v2" not found')
 *     err = (<CUresult (*)(CUgraphNode, CUDA_KERNEL_NODE_PARAMS*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphKernelNodeGetParams_v2)(hNode, nodeParams)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":5045
 *     global __cuGraphKernelNodeGetParams_v2
 *     cuPythonInit()
 *     if __cuGraphKernelNodeGetParams_v2 == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuGraphKernelNodeGetParams_v2" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":5048
 *         with gil:
 *             raise RuntimeError('Function "cuGraphKernelNodeGetParams_v2" not found')
 *     err = (<CUresult (*)(CUgraphNode, CUDA_KERNEL_NODE_PARAMS*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphKernelNodeGetParams_v2)(hNode, nodeParams)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUgraphNode, CUDA_KERNEL_NODE_PARAMS *))__pyx_v_4cuda_5_cuda_5ccuda___cuGraphKernelNodeGetParams_v2)(__pyx_v_hNode, __pyx_v_nodeParams); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 5048, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":5049
 *             raise RuntimeError('Function "cuGraphKernelNodeGetParams_v2" not found')
 *     err = (<CUresult (*)(CUgraphNode, CUDA_KERNEL_NODE_PARAMS*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphKernelNodeGetParams_v2)(hNode, nodeParams)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuGraphKernelNodeSetParams_v2(CUgraphNode hNode, const CUDA_KERNEL_NODE_PARAMS* nodeParams) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":5042
 *     return err
 * 
 * cdef CUresult _cuGraphKernelNodeGetParams_v2(CUgraphNode hNode, CUDA_KERNEL_NODE_PARAMS* nodeParams) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuGraphKernelNodeGetParams_v2
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuGraphKernelNodeGetParams_v2", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":5051
 *     return err
 * 
 * cdef CUresult _cuGraphKernelNodeSetParams_v2(CUgraphNode hNode, const CUDA_KERNEL_NODE_PARAMS* nodeParams) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuGraphKernelNodeSetParams_v2
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuGraphKernelNodeSetParams_v2(CUgraphNode __pyx_v_hNode, CUDA_KERNEL_NODE_PARAMS const *__pyx_v_nodeParams) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuGraphKernelNodeSetParams_v2", 1);
  __Pyx_TraceCall("_cuGraphKernelNodeSetParams_v2", __pyx_f[0], 5051, 1, __PYX_ERR(0, 5051, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":5053
 * cdef CUresult _cuGraphKernelNodeSetParams_v2(CUgraphNode hNode, const CUDA_KERNEL_NODE_PARAMS* nodeParams) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuGraphKernelNodeSetParams_v2
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuGraphKernelNodeSetParams_v2 == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 5053, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":5054
 *     global __cuGraphKernelNodeSetParams_v2
 *     cuPythonInit()
 *     if __cuGraphKernelNodeSetParams_v2 == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuGraphKernelNodeSetParams_v2" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuGraphKernelNodeSetParams_v2 == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":5055
 *     cuPythonInit()
 *     if __cuGraphKernelNodeSetParams_v2 == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuGraphKernelNodeSetParams_v2" not found')
 *     err = (<CUresult (*)(CUgraphNode, const CUDA_KERNEL_NODE_PARAMS*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphKernelNodeSetParams_v2)(hNode, nodeParams)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":5056
 *     if __cuGraphKernelNodeSetParams_v2 == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuGraphKernelNodeSetParams_v2" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUgraphNode, const CUDA_KERNEL_NODE_PARAMS*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphKernelNodeSetParams_v2)(hNode, nodeParams)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__271, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 5056, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 5056, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":5055
 *     cuPythonInit()
 *     if __cuGraphKernelNodeSetParams_v2 == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuGraphKernelNodeSetParams_v2" not found')
 *     err = (<CUresult (*)(CUgraphNode, const CUDA_KERNEL_NODE_PARAMS*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphKernelNodeSetParams_v2)(hNode, nodeParams)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":5054
 *     global __cuGraphKernelNodeSetParams_v2
 *     cuPythonInit()
 *     if __cuGraphKernelNodeSetParams_v2 == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuGraphKernelNodeSetParams_v2" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":5057
 *         with gil:
 *             raise RuntimeError('Function "cuGraphKernelNodeSetParams_v2" not found')
 *     err = (<CUresult (*)(CUgraphNode, const CUDA_KERNEL_NODE_PARAMS*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphKernelNodeSetParams_v2)(hNode, nodeParams)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUgraphNode, CUDA_KERNEL_NODE_PARAMS const *))__pyx_v_4cuda_5_cuda_5ccuda___cuGraphKernelNodeSetParams_v2)(__pyx_v_hNode, __pyx_v_nodeParams); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 5057, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":5058
 *             raise RuntimeError('Function "cuGraphKernelNodeSetParams_v2" not found')
 *     err = (<CUresult (*)(CUgraphNode, const CUDA_KERNEL_NODE_PARAMS*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphKernelNodeSetParams_v2)(hNode, nodeParams)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuGraphAddMemcpyNode(CUgraphNode* phGraphNode, CUgraph hGraph, const CUgraphNode* dependencies, size_t numDependencies, const CUDA_MEMCPY3D* copyParams, CUcontext ctx) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":5051
 *     return err
 * 
 * cdef CUresult _cuGraphKernelNodeSetParams_v2(CUgraphNode hNode, const CUDA_KERNEL_NODE_PARAMS* nodeParams) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuGraphKernelNodeSetParams_v2
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuGraphKernelNodeSetParams_v2", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":5060
 *     return err
 * 
 * cdef CUresult _cuGraphAddMemcpyNode(CUgraphNode* phGraphNode, CUgraph hGraph, const CUgraphNode* dependencies, size_t numDependencies, const CUDA_MEMCPY3D* copyParams, CUcontext ctx) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuGraphAddMemcpyNode
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuGraphAddMemcpyNode(CUgraphNode *__pyx_v_phGraphNode, CUgraph __pyx_v_hGraph, CUgraphNode const *__pyx_v_dependencies, size_t __pyx_v_numDependencies, CUDA_MEMCPY3D const *__pyx_v_copyParams, CUcontext __pyx_v_ctx) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuGraphAddMemcpyNode", 1);
  __Pyx_TraceCall("_cuGraphAddMemcpyNode", __pyx_f[0], 5060, 1, __PYX_ERR(0, 5060, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":5062
 * cdef CUresult _cuGraphAddMemcpyNode(CUgraphNode* phGraphNode, CUgraph hGraph, const CUgraphNode* dependencies, size_t numDependencies, const CUDA_MEMCPY3D* copyParams, CUcontext ctx) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuGraphAddMemcpyNode
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuGraphAddMemcpyNode == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 5062, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":5063
 *     global __cuGraphAddMemcpyNode
 *     cuPythonInit()
 *     if __cuGraphAddMemcpyNode == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuGraphAddMemcpyNode" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuGraphAddMemcpyNode == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":5064
 *     cuPythonInit()
 *     if __cuGraphAddMemcpyNode == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuGraphAddMemcpyNode" not found')
 *     err = (<CUresult (*)(CUgraphNode*, CUgraph, const CUgraphNode*, size_t, const CUDA_MEMCPY3D*, CUcontext) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphAddMemcpyNode)(phGraphNode, hGraph, dependencies, numDependencies, copyParams, ctx)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":5065
 *     if __cuGraphAddMemcpyNode == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuGraphAddMemcpyNode" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUgraphNode*, CUgraph, const CUgraphNode*, size_t, const CUDA_MEMCPY3D*, CUcontext) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphAddMemcpyNode)(phGraphNode, hGraph, dependencies, numDependencies, copyParams, ctx)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__272, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 5065, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 5065, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":5064
 *     cuPythonInit()
 *     if __cuGraphAddMemcpyNode == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuGraphAddMemcpyNode" not found')
 *     err = (<CUresult (*)(CUgraphNode*, CUgraph, const CUgraphNode*, size_t, const CUDA_MEMCPY3D*, CUcontext) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphAddMemcpyNode)(phGraphNode, hGraph, dependencies, numDependencies, copyParams, ctx)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":5063
 *     global __cuGraphAddMemcpyNode
 *     cuPythonInit()
 *     if __cuGraphAddMemcpyNode == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuGraphAddMemcpyNode" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":5066
 *         with gil:
 *             raise RuntimeError('Function "cuGraphAddMemcpyNode" not found')
 *     err = (<CUresult (*)(CUgraphNode*, CUgraph, const CUgraphNode*, size_t, const CUDA_MEMCPY3D*, CUcontext) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphAddMemcpyNode)(phGraphNode, hGraph, dependencies, numDependencies, copyParams, ctx)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUgraphNode *, CUgraph, CUgraphNode const *, size_t, CUDA_MEMCPY3D const *, CUcontext))__pyx_v_4cuda_5_cuda_5ccuda___cuGraphAddMemcpyNode)(__pyx_v_phGraphNode, __pyx_v_hGraph, __pyx_v_dependencies, __pyx_v_numDependencies, __pyx_v_copyParams, __pyx_v_ctx); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 5066, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":5067
 *             raise RuntimeError('Function "cuGraphAddMemcpyNode" not found')
 *     err = (<CUresult (*)(CUgraphNode*, CUgraph, const CUgraphNode*, size_t, const CUDA_MEMCPY3D*, CUcontext) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphAddMemcpyNode)(phGraphNode, hGraph, dependencies, numDependencies, copyParams, ctx)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuGraphMemcpyNodeGetParams(CUgraphNode hNode, CUDA_MEMCPY3D* nodeParams) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":5060
 *     return err
 * 
 * cdef CUresult _cuGraphAddMemcpyNode(CUgraphNode* phGraphNode, CUgraph hGraph, const CUgraphNode* dependencies, size_t numDependencies, const CUDA_MEMCPY3D* copyParams, CUcontext ctx) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuGraphAddMemcpyNode
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuGraphAddMemcpyNode", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":5069
 *     return err
 * 
 * cdef CUresult _cuGraphMemcpyNodeGetParams(CUgraphNode hNode, CUDA_MEMCPY3D* nodeParams) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuGraphMemcpyNodeGetParams
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuGraphMemcpyNodeGetParams(CUgraphNode __pyx_v_hNode, CUDA_MEMCPY3D *__pyx_v_nodeParams) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuGraphMemcpyNodeGetParams", 1);
  __Pyx_TraceCall("_cuGraphMemcpyNodeGetParams", __pyx_f[0], 5069, 1, __PYX_ERR(0, 5069, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":5071
 * cdef CUresult _cuGraphMemcpyNodeGetParams(CUgraphNode hNode, CUDA_MEMCPY3D* nodeParams) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuGraphMemcpyNodeGetParams
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuGraphMemcpyNodeGetParams == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 5071, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":5072
 *     global __cuGraphMemcpyNodeGetParams
 *     cuPythonInit()
 *     if __cuGraphMemcpyNodeGetParams == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuGraphMemcpyNodeGetParams" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuGraphMemcpyNodeGetParams == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":5073
 *     cuPythonInit()
 *     if __cuGraphMemcpyNodeGetParams == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuGraphMemcpyNodeGetParams" not found')
 *     err = (<CUresult (*)(CUgraphNode, CUDA_MEMCPY3D*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphMemcpyNodeGetParams)(hNode, nodeParams)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":5074
 *     if __cuGraphMemcpyNodeGetParams == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuGraphMemcpyNodeGetParams" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUgraphNode, CUDA_MEMCPY3D*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphMemcpyNodeGetParams)(hNode, nodeParams)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__273, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 5074, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 5074, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":5073
 *     cuPythonInit()
 *     if __cuGraphMemcpyNodeGetParams == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuGraphMemcpyNodeGetParams" not found')
 *     err = (<CUresult (*)(CUgraphNode, CUDA_MEMCPY3D*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphMemcpyNodeGetParams)(hNode, nodeParams)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":5072
 *     global __cuGraphMemcpyNodeGetParams
 *     cuPythonInit()
 *     if __cuGraphMemcpyNodeGetParams == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuGraphMemcpyNodeGetParams" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":5075
 *         with gil:
 *             raise RuntimeError('Function "cuGraphMemcpyNodeGetParams" not found')
 *     err = (<CUresult (*)(CUgraphNode, CUDA_MEMCPY3D*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphMemcpyNodeGetParams)(hNode, nodeParams)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUgraphNode, CUDA_MEMCPY3D *))__pyx_v_4cuda_5_cuda_5ccuda___cuGraphMemcpyNodeGetParams)(__pyx_v_hNode, __pyx_v_nodeParams); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 5075, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":5076
 *             raise RuntimeError('Function "cuGraphMemcpyNodeGetParams" not found')
 *     err = (<CUresult (*)(CUgraphNode, CUDA_MEMCPY3D*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphMemcpyNodeGetParams)(hNode, nodeParams)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuGraphMemcpyNodeSetParams(CUgraphNode hNode, const CUDA_MEMCPY3D* nodeParams) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":5069
 *     return err
 * 
 * cdef CUresult _cuGraphMemcpyNodeGetParams(CUgraphNode hNode, CUDA_MEMCPY3D* nodeParams) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuGraphMemcpyNodeGetParams
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuGraphMemcpyNodeGetParams", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":5078
 *     return err
 * 
 * cdef CUresult _cuGraphMemcpyNodeSetParams(CUgraphNode hNode, const CUDA_MEMCPY3D* nodeParams) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuGraphMemcpyNodeSetParams
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuGraphMemcpyNodeSetParams(CUgraphNode __pyx_v_hNode, CUDA_MEMCPY3D const *__pyx_v_nodeParams) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuGraphMemcpyNodeSetParams", 1);
  __Pyx_TraceCall("_cuGraphMemcpyNodeSetParams", __pyx_f[0], 5078, 1, __PYX_ERR(0, 5078, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":5080
 * cdef CUresult _cuGraphMemcpyNodeSetParams(CUgraphNode hNode, const CUDA_MEMCPY3D* nodeParams) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuGraphMemcpyNodeSetParams
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuGraphMemcpyNodeSetParams == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 5080, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":5081
 *     global __cuGraphMemcpyNodeSetParams
 *     cuPythonInit()
 *     if __cuGraphMemcpyNodeSetParams == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuGraphMemcpyNodeSetParams" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuGraphMemcpyNodeSetParams == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":5082
 *     cuPythonInit()
 *     if __cuGraphMemcpyNodeSetParams == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuGraphMemcpyNodeSetParams" not found')
 *     err = (<CUresult (*)(CUgraphNode, const CUDA_MEMCPY3D*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphMemcpyNodeSetParams)(hNode, nodeParams)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":5083
 *     if __cuGraphMemcpyNodeSetParams == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuGraphMemcpyNodeSetParams" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUgraphNode, const CUDA_MEMCPY3D*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphMemcpyNodeSetParams)(hNode, nodeParams)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__274, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 5083, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 5083, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":5082
 *     cuPythonInit()
 *     if __cuGraphMemcpyNodeSetParams == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuGraphMemcpyNodeSetParams" not found')
 *     err = (<CUresult (*)(CUgraphNode, const CUDA_MEMCPY3D*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphMemcpyNodeSetParams)(hNode, nodeParams)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":5081
 *     global __cuGraphMemcpyNodeSetParams
 *     cuPythonInit()
 *     if __cuGraphMemcpyNodeSetParams == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuGraphMemcpyNodeSetParams" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":5084
 *         with gil:
 *             raise RuntimeError('Function "cuGraphMemcpyNodeSetParams" not found')
 *     err = (<CUresult (*)(CUgraphNode, const CUDA_MEMCPY3D*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphMemcpyNodeSetParams)(hNode, nodeParams)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUgraphNode, CUDA_MEMCPY3D const *))__pyx_v_4cuda_5_cuda_5ccuda___cuGraphMemcpyNodeSetParams)(__pyx_v_hNode, __pyx_v_nodeParams); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 5084, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":5085
 *             raise RuntimeError('Function "cuGraphMemcpyNodeSetParams" not found')
 *     err = (<CUresult (*)(CUgraphNode, const CUDA_MEMCPY3D*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphMemcpyNodeSetParams)(hNode, nodeParams)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuGraphAddMemsetNode(CUgraphNode* phGraphNode, CUgraph hGraph, const CUgraphNode* dependencies, size_t numDependencies, const CUDA_MEMSET_NODE_PARAMS* memsetParams, CUcontext ctx) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":5078
 *     return err
 * 
 * cdef CUresult _cuGraphMemcpyNodeSetParams(CUgraphNode hNode, const CUDA_MEMCPY3D* nodeParams) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuGraphMemcpyNodeSetParams
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuGraphMemcpyNodeSetParams", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":5087
 *     return err
 * 
 * cdef CUresult _cuGraphAddMemsetNode(CUgraphNode* phGraphNode, CUgraph hGraph, const CUgraphNode* dependencies, size_t numDependencies, const CUDA_MEMSET_NODE_PARAMS* memsetParams, CUcontext ctx) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuGraphAddMemsetNode
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuGraphAddMemsetNode(CUgraphNode *__pyx_v_phGraphNode, CUgraph __pyx_v_hGraph, CUgraphNode const *__pyx_v_dependencies, size_t __pyx_v_numDependencies, CUDA_MEMSET_NODE_PARAMS const *__pyx_v_memsetParams, CUcontext __pyx_v_ctx) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuGraphAddMemsetNode", 1);
  __Pyx_TraceCall("_cuGraphAddMemsetNode", __pyx_f[0], 5087, 1, __PYX_ERR(0, 5087, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":5089
 * cdef CUresult _cuGraphAddMemsetNode(CUgraphNode* phGraphNode, CUgraph hGraph, const CUgraphNode* dependencies, size_t numDependencies, const CUDA_MEMSET_NODE_PARAMS* memsetParams, CUcontext ctx) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuGraphAddMemsetNode
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuGraphAddMemsetNode == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 5089, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":5090
 *     global __cuGraphAddMemsetNode
 *     cuPythonInit()
 *     if __cuGraphAddMemsetNode == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuGraphAddMemsetNode" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuGraphAddMemsetNode == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":5091
 *     cuPythonInit()
 *     if __cuGraphAddMemsetNode == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuGraphAddMemsetNode" not found')
 *     err = (<CUresult (*)(CUgraphNode*, CUgraph, const CUgraphNode*, size_t, const CUDA_MEMSET_NODE_PARAMS*, CUcontext) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphAddMemsetNode)(phGraphNode, hGraph, dependencies, numDependencies, memsetParams, ctx)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":5092
 *     if __cuGraphAddMemsetNode == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuGraphAddMemsetNode" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUgraphNode*, CUgraph, const CUgraphNode*, size_t, const CUDA_MEMSET_NODE_PARAMS*, CUcontext) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphAddMemsetNode)(phGraphNode, hGraph, dependencies, numDependencies, memsetParams, ctx)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__275, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 5092, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 5092, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":5091
 *     cuPythonInit()
 *     if __cuGraphAddMemsetNode == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuGraphAddMemsetNode" not found')
 *     err = (<CUresult (*)(CUgraphNode*, CUgraph, const CUgraphNode*, size_t, const CUDA_MEMSET_NODE_PARAMS*, CUcontext) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphAddMemsetNode)(phGraphNode, hGraph, dependencies, numDependencies, memsetParams, ctx)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":5090
 *     global __cuGraphAddMemsetNode
 *     cuPythonInit()
 *     if __cuGraphAddMemsetNode == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuGraphAddMemsetNode" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":5093
 *         with gil:
 *             raise RuntimeError('Function "cuGraphAddMemsetNode" not found')
 *     err = (<CUresult (*)(CUgraphNode*, CUgraph, const CUgraphNode*, size_t, const CUDA_MEMSET_NODE_PARAMS*, CUcontext) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphAddMemsetNode)(phGraphNode, hGraph, dependencies, numDependencies, memsetParams, ctx)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUgraphNode *, CUgraph, CUgraphNode const *, size_t, CUDA_MEMSET_NODE_PARAMS const *, CUcontext))__pyx_v_4cuda_5_cuda_5ccuda___cuGraphAddMemsetNode)(__pyx_v_phGraphNode, __pyx_v_hGraph, __pyx_v_dependencies, __pyx_v_numDependencies, __pyx_v_memsetParams, __pyx_v_ctx); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 5093, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":5094
 *             raise RuntimeError('Function "cuGraphAddMemsetNode" not found')
 *     err = (<CUresult (*)(CUgraphNode*, CUgraph, const CUgraphNode*, size_t, const CUDA_MEMSET_NODE_PARAMS*, CUcontext) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphAddMemsetNode)(phGraphNode, hGraph, dependencies, numDependencies, memsetParams, ctx)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuGraphMemsetNodeGetParams(CUgraphNode hNode, CUDA_MEMSET_NODE_PARAMS* nodeParams) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":5087
 *     return err
 * 
 * cdef CUresult _cuGraphAddMemsetNode(CUgraphNode* phGraphNode, CUgraph hGraph, const CUgraphNode* dependencies, size_t numDependencies, const CUDA_MEMSET_NODE_PARAMS* memsetParams, CUcontext ctx) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuGraphAddMemsetNode
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuGraphAddMemsetNode", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":5096
 *     return err
 * 
 * cdef CUresult _cuGraphMemsetNodeGetParams(CUgraphNode hNode, CUDA_MEMSET_NODE_PARAMS* nodeParams) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuGraphMemsetNodeGetParams
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuGraphMemsetNodeGetParams(CUgraphNode __pyx_v_hNode, CUDA_MEMSET_NODE_PARAMS *__pyx_v_nodeParams) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuGraphMemsetNodeGetParams", 1);
  __Pyx_TraceCall("_cuGraphMemsetNodeGetParams", __pyx_f[0], 5096, 1, __PYX_ERR(0, 5096, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":5098
 * cdef CUresult _cuGraphMemsetNodeGetParams(CUgraphNode hNode, CUDA_MEMSET_NODE_PARAMS* nodeParams) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuGraphMemsetNodeGetParams
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuGraphMemsetNodeGetParams == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 5098, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":5099
 *     global __cuGraphMemsetNodeGetParams
 *     cuPythonInit()
 *     if __cuGraphMemsetNodeGetParams == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuGraphMemsetNodeGetParams" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuGraphMemsetNodeGetParams == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":5100
 *     cuPythonInit()
 *     if __cuGraphMemsetNodeGetParams == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuGraphMemsetNodeGetParams" not found')
 *     err = (<CUresult (*)(CUgraphNode, CUDA_MEMSET_NODE_PARAMS*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphMemsetNodeGetParams)(hNode, nodeParams)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":5101
 *     if __cuGraphMemsetNodeGetParams == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuGraphMemsetNodeGetParams" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUgraphNode, CUDA_MEMSET_NODE_PARAMS*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphMemsetNodeGetParams)(hNode, nodeParams)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__276, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 5101, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 5101, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":5100
 *     cuPythonInit()
 *     if __cuGraphMemsetNodeGetParams == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuGraphMemsetNodeGetParams" not found')
 *     err = (<CUresult (*)(CUgraphNode, CUDA_MEMSET_NODE_PARAMS*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphMemsetNodeGetParams)(hNode, nodeParams)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":5099
 *     global __cuGraphMemsetNodeGetParams
 *     cuPythonInit()
 *     if __cuGraphMemsetNodeGetParams == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuGraphMemsetNodeGetParams" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":5102
 *         with gil:
 *             raise RuntimeError('Function "cuGraphMemsetNodeGetParams" not found')
 *     err = (<CUresult (*)(CUgraphNode, CUDA_MEMSET_NODE_PARAMS*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphMemsetNodeGetParams)(hNode, nodeParams)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUgraphNode, CUDA_MEMSET_NODE_PARAMS *))__pyx_v_4cuda_5_cuda_5ccuda___cuGraphMemsetNodeGetParams)(__pyx_v_hNode, __pyx_v_nodeParams); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 5102, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":5103
 *             raise RuntimeError('Function "cuGraphMemsetNodeGetParams" not found')
 *     err = (<CUresult (*)(CUgraphNode, CUDA_MEMSET_NODE_PARAMS*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphMemsetNodeGetParams)(hNode, nodeParams)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuGraphMemsetNodeSetParams(CUgraphNode hNode, const CUDA_MEMSET_NODE_PARAMS* nodeParams) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":5096
 *     return err
 * 
 * cdef CUresult _cuGraphMemsetNodeGetParams(CUgraphNode hNode, CUDA_MEMSET_NODE_PARAMS* nodeParams) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuGraphMemsetNodeGetParams
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuGraphMemsetNodeGetParams", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":5105
 *     return err
 * 
 * cdef CUresult _cuGraphMemsetNodeSetParams(CUgraphNode hNode, const CUDA_MEMSET_NODE_PARAMS* nodeParams) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuGraphMemsetNodeSetParams
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuGraphMemsetNodeSetParams(CUgraphNode __pyx_v_hNode, CUDA_MEMSET_NODE_PARAMS const *__pyx_v_nodeParams) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuGraphMemsetNodeSetParams", 1);
  __Pyx_TraceCall("_cuGraphMemsetNodeSetParams", __pyx_f[0], 5105, 1, __PYX_ERR(0, 5105, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":5107
 * cdef CUresult _cuGraphMemsetNodeSetParams(CUgraphNode hNode, const CUDA_MEMSET_NODE_PARAMS* nodeParams) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuGraphMemsetNodeSetParams
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuGraphMemsetNodeSetParams == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 5107, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":5108
 *     global __cuGraphMemsetNodeSetParams
 *     cuPythonInit()
 *     if __cuGraphMemsetNodeSetParams == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuGraphMemsetNodeSetParams" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuGraphMemsetNodeSetParams == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":5109
 *     cuPythonInit()
 *     if __cuGraphMemsetNodeSetParams == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuGraphMemsetNodeSetParams" not found')
 *     err = (<CUresult (*)(CUgraphNode, const CUDA_MEMSET_NODE_PARAMS*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphMemsetNodeSetParams)(hNode, nodeParams)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":5110
 *     if __cuGraphMemsetNodeSetParams == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuGraphMemsetNodeSetParams" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUgraphNode, const CUDA_MEMSET_NODE_PARAMS*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphMemsetNodeSetParams)(hNode, nodeParams)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__277, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 5110, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 5110, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":5109
 *     cuPythonInit()
 *     if __cuGraphMemsetNodeSetParams == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuGraphMemsetNodeSetParams" not found')
 *     err = (<CUresult (*)(CUgraphNode, const CUDA_MEMSET_NODE_PARAMS*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphMemsetNodeSetParams)(hNode, nodeParams)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":5108
 *     global __cuGraphMemsetNodeSetParams
 *     cuPythonInit()
 *     if __cuGraphMemsetNodeSetParams == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuGraphMemsetNodeSetParams" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":5111
 *         with gil:
 *             raise RuntimeError('Function "cuGraphMemsetNodeSetParams" not found')
 *     err = (<CUresult (*)(CUgraphNode, const CUDA_MEMSET_NODE_PARAMS*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphMemsetNodeSetParams)(hNode, nodeParams)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUgraphNode, CUDA_MEMSET_NODE_PARAMS const *))__pyx_v_4cuda_5_cuda_5ccuda___cuGraphMemsetNodeSetParams)(__pyx_v_hNode, __pyx_v_nodeParams); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 5111, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":5112
 *             raise RuntimeError('Function "cuGraphMemsetNodeSetParams" not found')
 *     err = (<CUresult (*)(CUgraphNode, const CUDA_MEMSET_NODE_PARAMS*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphMemsetNodeSetParams)(hNode, nodeParams)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuGraphAddHostNode(CUgraphNode* phGraphNode, CUgraph hGraph, const CUgraphNode* dependencies, size_t numDependencies, const CUDA_HOST_NODE_PARAMS* nodeParams) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":5105
 *     return err
 * 
 * cdef CUresult _cuGraphMemsetNodeSetParams(CUgraphNode hNode, const CUDA_MEMSET_NODE_PARAMS* nodeParams) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuGraphMemsetNodeSetParams
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuGraphMemsetNodeSetParams", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":5114
 *     return err
 * 
 * cdef CUresult _cuGraphAddHostNode(CUgraphNode* phGraphNode, CUgraph hGraph, const CUgraphNode* dependencies, size_t numDependencies, const CUDA_HOST_NODE_PARAMS* nodeParams) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuGraphAddHostNode
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuGraphAddHostNode(CUgraphNode *__pyx_v_phGraphNode, CUgraph __pyx_v_hGraph, CUgraphNode const *__pyx_v_dependencies, size_t __pyx_v_numDependencies, CUDA_HOST_NODE_PARAMS const *__pyx_v_nodeParams) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuGraphAddHostNode", 1);
  __Pyx_TraceCall("_cuGraphAddHostNode", __pyx_f[0], 5114, 1, __PYX_ERR(0, 5114, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":5116
 * cdef CUresult _cuGraphAddHostNode(CUgraphNode* phGraphNode, CUgraph hGraph, const CUgraphNode* dependencies, size_t numDependencies, const CUDA_HOST_NODE_PARAMS* nodeParams) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuGraphAddHostNode
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuGraphAddHostNode == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 5116, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":5117
 *     global __cuGraphAddHostNode
 *     cuPythonInit()
 *     if __cuGraphAddHostNode == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuGraphAddHostNode" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuGraphAddHostNode == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":5118
 *     cuPythonInit()
 *     if __cuGraphAddHostNode == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuGraphAddHostNode" not found')
 *     err = (<CUresult (*)(CUgraphNode*, CUgraph, const CUgraphNode*, size_t, const CUDA_HOST_NODE_PARAMS*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphAddHostNode)(phGraphNode, hGraph, dependencies, numDependencies, nodeParams)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":5119
 *     if __cuGraphAddHostNode == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuGraphAddHostNode" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUgraphNode*, CUgraph, const CUgraphNode*, size_t, const CUDA_HOST_NODE_PARAMS*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphAddHostNode)(phGraphNode, hGraph, dependencies, numDependencies, nodeParams)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__278, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 5119, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 5119, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":5118
 *     cuPythonInit()
 *     if __cuGraphAddHostNode == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuGraphAddHostNode" not found')
 *     err = (<CUresult (*)(CUgraphNode*, CUgraph, const CUgraphNode*, size_t, const CUDA_HOST_NODE_PARAMS*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphAddHostNode)(phGraphNode, hGraph, dependencies, numDependencies, nodeParams)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":5117
 *     global __cuGraphAddHostNode
 *     cuPythonInit()
 *     if __cuGraphAddHostNode == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuGraphAddHostNode" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":5120
 *         with gil:
 *             raise RuntimeError('Function "cuGraphAddHostNode" not found')
 *     err = (<CUresult (*)(CUgraphNode*, CUgraph, const CUgraphNode*, size_t, const CUDA_HOST_NODE_PARAMS*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphAddHostNode)(phGraphNode, hGraph, dependencies, numDependencies, nodeParams)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUgraphNode *, CUgraph, CUgraphNode const *, size_t, CUDA_HOST_NODE_PARAMS const *))__pyx_v_4cuda_5_cuda_5ccuda___cuGraphAddHostNode)(__pyx_v_phGraphNode, __pyx_v_hGraph, __pyx_v_dependencies, __pyx_v_numDependencies, __pyx_v_nodeParams); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 5120, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":5121
 *             raise RuntimeError('Function "cuGraphAddHostNode" not found')
 *     err = (<CUresult (*)(CUgraphNode*, CUgraph, const CUgraphNode*, size_t, const CUDA_HOST_NODE_PARAMS*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphAddHostNode)(phGraphNode, hGraph, dependencies, numDependencies, nodeParams)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuGraphHostNodeGetParams(CUgraphNode hNode, CUDA_HOST_NODE_PARAMS* nodeParams) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":5114
 *     return err
 * 
 * cdef CUresult _cuGraphAddHostNode(CUgraphNode* phGraphNode, CUgraph hGraph, const CUgraphNode* dependencies, size_t numDependencies, const CUDA_HOST_NODE_PARAMS* nodeParams) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuGraphAddHostNode
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuGraphAddHostNode", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":5123
 *     return err
 * 
 * cdef CUresult _cuGraphHostNodeGetParams(CUgraphNode hNode, CUDA_HOST_NODE_PARAMS* nodeParams) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuGraphHostNodeGetParams
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuGraphHostNodeGetParams(CUgraphNode __pyx_v_hNode, CUDA_HOST_NODE_PARAMS *__pyx_v_nodeParams) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuGraphHostNodeGetParams", 1);
  __Pyx_TraceCall("_cuGraphHostNodeGetParams", __pyx_f[0], 5123, 1, __PYX_ERR(0, 5123, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":5125
 * cdef CUresult _cuGraphHostNodeGetParams(CUgraphNode hNode, CUDA_HOST_NODE_PARAMS* nodeParams) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuGraphHostNodeGetParams
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuGraphHostNodeGetParams == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 5125, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":5126
 *     global __cuGraphHostNodeGetParams
 *     cuPythonInit()
 *     if __cuGraphHostNodeGetParams == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuGraphHostNodeGetParams" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuGraphHostNodeGetParams == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":5127
 *     cuPythonInit()
 *     if __cuGraphHostNodeGetParams == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuGraphHostNodeGetParams" not found')
 *     err = (<CUresult (*)(CUgraphNode, CUDA_HOST_NODE_PARAMS*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphHostNodeGetParams)(hNode, nodeParams)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":5128
 *     if __cuGraphHostNodeGetParams == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuGraphHostNodeGetParams" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUgraphNode, CUDA_HOST_NODE_PARAMS*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphHostNodeGetParams)(hNode, nodeParams)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__279, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 5128, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 5128, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":5127
 *     cuPythonInit()
 *     if __cuGraphHostNodeGetParams == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuGraphHostNodeGetParams" not found')
 *     err = (<CUresult (*)(CUgraphNode, CUDA_HOST_NODE_PARAMS*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphHostNodeGetParams)(hNode, nodeParams)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":5126
 *     global __cuGraphHostNodeGetParams
 *     cuPythonInit()
 *     if __cuGraphHostNodeGetParams == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuGraphHostNodeGetParams" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":5129
 *         with gil:
 *             raise RuntimeError('Function "cuGraphHostNodeGetParams" not found')
 *     err = (<CUresult (*)(CUgraphNode, CUDA_HOST_NODE_PARAMS*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphHostNodeGetParams)(hNode, nodeParams)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUgraphNode, CUDA_HOST_NODE_PARAMS *))__pyx_v_4cuda_5_cuda_5ccuda___cuGraphHostNodeGetParams)(__pyx_v_hNode, __pyx_v_nodeParams); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 5129, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":5130
 *             raise RuntimeError('Function "cuGraphHostNodeGetParams" not found')
 *     err = (<CUresult (*)(CUgraphNode, CUDA_HOST_NODE_PARAMS*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphHostNodeGetParams)(hNode, nodeParams)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuGraphHostNodeSetParams(CUgraphNode hNode, const CUDA_HOST_NODE_PARAMS* nodeParams) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":5123
 *     return err
 * 
 * cdef CUresult _cuGraphHostNodeGetParams(CUgraphNode hNode, CUDA_HOST_NODE_PARAMS* nodeParams) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuGraphHostNodeGetParams
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuGraphHostNodeGetParams", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":5132
 *     return err
 * 
 * cdef CUresult _cuGraphHostNodeSetParams(CUgraphNode hNode, const CUDA_HOST_NODE_PARAMS* nodeParams) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuGraphHostNodeSetParams
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuGraphHostNodeSetParams(CUgraphNode __pyx_v_hNode, CUDA_HOST_NODE_PARAMS const *__pyx_v_nodeParams) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuGraphHostNodeSetParams", 1);
  __Pyx_TraceCall("_cuGraphHostNodeSetParams", __pyx_f[0], 5132, 1, __PYX_ERR(0, 5132, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":5134
 * cdef CUresult _cuGraphHostNodeSetParams(CUgraphNode hNode, const CUDA_HOST_NODE_PARAMS* nodeParams) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuGraphHostNodeSetParams
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuGraphHostNodeSetParams == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 5134, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":5135
 *     global __cuGraphHostNodeSetParams
 *     cuPythonInit()
 *     if __cuGraphHostNodeSetParams == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuGraphHostNodeSetParams" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuGraphHostNodeSetParams == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":5136
 *     cuPythonInit()
 *     if __cuGraphHostNodeSetParams == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuGraphHostNodeSetParams" not found')
 *     err = (<CUresult (*)(CUgraphNode, const CUDA_HOST_NODE_PARAMS*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphHostNodeSetParams)(hNode, nodeParams)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":5137
 *     if __cuGraphHostNodeSetParams == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuGraphHostNodeSetParams" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUgraphNode, const CUDA_HOST_NODE_PARAMS*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphHostNodeSetParams)(hNode, nodeParams)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__280, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 5137, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 5137, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":5136
 *     cuPythonInit()
 *     if __cuGraphHostNodeSetParams == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuGraphHostNodeSetParams" not found')
 *     err = (<CUresult (*)(CUgraphNode, const CUDA_HOST_NODE_PARAMS*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphHostNodeSetParams)(hNode, nodeParams)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":5135
 *     global __cuGraphHostNodeSetParams
 *     cuPythonInit()
 *     if __cuGraphHostNodeSetParams == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuGraphHostNodeSetParams" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":5138
 *         with gil:
 *             raise RuntimeError('Function "cuGraphHostNodeSetParams" not found')
 *     err = (<CUresult (*)(CUgraphNode, const CUDA_HOST_NODE_PARAMS*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphHostNodeSetParams)(hNode, nodeParams)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUgraphNode, CUDA_HOST_NODE_PARAMS const *))__pyx_v_4cuda_5_cuda_5ccuda___cuGraphHostNodeSetParams)(__pyx_v_hNode, __pyx_v_nodeParams); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 5138, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":5139
 *             raise RuntimeError('Function "cuGraphHostNodeSetParams" not found')
 *     err = (<CUresult (*)(CUgraphNode, const CUDA_HOST_NODE_PARAMS*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphHostNodeSetParams)(hNode, nodeParams)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuGraphAddChildGraphNode(CUgraphNode* phGraphNode, CUgraph hGraph, const CUgraphNode* dependencies, size_t numDependencies, CUgraph childGraph) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":5132
 *     return err
 * 
 * cdef CUresult _cuGraphHostNodeSetParams(CUgraphNode hNode, const CUDA_HOST_NODE_PARAMS* nodeParams) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuGraphHostNodeSetParams
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuGraphHostNodeSetParams", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":5141
 *     return err
 * 
 * cdef CUresult _cuGraphAddChildGraphNode(CUgraphNode* phGraphNode, CUgraph hGraph, const CUgraphNode* dependencies, size_t numDependencies, CUgraph childGraph) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuGraphAddChildGraphNode
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuGraphAddChildGraphNode(CUgraphNode *__pyx_v_phGraphNode, CUgraph __pyx_v_hGraph, CUgraphNode const *__pyx_v_dependencies, size_t __pyx_v_numDependencies, CUgraph __pyx_v_childGraph) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuGraphAddChildGraphNode", 1);
  __Pyx_TraceCall("_cuGraphAddChildGraphNode", __pyx_f[0], 5141, 1, __PYX_ERR(0, 5141, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":5143
 * cdef CUresult _cuGraphAddChildGraphNode(CUgraphNode* phGraphNode, CUgraph hGraph, const CUgraphNode* dependencies, size_t numDependencies, CUgraph childGraph) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuGraphAddChildGraphNode
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuGraphAddChildGraphNode == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 5143, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":5144
 *     global __cuGraphAddChildGraphNode
 *     cuPythonInit()
 *     if __cuGraphAddChildGraphNode == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuGraphAddChildGraphNode" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuGraphAddChildGraphNode == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":5145
 *     cuPythonInit()
 *     if __cuGraphAddChildGraphNode == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuGraphAddChildGraphNode" not found')
 *     err = (<CUresult (*)(CUgraphNode*, CUgraph, const CUgraphNode*, size_t, CUgraph) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphAddChildGraphNode)(phGraphNode, hGraph, dependencies, numDependencies, childGraph)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":5146
 *     if __cuGraphAddChildGraphNode == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuGraphAddChildGraphNode" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUgraphNode*, CUgraph, const CUgraphNode*, size_t, CUgraph) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphAddChildGraphNode)(phGraphNode, hGraph, dependencies, numDependencies, childGraph)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__281, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 5146, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 5146, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":5145
 *     cuPythonInit()
 *     if __cuGraphAddChildGraphNode == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuGraphAddChildGraphNode" not found')
 *     err = (<CUresult (*)(CUgraphNode*, CUgraph, const CUgraphNode*, size_t, CUgraph) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphAddChildGraphNode)(phGraphNode, hGraph, dependencies, numDependencies, childGraph)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":5144
 *     global __cuGraphAddChildGraphNode
 *     cuPythonInit()
 *     if __cuGraphAddChildGraphNode == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuGraphAddChildGraphNode" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":5147
 *         with gil:
 *             raise RuntimeError('Function "cuGraphAddChildGraphNode" not found')
 *     err = (<CUresult (*)(CUgraphNode*, CUgraph, const CUgraphNode*, size_t, CUgraph) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphAddChildGraphNode)(phGraphNode, hGraph, dependencies, numDependencies, childGraph)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUgraphNode *, CUgraph, CUgraphNode const *, size_t, CUgraph))__pyx_v_4cuda_5_cuda_5ccuda___cuGraphAddChildGraphNode)(__pyx_v_phGraphNode, __pyx_v_hGraph, __pyx_v_dependencies, __pyx_v_numDependencies, __pyx_v_childGraph); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 5147, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":5148
 *             raise RuntimeError('Function "cuGraphAddChildGraphNode" not found')
 *     err = (<CUresult (*)(CUgraphNode*, CUgraph, const CUgraphNode*, size_t, CUgraph) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphAddChildGraphNode)(phGraphNode, hGraph, dependencies, numDependencies, childGraph)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuGraphChildGraphNodeGetGraph(CUgraphNode hNode, CUgraph* phGraph) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":5141
 *     return err
 * 
 * cdef CUresult _cuGraphAddChildGraphNode(CUgraphNode* phGraphNode, CUgraph hGraph, const CUgraphNode* dependencies, size_t numDependencies, CUgraph childGraph) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuGraphAddChildGraphNode
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuGraphAddChildGraphNode", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":5150
 *     return err
 * 
 * cdef CUresult _cuGraphChildGraphNodeGetGraph(CUgraphNode hNode, CUgraph* phGraph) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuGraphChildGraphNodeGetGraph
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuGraphChildGraphNodeGetGraph(CUgraphNode __pyx_v_hNode, CUgraph *__pyx_v_phGraph) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuGraphChildGraphNodeGetGraph", 1);
  __Pyx_TraceCall("_cuGraphChildGraphNodeGetGraph", __pyx_f[0], 5150, 1, __PYX_ERR(0, 5150, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":5152
 * cdef CUresult _cuGraphChildGraphNodeGetGraph(CUgraphNode hNode, CUgraph* phGraph) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuGraphChildGraphNodeGetGraph
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuGraphChildGraphNodeGetGraph == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 5152, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":5153
 *     global __cuGraphChildGraphNodeGetGraph
 *     cuPythonInit()
 *     if __cuGraphChildGraphNodeGetGraph == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuGraphChildGraphNodeGetGraph" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuGraphChildGraphNodeGetGraph == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":5154
 *     cuPythonInit()
 *     if __cuGraphChildGraphNodeGetGraph == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuGraphChildGraphNodeGetGraph" not found')
 *     err = (<CUresult (*)(CUgraphNode, CUgraph*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphChildGraphNodeGetGraph)(hNode, phGraph)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":5155
 *     if __cuGraphChildGraphNodeGetGraph == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuGraphChildGraphNodeGetGraph" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUgraphNode, CUgraph*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphChildGraphNodeGetGraph)(hNode, phGraph)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__282, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 5155, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 5155, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":5154
 *     cuPythonInit()
 *     if __cuGraphChildGraphNodeGetGraph == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuGraphChildGraphNodeGetGraph" not found')
 *     err = (<CUresult (*)(CUgraphNode, CUgraph*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphChildGraphNodeGetGraph)(hNode, phGraph)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":5153
 *     global __cuGraphChildGraphNodeGetGraph
 *     cuPythonInit()
 *     if __cuGraphChildGraphNodeGetGraph == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuGraphChildGraphNodeGetGraph" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":5156
 *         with gil:
 *             raise RuntimeError('Function "cuGraphChildGraphNodeGetGraph" not found')
 *     err = (<CUresult (*)(CUgraphNode, CUgraph*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphChildGraphNodeGetGraph)(hNode, phGraph)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUgraphNode, CUgraph *))__pyx_v_4cuda_5_cuda_5ccuda___cuGraphChildGraphNodeGetGraph)(__pyx_v_hNode, __pyx_v_phGraph); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 5156, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":5157
 *             raise RuntimeError('Function "cuGraphChildGraphNodeGetGraph" not found')
 *     err = (<CUresult (*)(CUgraphNode, CUgraph*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphChildGraphNodeGetGraph)(hNode, phGraph)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuGraphAddEmptyNode(CUgraphNode* phGraphNode, CUgraph hGraph, const CUgraphNode* dependencies, size_t numDependencies) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":5150
 *     return err
 * 
 * cdef CUresult _cuGraphChildGraphNodeGetGraph(CUgraphNode hNode, CUgraph* phGraph) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuGraphChildGraphNodeGetGraph
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuGraphChildGraphNodeGetGraph", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":5159
 *     return err
 * 
 * cdef CUresult _cuGraphAddEmptyNode(CUgraphNode* phGraphNode, CUgraph hGraph, const CUgraphNode* dependencies, size_t numDependencies) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuGraphAddEmptyNode
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuGraphAddEmptyNode(CUgraphNode *__pyx_v_phGraphNode, CUgraph __pyx_v_hGraph, CUgraphNode const *__pyx_v_dependencies, size_t __pyx_v_numDependencies) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuGraphAddEmptyNode", 1);
  __Pyx_TraceCall("_cuGraphAddEmptyNode", __pyx_f[0], 5159, 1, __PYX_ERR(0, 5159, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":5161
 * cdef CUresult _cuGraphAddEmptyNode(CUgraphNode* phGraphNode, CUgraph hGraph, const CUgraphNode* dependencies, size_t numDependencies) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuGraphAddEmptyNode
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuGraphAddEmptyNode == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 5161, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":5162
 *     global __cuGraphAddEmptyNode
 *     cuPythonInit()
 *     if __cuGraphAddEmptyNode == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuGraphAddEmptyNode" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuGraphAddEmptyNode == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":5163
 *     cuPythonInit()
 *     if __cuGraphAddEmptyNode == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuGraphAddEmptyNode" not found')
 *     err = (<CUresult (*)(CUgraphNode*, CUgraph, const CUgraphNode*, size_t) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphAddEmptyNode)(phGraphNode, hGraph, dependencies, numDependencies)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":5164
 *     if __cuGraphAddEmptyNode == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuGraphAddEmptyNode" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUgraphNode*, CUgraph, const CUgraphNode*, size_t) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphAddEmptyNode)(phGraphNode, hGraph, dependencies, numDependencies)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__283, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 5164, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 5164, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":5163
 *     cuPythonInit()
 *     if __cuGraphAddEmptyNode == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuGraphAddEmptyNode" not found')
 *     err = (<CUresult (*)(CUgraphNode*, CUgraph, const CUgraphNode*, size_t) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphAddEmptyNode)(phGraphNode, hGraph, dependencies, numDependencies)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":5162
 *     global __cuGraphAddEmptyNode
 *     cuPythonInit()
 *     if __cuGraphAddEmptyNode == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuGraphAddEmptyNode" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":5165
 *         with gil:
 *             raise RuntimeError('Function "cuGraphAddEmptyNode" not found')
 *     err = (<CUresult (*)(CUgraphNode*, CUgraph, const CUgraphNode*, size_t) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphAddEmptyNode)(phGraphNode, hGraph, dependencies, numDependencies)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUgraphNode *, CUgraph, CUgraphNode const *, size_t))__pyx_v_4cuda_5_cuda_5ccuda___cuGraphAddEmptyNode)(__pyx_v_phGraphNode, __pyx_v_hGraph, __pyx_v_dependencies, __pyx_v_numDependencies); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 5165, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":5166
 *             raise RuntimeError('Function "cuGraphAddEmptyNode" not found')
 *     err = (<CUresult (*)(CUgraphNode*, CUgraph, const CUgraphNode*, size_t) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphAddEmptyNode)(phGraphNode, hGraph, dependencies, numDependencies)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuGraphAddEventRecordNode(CUgraphNode* phGraphNode, CUgraph hGraph, const CUgraphNode* dependencies, size_t numDependencies, CUevent event) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":5159
 *     return err
 * 
 * cdef CUresult _cuGraphAddEmptyNode(CUgraphNode* phGraphNode, CUgraph hGraph, const CUgraphNode* dependencies, size_t numDependencies) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuGraphAddEmptyNode
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuGraphAddEmptyNode", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":5168
 *     return err
 * 
 * cdef CUresult _cuGraphAddEventRecordNode(CUgraphNode* phGraphNode, CUgraph hGraph, const CUgraphNode* dependencies, size_t numDependencies, CUevent event) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuGraphAddEventRecordNode
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuGraphAddEventRecordNode(CUgraphNode *__pyx_v_phGraphNode, CUgraph __pyx_v_hGraph, CUgraphNode const *__pyx_v_dependencies, size_t __pyx_v_numDependencies, CUevent __pyx_v_event) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuGraphAddEventRecordNode", 1);
  __Pyx_TraceCall("_cuGraphAddEventRecordNode", __pyx_f[0], 5168, 1, __PYX_ERR(0, 5168, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":5170
 * cdef CUresult _cuGraphAddEventRecordNode(CUgraphNode* phGraphNode, CUgraph hGraph, const CUgraphNode* dependencies, size_t numDependencies, CUevent event) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuGraphAddEventRecordNode
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuGraphAddEventRecordNode == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 5170, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":5171
 *     global __cuGraphAddEventRecordNode
 *     cuPythonInit()
 *     if __cuGraphAddEventRecordNode == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuGraphAddEventRecordNode" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuGraphAddEventRecordNode == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":5172
 *     cuPythonInit()
 *     if __cuGraphAddEventRecordNode == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuGraphAddEventRecordNode" not found')
 *     err = (<CUresult (*)(CUgraphNode*, CUgraph, const CUgraphNode*, size_t, CUevent) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphAddEventRecordNode)(phGraphNode, hGraph, dependencies, numDependencies, event)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":5173
 *     if __cuGraphAddEventRecordNode == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuGraphAddEventRecordNode" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUgraphNode*, CUgraph, const CUgraphNode*, size_t, CUevent) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphAddEventRecordNode)(phGraphNode, hGraph, dependencies, numDependencies, event)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__284, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 5173, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 5173, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":5172
 *     cuPythonInit()
 *     if __cuGraphAddEventRecordNode == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuGraphAddEventRecordNode" not found')
 *     err = (<CUresult (*)(CUgraphNode*, CUgraph, const CUgraphNode*, size_t, CUevent) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphAddEventRecordNode)(phGraphNode, hGraph, dependencies, numDependencies, event)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":5171
 *     global __cuGraphAddEventRecordNode
 *     cuPythonInit()
 *     if __cuGraphAddEventRecordNode == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuGraphAddEventRecordNode" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":5174
 *         with gil:
 *             raise RuntimeError('Function "cuGraphAddEventRecordNode" not found')
 *     err = (<CUresult (*)(CUgraphNode*, CUgraph, const CUgraphNode*, size_t, CUevent) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphAddEventRecordNode)(phGraphNode, hGraph, dependencies, numDependencies, event)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUgraphNode *, CUgraph, CUgraphNode const *, size_t, CUevent))__pyx_v_4cuda_5_cuda_5ccuda___cuGraphAddEventRecordNode)(__pyx_v_phGraphNode, __pyx_v_hGraph, __pyx_v_dependencies, __pyx_v_numDependencies, __pyx_v_event); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 5174, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":5175
 *             raise RuntimeError('Function "cuGraphAddEventRecordNode" not found')
 *     err = (<CUresult (*)(CUgraphNode*, CUgraph, const CUgraphNode*, size_t, CUevent) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphAddEventRecordNode)(phGraphNode, hGraph, dependencies, numDependencies, event)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuGraphEventRecordNodeGetEvent(CUgraphNode hNode, CUevent* event_out) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":5168
 *     return err
 * 
 * cdef CUresult _cuGraphAddEventRecordNode(CUgraphNode* phGraphNode, CUgraph hGraph, const CUgraphNode* dependencies, size_t numDependencies, CUevent event) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuGraphAddEventRecordNode
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuGraphAddEventRecordNode", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":5177
 *     return err
 * 
 * cdef CUresult _cuGraphEventRecordNodeGetEvent(CUgraphNode hNode, CUevent* event_out) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuGraphEventRecordNodeGetEvent
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuGraphEventRecordNodeGetEvent(CUgraphNode __pyx_v_hNode, CUevent *__pyx_v_event_out) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuGraphEventRecordNodeGetEvent", 1);
  __Pyx_TraceCall("_cuGraphEventRecordNodeGetEvent", __pyx_f[0], 5177, 1, __PYX_ERR(0, 5177, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":5179
 * cdef CUresult _cuGraphEventRecordNodeGetEvent(CUgraphNode hNode, CUevent* event_out) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuGraphEventRecordNodeGetEvent
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuGraphEventRecordNodeGetEvent == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 5179, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":5180
 *     global __cuGraphEventRecordNodeGetEvent
 *     cuPythonInit()
 *     if __cuGraphEventRecordNodeGetEvent == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuGraphEventRecordNodeGetEvent" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuGraphEventRecordNodeGetEvent == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":5181
 *     cuPythonInit()
 *     if __cuGraphEventRecordNodeGetEvent == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuGraphEventRecordNodeGetEvent" not found')
 *     err = (<CUresult (*)(CUgraphNode, CUevent*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphEventRecordNodeGetEvent)(hNode, event_out)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":5182
 *     if __cuGraphEventRecordNodeGetEvent == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuGraphEventRecordNodeGetEvent" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUgraphNode, CUevent*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphEventRecordNodeGetEvent)(hNode, event_out)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__285, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 5182, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 5182, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":5181
 *     cuPythonInit()
 *     if __cuGraphEventRecordNodeGetEvent == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuGraphEventRecordNodeGetEvent" not found')
 *     err = (<CUresult (*)(CUgraphNode, CUevent*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphEventRecordNodeGetEvent)(hNode, event_out)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":5180
 *     global __cuGraphEventRecordNodeGetEvent
 *     cuPythonInit()
 *     if __cuGraphEventRecordNodeGetEvent == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuGraphEventRecordNodeGetEvent" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":5183
 *         with gil:
 *             raise RuntimeError('Function "cuGraphEventRecordNodeGetEvent" not found')
 *     err = (<CUresult (*)(CUgraphNode, CUevent*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphEventRecordNodeGetEvent)(hNode, event_out)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUgraphNode, CUevent *))__pyx_v_4cuda_5_cuda_5ccuda___cuGraphEventRecordNodeGetEvent)(__pyx_v_hNode, __pyx_v_event_out); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 5183, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":5184
 *             raise RuntimeError('Function "cuGraphEventRecordNodeGetEvent" not found')
 *     err = (<CUresult (*)(CUgraphNode, CUevent*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphEventRecordNodeGetEvent)(hNode, event_out)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuGraphEventRecordNodeSetEvent(CUgraphNode hNode, CUevent event) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":5177
 *     return err
 * 
 * cdef CUresult _cuGraphEventRecordNodeGetEvent(CUgraphNode hNode, CUevent* event_out) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuGraphEventRecordNodeGetEvent
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuGraphEventRecordNodeGetEvent", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":5186
 *     return err
 * 
 * cdef CUresult _cuGraphEventRecordNodeSetEvent(CUgraphNode hNode, CUevent event) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuGraphEventRecordNodeSetEvent
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuGraphEventRecordNodeSetEvent(CUgraphNode __pyx_v_hNode, CUevent __pyx_v_event) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuGraphEventRecordNodeSetEvent", 1);
  __Pyx_TraceCall("_cuGraphEventRecordNodeSetEvent", __pyx_f[0], 5186, 1, __PYX_ERR(0, 5186, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":5188
 * cdef CUresult _cuGraphEventRecordNodeSetEvent(CUgraphNode hNode, CUevent event) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuGraphEventRecordNodeSetEvent
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuGraphEventRecordNodeSetEvent == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 5188, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":5189
 *     global __cuGraphEventRecordNodeSetEvent
 *     cuPythonInit()
 *     if __cuGraphEventRecordNodeSetEvent == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuGraphEventRecordNodeSetEvent" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuGraphEventRecordNodeSetEvent == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":5190
 *     cuPythonInit()
 *     if __cuGraphEventRecordNodeSetEvent == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuGraphEventRecordNodeSetEvent" not found')
 *     err = (<CUresult (*)(CUgraphNode, CUevent) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphEventRecordNodeSetEvent)(hNode, event)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":5191
 *     if __cuGraphEventRecordNodeSetEvent == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuGraphEventRecordNodeSetEvent" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUgraphNode, CUevent) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphEventRecordNodeSetEvent)(hNode, event)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__286, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 5191, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 5191, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":5190
 *     cuPythonInit()
 *     if __cuGraphEventRecordNodeSetEvent == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuGraphEventRecordNodeSetEvent" not found')
 *     err = (<CUresult (*)(CUgraphNode, CUevent) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphEventRecordNodeSetEvent)(hNode, event)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":5189
 *     global __cuGraphEventRecordNodeSetEvent
 *     cuPythonInit()
 *     if __cuGraphEventRecordNodeSetEvent == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuGraphEventRecordNodeSetEvent" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":5192
 *         with gil:
 *             raise RuntimeError('Function "cuGraphEventRecordNodeSetEvent" not found')
 *     err = (<CUresult (*)(CUgraphNode, CUevent) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphEventRecordNodeSetEvent)(hNode, event)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUgraphNode, CUevent))__pyx_v_4cuda_5_cuda_5ccuda___cuGraphEventRecordNodeSetEvent)(__pyx_v_hNode, __pyx_v_event); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 5192, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":5193
 *             raise RuntimeError('Function "cuGraphEventRecordNodeSetEvent" not found')
 *     err = (<CUresult (*)(CUgraphNode, CUevent) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphEventRecordNodeSetEvent)(hNode, event)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuGraphAddEventWaitNode(CUgraphNode* phGraphNode, CUgraph hGraph, const CUgraphNode* dependencies, size_t numDependencies, CUevent event) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":5186
 *     return err
 * 
 * cdef CUresult _cuGraphEventRecordNodeSetEvent(CUgraphNode hNode, CUevent event) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuGraphEventRecordNodeSetEvent
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuGraphEventRecordNodeSetEvent", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":5195
 *     return err
 * 
 * cdef CUresult _cuGraphAddEventWaitNode(CUgraphNode* phGraphNode, CUgraph hGraph, const CUgraphNode* dependencies, size_t numDependencies, CUevent event) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuGraphAddEventWaitNode
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuGraphAddEventWaitNode(CUgraphNode *__pyx_v_phGraphNode, CUgraph __pyx_v_hGraph, CUgraphNode const *__pyx_v_dependencies, size_t __pyx_v_numDependencies, CUevent __pyx_v_event) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuGraphAddEventWaitNode", 1);
  __Pyx_TraceCall("_cuGraphAddEventWaitNode", __pyx_f[0], 5195, 1, __PYX_ERR(0, 5195, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":5197
 * cdef CUresult _cuGraphAddEventWaitNode(CUgraphNode* phGraphNode, CUgraph hGraph, const CUgraphNode* dependencies, size_t numDependencies, CUevent event) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuGraphAddEventWaitNode
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuGraphAddEventWaitNode == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 5197, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":5198
 *     global __cuGraphAddEventWaitNode
 *     cuPythonInit()
 *     if __cuGraphAddEventWaitNode == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuGraphAddEventWaitNode" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuGraphAddEventWaitNode == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":5199
 *     cuPythonInit()
 *     if __cuGraphAddEventWaitNode == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuGraphAddEventWaitNode" not found')
 *     err = (<CUresult (*)(CUgraphNode*, CUgraph, const CUgraphNode*, size_t, CUevent) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphAddEventWaitNode)(phGraphNode, hGraph, dependencies, numDependencies, event)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":5200
 *     if __cuGraphAddEventWaitNode == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuGraphAddEventWaitNode" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUgraphNode*, CUgraph, const CUgraphNode*, size_t, CUevent) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphAddEventWaitNode)(phGraphNode, hGraph, dependencies, numDependencies, event)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__287, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 5200, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 5200, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":5199
 *     cuPythonInit()
 *     if __cuGraphAddEventWaitNode == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuGraphAddEventWaitNode" not found')
 *     err = (<CUresult (*)(CUgraphNode*, CUgraph, const CUgraphNode*, size_t, CUevent) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphAddEventWaitNode)(phGraphNode, hGraph, dependencies, numDependencies, event)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":5198
 *     global __cuGraphAddEventWaitNode
 *     cuPythonInit()
 *     if __cuGraphAddEventWaitNode == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuGraphAddEventWaitNode" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":5201
 *         with gil:
 *             raise RuntimeError('Function "cuGraphAddEventWaitNode" not found')
 *     err = (<CUresult (*)(CUgraphNode*, CUgraph, const CUgraphNode*, size_t, CUevent) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphAddEventWaitNode)(phGraphNode, hGraph, dependencies, numDependencies, event)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUgraphNode *, CUgraph, CUgraphNode const *, size_t, CUevent))__pyx_v_4cuda_5_cuda_5ccuda___cuGraphAddEventWaitNode)(__pyx_v_phGraphNode, __pyx_v_hGraph, __pyx_v_dependencies, __pyx_v_numDependencies, __pyx_v_event); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 5201, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":5202
 *             raise RuntimeError('Function "cuGraphAddEventWaitNode" not found')
 *     err = (<CUresult (*)(CUgraphNode*, CUgraph, const CUgraphNode*, size_t, CUevent) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphAddEventWaitNode)(phGraphNode, hGraph, dependencies, numDependencies, event)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuGraphEventWaitNodeGetEvent(CUgraphNode hNode, CUevent* event_out) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":5195
 *     return err
 * 
 * cdef CUresult _cuGraphAddEventWaitNode(CUgraphNode* phGraphNode, CUgraph hGraph, const CUgraphNode* dependencies, size_t numDependencies, CUevent event) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuGraphAddEventWaitNode
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuGraphAddEventWaitNode", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":5204
 *     return err
 * 
 * cdef CUresult _cuGraphEventWaitNodeGetEvent(CUgraphNode hNode, CUevent* event_out) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuGraphEventWaitNodeGetEvent
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuGraphEventWaitNodeGetEvent(CUgraphNode __pyx_v_hNode, CUevent *__pyx_v_event_out) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuGraphEventWaitNodeGetEvent", 1);
  __Pyx_TraceCall("_cuGraphEventWaitNodeGetEvent", __pyx_f[0], 5204, 1, __PYX_ERR(0, 5204, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":5206
 * cdef CUresult _cuGraphEventWaitNodeGetEvent(CUgraphNode hNode, CUevent* event_out) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuGraphEventWaitNodeGetEvent
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuGraphEventWaitNodeGetEvent == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 5206, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":5207
 *     global __cuGraphEventWaitNodeGetEvent
 *     cuPythonInit()
 *     if __cuGraphEventWaitNodeGetEvent == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuGraphEventWaitNodeGetEvent" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuGraphEventWaitNodeGetEvent == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":5208
 *     cuPythonInit()
 *     if __cuGraphEventWaitNodeGetEvent == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuGraphEventWaitNodeGetEvent" not found')
 *     err = (<CUresult (*)(CUgraphNode, CUevent*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphEventWaitNodeGetEvent)(hNode, event_out)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":5209
 *     if __cuGraphEventWaitNodeGetEvent == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuGraphEventWaitNodeGetEvent" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUgraphNode, CUevent*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphEventWaitNodeGetEvent)(hNode, event_out)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__288, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 5209, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 5209, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":5208
 *     cuPythonInit()
 *     if __cuGraphEventWaitNodeGetEvent == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuGraphEventWaitNodeGetEvent" not found')
 *     err = (<CUresult (*)(CUgraphNode, CUevent*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphEventWaitNodeGetEvent)(hNode, event_out)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":5207
 *     global __cuGraphEventWaitNodeGetEvent
 *     cuPythonInit()
 *     if __cuGraphEventWaitNodeGetEvent == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuGraphEventWaitNodeGetEvent" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":5210
 *         with gil:
 *             raise RuntimeError('Function "cuGraphEventWaitNodeGetEvent" not found')
 *     err = (<CUresult (*)(CUgraphNode, CUevent*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphEventWaitNodeGetEvent)(hNode, event_out)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUgraphNode, CUevent *))__pyx_v_4cuda_5_cuda_5ccuda___cuGraphEventWaitNodeGetEvent)(__pyx_v_hNode, __pyx_v_event_out); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 5210, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":5211
 *             raise RuntimeError('Function "cuGraphEventWaitNodeGetEvent" not found')
 *     err = (<CUresult (*)(CUgraphNode, CUevent*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphEventWaitNodeGetEvent)(hNode, event_out)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuGraphEventWaitNodeSetEvent(CUgraphNode hNode, CUevent event) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":5204
 *     return err
 * 
 * cdef CUresult _cuGraphEventWaitNodeGetEvent(CUgraphNode hNode, CUevent* event_out) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuGraphEventWaitNodeGetEvent
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuGraphEventWaitNodeGetEvent", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":5213
 *     return err
 * 
 * cdef CUresult _cuGraphEventWaitNodeSetEvent(CUgraphNode hNode, CUevent event) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuGraphEventWaitNodeSetEvent
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuGraphEventWaitNodeSetEvent(CUgraphNode __pyx_v_hNode, CUevent __pyx_v_event) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuGraphEventWaitNodeSetEvent", 1);
  __Pyx_TraceCall("_cuGraphEventWaitNodeSetEvent", __pyx_f[0], 5213, 1, __PYX_ERR(0, 5213, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":5215
 * cdef CUresult _cuGraphEventWaitNodeSetEvent(CUgraphNode hNode, CUevent event) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuGraphEventWaitNodeSetEvent
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuGraphEventWaitNodeSetEvent == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 5215, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":5216
 *     global __cuGraphEventWaitNodeSetEvent
 *     cuPythonInit()
 *     if __cuGraphEventWaitNodeSetEvent == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuGraphEventWaitNodeSetEvent" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuGraphEventWaitNodeSetEvent == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":5217
 *     cuPythonInit()
 *     if __cuGraphEventWaitNodeSetEvent == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuGraphEventWaitNodeSetEvent" not found')
 *     err = (<CUresult (*)(CUgraphNode, CUevent) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphEventWaitNodeSetEvent)(hNode, event)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":5218
 *     if __cuGraphEventWaitNodeSetEvent == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuGraphEventWaitNodeSetEvent" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUgraphNode, CUevent) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphEventWaitNodeSetEvent)(hNode, event)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__289, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 5218, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 5218, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":5217
 *     cuPythonInit()
 *     if __cuGraphEventWaitNodeSetEvent == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuGraphEventWaitNodeSetEvent" not found')
 *     err = (<CUresult (*)(CUgraphNode, CUevent) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphEventWaitNodeSetEvent)(hNode, event)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":5216
 *     global __cuGraphEventWaitNodeSetEvent
 *     cuPythonInit()
 *     if __cuGraphEventWaitNodeSetEvent == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuGraphEventWaitNodeSetEvent" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":5219
 *         with gil:
 *             raise RuntimeError('Function "cuGraphEventWaitNodeSetEvent" not found')
 *     err = (<CUresult (*)(CUgraphNode, CUevent) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphEventWaitNodeSetEvent)(hNode, event)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUgraphNode, CUevent))__pyx_v_4cuda_5_cuda_5ccuda___cuGraphEventWaitNodeSetEvent)(__pyx_v_hNode, __pyx_v_event); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 5219, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":5220
 *             raise RuntimeError('Function "cuGraphEventWaitNodeSetEvent" not found')
 *     err = (<CUresult (*)(CUgraphNode, CUevent) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphEventWaitNodeSetEvent)(hNode, event)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuGraphAddExternalSemaphoresSignalNode(CUgraphNode* phGraphNode, CUgraph hGraph, const CUgraphNode* dependencies, size_t numDependencies, const CUDA_EXT_SEM_SIGNAL_NODE_PARAMS* nodeParams) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":5213
 *     return err
 * 
 * cdef CUresult _cuGraphEventWaitNodeSetEvent(CUgraphNode hNode, CUevent event) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuGraphEventWaitNodeSetEvent
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuGraphEventWaitNodeSetEvent", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":5222
 *     return err
 * 
 * cdef CUresult _cuGraphAddExternalSemaphoresSignalNode(CUgraphNode* phGraphNode, CUgraph hGraph, const CUgraphNode* dependencies, size_t numDependencies, const CUDA_EXT_SEM_SIGNAL_NODE_PARAMS* nodeParams) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuGraphAddExternalSemaphoresSignalNode
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuGraphAddExternalSemaphoresSignalNode(CUgraphNode *__pyx_v_phGraphNode, CUgraph __pyx_v_hGraph, CUgraphNode const *__pyx_v_dependencies, size_t __pyx_v_numDependencies, CUDA_EXT_SEM_SIGNAL_NODE_PARAMS const *__pyx_v_nodeParams) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuGraphAddExternalSemaphoresSignalNode", 1);
  __Pyx_TraceCall("_cuGraphAddExternalSemaphoresSignalNode", __pyx_f[0], 5222, 1, __PYX_ERR(0, 5222, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":5224
 * cdef CUresult _cuGraphAddExternalSemaphoresSignalNode(CUgraphNode* phGraphNode, CUgraph hGraph, const CUgraphNode* dependencies, size_t numDependencies, const CUDA_EXT_SEM_SIGNAL_NODE_PARAMS* nodeParams) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuGraphAddExternalSemaphoresSignalNode
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuGraphAddExternalSemaphoresSignalNode == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 5224, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":5225
 *     global __cuGraphAddExternalSemaphoresSignalNode
 *     cuPythonInit()
 *     if __cuGraphAddExternalSemaphoresSignalNode == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuGraphAddExternalSemaphoresSignalNode" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuGraphAddExternalSemaphoresSignalNode == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":5226
 *     cuPythonInit()
 *     if __cuGraphAddExternalSemaphoresSignalNode == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuGraphAddExternalSemaphoresSignalNode" not found')
 *     err = (<CUresult (*)(CUgraphNode*, CUgraph, const CUgraphNode*, size_t, const CUDA_EXT_SEM_SIGNAL_NODE_PARAMS*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphAddExternalSemaphoresSignalNode)(phGraphNode, hGraph, dependencies, numDependencies, nodeParams)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":5227
 *     if __cuGraphAddExternalSemaphoresSignalNode == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuGraphAddExternalSemaphoresSignalNode" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUgraphNode*, CUgraph, const CUgraphNode*, size_t, const CUDA_EXT_SEM_SIGNAL_NODE_PARAMS*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphAddExternalSemaphoresSignalNode)(phGraphNode, hGraph, dependencies, numDependencies, nodeParams)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__290, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 5227, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 5227, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":5226
 *     cuPythonInit()
 *     if __cuGraphAddExternalSemaphoresSignalNode == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuGraphAddExternalSemaphoresSignalNode" not found')
 *     err = (<CUresult (*)(CUgraphNode*, CUgraph, const CUgraphNode*, size_t, const CUDA_EXT_SEM_SIGNAL_NODE_PARAMS*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphAddExternalSemaphoresSignalNode)(phGraphNode, hGraph, dependencies, numDependencies, nodeParams)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":5225
 *     global __cuGraphAddExternalSemaphoresSignalNode
 *     cuPythonInit()
 *     if __cuGraphAddExternalSemaphoresSignalNode == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuGraphAddExternalSemaphoresSignalNode" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":5228
 *         with gil:
 *             raise RuntimeError('Function "cuGraphAddExternalSemaphoresSignalNode" not found')
 *     err = (<CUresult (*)(CUgraphNode*, CUgraph, const CUgraphNode*, size_t, const CUDA_EXT_SEM_SIGNAL_NODE_PARAMS*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphAddExternalSemaphoresSignalNode)(phGraphNode, hGraph, dependencies, numDependencies, nodeParams)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUgraphNode *, CUgraph, CUgraphNode const *, size_t, CUDA_EXT_SEM_SIGNAL_NODE_PARAMS const *))__pyx_v_4cuda_5_cuda_5ccuda___cuGraphAddExternalSemaphoresSignalNode)(__pyx_v_phGraphNode, __pyx_v_hGraph, __pyx_v_dependencies, __pyx_v_numDependencies, __pyx_v_nodeParams); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 5228, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":5229
 *             raise RuntimeError('Function "cuGraphAddExternalSemaphoresSignalNode" not found')
 *     err = (<CUresult (*)(CUgraphNode*, CUgraph, const CUgraphNode*, size_t, const CUDA_EXT_SEM_SIGNAL_NODE_PARAMS*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphAddExternalSemaphoresSignalNode)(phGraphNode, hGraph, dependencies, numDependencies, nodeParams)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuGraphExternalSemaphoresSignalNodeGetParams(CUgraphNode hNode, CUDA_EXT_SEM_SIGNAL_NODE_PARAMS* params_out) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":5222
 *     return err
 * 
 * cdef CUresult _cuGraphAddExternalSemaphoresSignalNode(CUgraphNode* phGraphNode, CUgraph hGraph, const CUgraphNode* dependencies, size_t numDependencies, const CUDA_EXT_SEM_SIGNAL_NODE_PARAMS* nodeParams) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuGraphAddExternalSemaphoresSignalNode
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuGraphAddExternalSemaphoresSignalNode", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":5231
 *     return err
 * 
 * cdef CUresult _cuGraphExternalSemaphoresSignalNodeGetParams(CUgraphNode hNode, CUDA_EXT_SEM_SIGNAL_NODE_PARAMS* params_out) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuGraphExternalSemaphoresSignalNodeGetParams
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuGraphExternalSemaphoresSignalNodeGetParams(CUgraphNode __pyx_v_hNode, CUDA_EXT_SEM_SIGNAL_NODE_PARAMS *__pyx_v_params_out) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuGraphExternalSemaphoresSignalNodeGetParams", 1);
  __Pyx_TraceCall("_cuGraphExternalSemaphoresSignalNodeGetParams", __pyx_f[0], 5231, 1, __PYX_ERR(0, 5231, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":5233
 * cdef CUresult _cuGraphExternalSemaphoresSignalNodeGetParams(CUgraphNode hNode, CUDA_EXT_SEM_SIGNAL_NODE_PARAMS* params_out) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuGraphExternalSemaphoresSignalNodeGetParams
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuGraphExternalSemaphoresSignalNodeGetParams == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 5233, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":5234
 *     global __cuGraphExternalSemaphoresSignalNodeGetParams
 *     cuPythonInit()
 *     if __cuGraphExternalSemaphoresSignalNodeGetParams == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuGraphExternalSemaphoresSignalNodeGetParams" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuGraphExternalSemaphoresSignalNodeGetParams == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":5235
 *     cuPythonInit()
 *     if __cuGraphExternalSemaphoresSignalNodeGetParams == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuGraphExternalSemaphoresSignalNodeGetParams" not found')
 *     err = (<CUresult (*)(CUgraphNode, CUDA_EXT_SEM_SIGNAL_NODE_PARAMS*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphExternalSemaphoresSignalNodeGetParams)(hNode, params_out)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":5236
 *     if __cuGraphExternalSemaphoresSignalNodeGetParams == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuGraphExternalSemaphoresSignalNodeGetParams" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUgraphNode, CUDA_EXT_SEM_SIGNAL_NODE_PARAMS*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphExternalSemaphoresSignalNodeGetParams)(hNode, params_out)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__291, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 5236, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 5236, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":5235
 *     cuPythonInit()
 *     if __cuGraphExternalSemaphoresSignalNodeGetParams == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuGraphExternalSemaphoresSignalNodeGetParams" not found')
 *     err = (<CUresult (*)(CUgraphNode, CUDA_EXT_SEM_SIGNAL_NODE_PARAMS*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphExternalSemaphoresSignalNodeGetParams)(hNode, params_out)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":5234
 *     global __cuGraphExternalSemaphoresSignalNodeGetParams
 *     cuPythonInit()
 *     if __cuGraphExternalSemaphoresSignalNodeGetParams == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuGraphExternalSemaphoresSignalNodeGetParams" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":5237
 *         with gil:
 *             raise RuntimeError('Function "cuGraphExternalSemaphoresSignalNodeGetParams" not found')
 *     err = (<CUresult (*)(CUgraphNode, CUDA_EXT_SEM_SIGNAL_NODE_PARAMS*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphExternalSemaphoresSignalNodeGetParams)(hNode, params_out)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUgraphNode, CUDA_EXT_SEM_SIGNAL_NODE_PARAMS *))__pyx_v_4cuda_5_cuda_5ccuda___cuGraphExternalSemaphoresSignalNodeGetParams)(__pyx_v_hNode, __pyx_v_params_out); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 5237, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":5238
 *             raise RuntimeError('Function "cuGraphExternalSemaphoresSignalNodeGetParams" not found')
 *     err = (<CUresult (*)(CUgraphNode, CUDA_EXT_SEM_SIGNAL_NODE_PARAMS*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphExternalSemaphoresSignalNodeGetParams)(hNode, params_out)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuGraphExternalSemaphoresSignalNodeSetParams(CUgraphNode hNode, const CUDA_EXT_SEM_SIGNAL_NODE_PARAMS* nodeParams) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":5231
 *     return err
 * 
 * cdef CUresult _cuGraphExternalSemaphoresSignalNodeGetParams(CUgraphNode hNode, CUDA_EXT_SEM_SIGNAL_NODE_PARAMS* params_out) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuGraphExternalSemaphoresSignalNodeGetParams
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuGraphExternalSemaphoresSignalNodeGetParams", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":5240
 *     return err
 * 
 * cdef CUresult _cuGraphExternalSemaphoresSignalNodeSetParams(CUgraphNode hNode, const CUDA_EXT_SEM_SIGNAL_NODE_PARAMS* nodeParams) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuGraphExternalSemaphoresSignalNodeSetParams
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuGraphExternalSemaphoresSignalNodeSetParams(CUgraphNode __pyx_v_hNode, CUDA_EXT_SEM_SIGNAL_NODE_PARAMS const *__pyx_v_nodeParams) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuGraphExternalSemaphoresSignalNodeSetParams", 1);
  __Pyx_TraceCall("_cuGraphExternalSemaphoresSignalNodeSetParams", __pyx_f[0], 5240, 1, __PYX_ERR(0, 5240, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":5242
 * cdef CUresult _cuGraphExternalSemaphoresSignalNodeSetParams(CUgraphNode hNode, const CUDA_EXT_SEM_SIGNAL_NODE_PARAMS* nodeParams) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuGraphExternalSemaphoresSignalNodeSetParams
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuGraphExternalSemaphoresSignalNodeSetParams == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 5242, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":5243
 *     global __cuGraphExternalSemaphoresSignalNodeSetParams
 *     cuPythonInit()
 *     if __cuGraphExternalSemaphoresSignalNodeSetParams == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuGraphExternalSemaphoresSignalNodeSetParams" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuGraphExternalSemaphoresSignalNodeSetParams == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":5244
 *     cuPythonInit()
 *     if __cuGraphExternalSemaphoresSignalNodeSetParams == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuGraphExternalSemaphoresSignalNodeSetParams" not found')
 *     err = (<CUresult (*)(CUgraphNode, const CUDA_EXT_SEM_SIGNAL_NODE_PARAMS*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphExternalSemaphoresSignalNodeSetParams)(hNode, nodeParams)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":5245
 *     if __cuGraphExternalSemaphoresSignalNodeSetParams == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuGraphExternalSemaphoresSignalNodeSetParams" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUgraphNode, const CUDA_EXT_SEM_SIGNAL_NODE_PARAMS*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphExternalSemaphoresSignalNodeSetParams)(hNode, nodeParams)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__292, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 5245, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 5245, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":5244
 *     cuPythonInit()
 *     if __cuGraphExternalSemaphoresSignalNodeSetParams == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuGraphExternalSemaphoresSignalNodeSetParams" not found')
 *     err = (<CUresult (*)(CUgraphNode, const CUDA_EXT_SEM_SIGNAL_NODE_PARAMS*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphExternalSemaphoresSignalNodeSetParams)(hNode, nodeParams)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":5243
 *     global __cuGraphExternalSemaphoresSignalNodeSetParams
 *     cuPythonInit()
 *     if __cuGraphExternalSemaphoresSignalNodeSetParams == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuGraphExternalSemaphoresSignalNodeSetParams" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":5246
 *         with gil:
 *             raise RuntimeError('Function "cuGraphExternalSemaphoresSignalNodeSetParams" not found')
 *     err = (<CUresult (*)(CUgraphNode, const CUDA_EXT_SEM_SIGNAL_NODE_PARAMS*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphExternalSemaphoresSignalNodeSetParams)(hNode, nodeParams)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUgraphNode, CUDA_EXT_SEM_SIGNAL_NODE_PARAMS const *))__pyx_v_4cuda_5_cuda_5ccuda___cuGraphExternalSemaphoresSignalNodeSetParams)(__pyx_v_hNode, __pyx_v_nodeParams); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 5246, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":5247
 *             raise RuntimeError('Function "cuGraphExternalSemaphoresSignalNodeSetParams" not found')
 *     err = (<CUresult (*)(CUgraphNode, const CUDA_EXT_SEM_SIGNAL_NODE_PARAMS*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphExternalSemaphoresSignalNodeSetParams)(hNode, nodeParams)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuGraphAddExternalSemaphoresWaitNode(CUgraphNode* phGraphNode, CUgraph hGraph, const CUgraphNode* dependencies, size_t numDependencies, const CUDA_EXT_SEM_WAIT_NODE_PARAMS* nodeParams) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":5240
 *     return err
 * 
 * cdef CUresult _cuGraphExternalSemaphoresSignalNodeSetParams(CUgraphNode hNode, const CUDA_EXT_SEM_SIGNAL_NODE_PARAMS* nodeParams) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuGraphExternalSemaphoresSignalNodeSetParams
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuGraphExternalSemaphoresSignalNodeSetParams", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":5249
 *     return err
 * 
 * cdef CUresult _cuGraphAddExternalSemaphoresWaitNode(CUgraphNode* phGraphNode, CUgraph hGraph, const CUgraphNode* dependencies, size_t numDependencies, const CUDA_EXT_SEM_WAIT_NODE_PARAMS* nodeParams) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuGraphAddExternalSemaphoresWaitNode
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuGraphAddExternalSemaphoresWaitNode(CUgraphNode *__pyx_v_phGraphNode, CUgraph __pyx_v_hGraph, CUgraphNode const *__pyx_v_dependencies, size_t __pyx_v_numDependencies, CUDA_EXT_SEM_WAIT_NODE_PARAMS const *__pyx_v_nodeParams) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuGraphAddExternalSemaphoresWaitNode", 1);
  __Pyx_TraceCall("_cuGraphAddExternalSemaphoresWaitNode", __pyx_f[0], 5249, 1, __PYX_ERR(0, 5249, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":5251
 * cdef CUresult _cuGraphAddExternalSemaphoresWaitNode(CUgraphNode* phGraphNode, CUgraph hGraph, const CUgraphNode* dependencies, size_t numDependencies, const CUDA_EXT_SEM_WAIT_NODE_PARAMS* nodeParams) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuGraphAddExternalSemaphoresWaitNode
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuGraphAddExternalSemaphoresWaitNode == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 5251, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":5252
 *     global __cuGraphAddExternalSemaphoresWaitNode
 *     cuPythonInit()
 *     if __cuGraphAddExternalSemaphoresWaitNode == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuGraphAddExternalSemaphoresWaitNode" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuGraphAddExternalSemaphoresWaitNode == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":5253
 *     cuPythonInit()
 *     if __cuGraphAddExternalSemaphoresWaitNode == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuGraphAddExternalSemaphoresWaitNode" not found')
 *     err = (<CUresult (*)(CUgraphNode*, CUgraph, const CUgraphNode*, size_t, const CUDA_EXT_SEM_WAIT_NODE_PARAMS*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphAddExternalSemaphoresWaitNode)(phGraphNode, hGraph, dependencies, numDependencies, nodeParams)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":5254
 *     if __cuGraphAddExternalSemaphoresWaitNode == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuGraphAddExternalSemaphoresWaitNode" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUgraphNode*, CUgraph, const CUgraphNode*, size_t, const CUDA_EXT_SEM_WAIT_NODE_PARAMS*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphAddExternalSemaphoresWaitNode)(phGraphNode, hGraph, dependencies, numDependencies, nodeParams)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__293, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 5254, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 5254, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":5253
 *     cuPythonInit()
 *     if __cuGraphAddExternalSemaphoresWaitNode == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuGraphAddExternalSemaphoresWaitNode" not found')
 *     err = (<CUresult (*)(CUgraphNode*, CUgraph, const CUgraphNode*, size_t, const CUDA_EXT_SEM_WAIT_NODE_PARAMS*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphAddExternalSemaphoresWaitNode)(phGraphNode, hGraph, dependencies, numDependencies, nodeParams)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":5252
 *     global __cuGraphAddExternalSemaphoresWaitNode
 *     cuPythonInit()
 *     if __cuGraphAddExternalSemaphoresWaitNode == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuGraphAddExternalSemaphoresWaitNode" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":5255
 *         with gil:
 *             raise RuntimeError('Function "cuGraphAddExternalSemaphoresWaitNode" not found')
 *     err = (<CUresult (*)(CUgraphNode*, CUgraph, const CUgraphNode*, size_t, const CUDA_EXT_SEM_WAIT_NODE_PARAMS*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphAddExternalSemaphoresWaitNode)(phGraphNode, hGraph, dependencies, numDependencies, nodeParams)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUgraphNode *, CUgraph, CUgraphNode const *, size_t, CUDA_EXT_SEM_WAIT_NODE_PARAMS const *))__pyx_v_4cuda_5_cuda_5ccuda___cuGraphAddExternalSemaphoresWaitNode)(__pyx_v_phGraphNode, __pyx_v_hGraph, __pyx_v_dependencies, __pyx_v_numDependencies, __pyx_v_nodeParams); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 5255, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":5256
 *             raise RuntimeError('Function "cuGraphAddExternalSemaphoresWaitNode" not found')
 *     err = (<CUresult (*)(CUgraphNode*, CUgraph, const CUgraphNode*, size_t, const CUDA_EXT_SEM_WAIT_NODE_PARAMS*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphAddExternalSemaphoresWaitNode)(phGraphNode, hGraph, dependencies, numDependencies, nodeParams)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuGraphExternalSemaphoresWaitNodeGetParams(CUgraphNode hNode, CUDA_EXT_SEM_WAIT_NODE_PARAMS* params_out) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":5249
 *     return err
 * 
 * cdef CUresult _cuGraphAddExternalSemaphoresWaitNode(CUgraphNode* phGraphNode, CUgraph hGraph, const CUgraphNode* dependencies, size_t numDependencies, const CUDA_EXT_SEM_WAIT_NODE_PARAMS* nodeParams) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuGraphAddExternalSemaphoresWaitNode
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuGraphAddExternalSemaphoresWaitNode", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":5258
 *     return err
 * 
 * cdef CUresult _cuGraphExternalSemaphoresWaitNodeGetParams(CUgraphNode hNode, CUDA_EXT_SEM_WAIT_NODE_PARAMS* params_out) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuGraphExternalSemaphoresWaitNodeGetParams
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuGraphExternalSemaphoresWaitNodeGetParams(CUgraphNode __pyx_v_hNode, CUDA_EXT_SEM_WAIT_NODE_PARAMS *__pyx_v_params_out) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuGraphExternalSemaphoresWaitNodeGetParams", 1);
  __Pyx_TraceCall("_cuGraphExternalSemaphoresWaitNodeGetParams", __pyx_f[0], 5258, 1, __PYX_ERR(0, 5258, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":5260
 * cdef CUresult _cuGraphExternalSemaphoresWaitNodeGetParams(CUgraphNode hNode, CUDA_EXT_SEM_WAIT_NODE_PARAMS* params_out) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuGraphExternalSemaphoresWaitNodeGetParams
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuGraphExternalSemaphoresWaitNodeGetParams == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 5260, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":5261
 *     global __cuGraphExternalSemaphoresWaitNodeGetParams
 *     cuPythonInit()
 *     if __cuGraphExternalSemaphoresWaitNodeGetParams == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuGraphExternalSemaphoresWaitNodeGetParams" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuGraphExternalSemaphoresWaitNodeGetParams == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":5262
 *     cuPythonInit()
 *     if __cuGraphExternalSemaphoresWaitNodeGetParams == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuGraphExternalSemaphoresWaitNodeGetParams" not found')
 *     err = (<CUresult (*)(CUgraphNode, CUDA_EXT_SEM_WAIT_NODE_PARAMS*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphExternalSemaphoresWaitNodeGetParams)(hNode, params_out)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":5263
 *     if __cuGraphExternalSemaphoresWaitNodeGetParams == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuGraphExternalSemaphoresWaitNodeGetParams" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUgraphNode, CUDA_EXT_SEM_WAIT_NODE_PARAMS*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphExternalSemaphoresWaitNodeGetParams)(hNode, params_out)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__294, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 5263, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 5263, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":5262
 *     cuPythonInit()
 *     if __cuGraphExternalSemaphoresWaitNodeGetParams == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuGraphExternalSemaphoresWaitNodeGetParams" not found')
 *     err = (<CUresult (*)(CUgraphNode, CUDA_EXT_SEM_WAIT_NODE_PARAMS*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphExternalSemaphoresWaitNodeGetParams)(hNode, params_out)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":5261
 *     global __cuGraphExternalSemaphoresWaitNodeGetParams
 *     cuPythonInit()
 *     if __cuGraphExternalSemaphoresWaitNodeGetParams == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuGraphExternalSemaphoresWaitNodeGetParams" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":5264
 *         with gil:
 *             raise RuntimeError('Function "cuGraphExternalSemaphoresWaitNodeGetParams" not found')
 *     err = (<CUresult (*)(CUgraphNode, CUDA_EXT_SEM_WAIT_NODE_PARAMS*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphExternalSemaphoresWaitNodeGetParams)(hNode, params_out)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUgraphNode, CUDA_EXT_SEM_WAIT_NODE_PARAMS *))__pyx_v_4cuda_5_cuda_5ccuda___cuGraphExternalSemaphoresWaitNodeGetParams)(__pyx_v_hNode, __pyx_v_params_out); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 5264, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":5265
 *             raise RuntimeError('Function "cuGraphExternalSemaphoresWaitNodeGetParams" not found')
 *     err = (<CUresult (*)(CUgraphNode, CUDA_EXT_SEM_WAIT_NODE_PARAMS*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphExternalSemaphoresWaitNodeGetParams)(hNode, params_out)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuGraphExternalSemaphoresWaitNodeSetParams(CUgraphNode hNode, const CUDA_EXT_SEM_WAIT_NODE_PARAMS* nodeParams) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":5258
 *     return err
 * 
 * cdef CUresult _cuGraphExternalSemaphoresWaitNodeGetParams(CUgraphNode hNode, CUDA_EXT_SEM_WAIT_NODE_PARAMS* params_out) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuGraphExternalSemaphoresWaitNodeGetParams
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuGraphExternalSemaphoresWaitNodeGetParams", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":5267
 *     return err
 * 
 * cdef CUresult _cuGraphExternalSemaphoresWaitNodeSetParams(CUgraphNode hNode, const CUDA_EXT_SEM_WAIT_NODE_PARAMS* nodeParams) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuGraphExternalSemaphoresWaitNodeSetParams
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuGraphExternalSemaphoresWaitNodeSetParams(CUgraphNode __pyx_v_hNode, CUDA_EXT_SEM_WAIT_NODE_PARAMS const *__pyx_v_nodeParams) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuGraphExternalSemaphoresWaitNodeSetParams", 1);
  __Pyx_TraceCall("_cuGraphExternalSemaphoresWaitNodeSetParams", __pyx_f[0], 5267, 1, __PYX_ERR(0, 5267, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":5269
 * cdef CUresult _cuGraphExternalSemaphoresWaitNodeSetParams(CUgraphNode hNode, const CUDA_EXT_SEM_WAIT_NODE_PARAMS* nodeParams) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuGraphExternalSemaphoresWaitNodeSetParams
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuGraphExternalSemaphoresWaitNodeSetParams == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 5269, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":5270
 *     global __cuGraphExternalSemaphoresWaitNodeSetParams
 *     cuPythonInit()
 *     if __cuGraphExternalSemaphoresWaitNodeSetParams == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuGraphExternalSemaphoresWaitNodeSetParams" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuGraphExternalSemaphoresWaitNodeSetParams == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":5271
 *     cuPythonInit()
 *     if __cuGraphExternalSemaphoresWaitNodeSetParams == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuGraphExternalSemaphoresWaitNodeSetParams" not found')
 *     err = (<CUresult (*)(CUgraphNode, const CUDA_EXT_SEM_WAIT_NODE_PARAMS*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphExternalSemaphoresWaitNodeSetParams)(hNode, nodeParams)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":5272
 *     if __cuGraphExternalSemaphoresWaitNodeSetParams == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuGraphExternalSemaphoresWaitNodeSetParams" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUgraphNode, const CUDA_EXT_SEM_WAIT_NODE_PARAMS*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphExternalSemaphoresWaitNodeSetParams)(hNode, nodeParams)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__295, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 5272, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 5272, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":5271
 *     cuPythonInit()
 *     if __cuGraphExternalSemaphoresWaitNodeSetParams == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuGraphExternalSemaphoresWaitNodeSetParams" not found')
 *     err = (<CUresult (*)(CUgraphNode, const CUDA_EXT_SEM_WAIT_NODE_PARAMS*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphExternalSemaphoresWaitNodeSetParams)(hNode, nodeParams)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":5270
 *     global __cuGraphExternalSemaphoresWaitNodeSetParams
 *     cuPythonInit()
 *     if __cuGraphExternalSemaphoresWaitNodeSetParams == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuGraphExternalSemaphoresWaitNodeSetParams" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":5273
 *         with gil:
 *             raise RuntimeError('Function "cuGraphExternalSemaphoresWaitNodeSetParams" not found')
 *     err = (<CUresult (*)(CUgraphNode, const CUDA_EXT_SEM_WAIT_NODE_PARAMS*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphExternalSemaphoresWaitNodeSetParams)(hNode, nodeParams)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUgraphNode, CUDA_EXT_SEM_WAIT_NODE_PARAMS const *))__pyx_v_4cuda_5_cuda_5ccuda___cuGraphExternalSemaphoresWaitNodeSetParams)(__pyx_v_hNode, __pyx_v_nodeParams); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 5273, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":5274
 *             raise RuntimeError('Function "cuGraphExternalSemaphoresWaitNodeSetParams" not found')
 *     err = (<CUresult (*)(CUgraphNode, const CUDA_EXT_SEM_WAIT_NODE_PARAMS*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphExternalSemaphoresWaitNodeSetParams)(hNode, nodeParams)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuGraphAddBatchMemOpNode(CUgraphNode* phGraphNode, CUgraph hGraph, const CUgraphNode* dependencies, size_t numDependencies, const CUDA_BATCH_MEM_OP_NODE_PARAMS* nodeParams) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":5267
 *     return err
 * 
 * cdef CUresult _cuGraphExternalSemaphoresWaitNodeSetParams(CUgraphNode hNode, const CUDA_EXT_SEM_WAIT_NODE_PARAMS* nodeParams) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuGraphExternalSemaphoresWaitNodeSetParams
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuGraphExternalSemaphoresWaitNodeSetParams", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":5276
 *     return err
 * 
 * cdef CUresult _cuGraphAddBatchMemOpNode(CUgraphNode* phGraphNode, CUgraph hGraph, const CUgraphNode* dependencies, size_t numDependencies, const CUDA_BATCH_MEM_OP_NODE_PARAMS* nodeParams) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuGraphAddBatchMemOpNode
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuGraphAddBatchMemOpNode(CUgraphNode *__pyx_v_phGraphNode, CUgraph __pyx_v_hGraph, CUgraphNode const *__pyx_v_dependencies, size_t __pyx_v_numDependencies, CUDA_BATCH_MEM_OP_NODE_PARAMS const *__pyx_v_nodeParams) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuGraphAddBatchMemOpNode", 1);
  __Pyx_TraceCall("_cuGraphAddBatchMemOpNode", __pyx_f[0], 5276, 1, __PYX_ERR(0, 5276, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":5278
 * cdef CUresult _cuGraphAddBatchMemOpNode(CUgraphNode* phGraphNode, CUgraph hGraph, const CUgraphNode* dependencies, size_t numDependencies, const CUDA_BATCH_MEM_OP_NODE_PARAMS* nodeParams) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuGraphAddBatchMemOpNode
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuGraphAddBatchMemOpNode == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 5278, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":5279
 *     global __cuGraphAddBatchMemOpNode
 *     cuPythonInit()
 *     if __cuGraphAddBatchMemOpNode == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuGraphAddBatchMemOpNode" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuGraphAddBatchMemOpNode == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":5280
 *     cuPythonInit()
 *     if __cuGraphAddBatchMemOpNode == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuGraphAddBatchMemOpNode" not found')
 *     err = (<CUresult (*)(CUgraphNode*, CUgraph, const CUgraphNode*, size_t, const CUDA_BATCH_MEM_OP_NODE_PARAMS*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphAddBatchMemOpNode)(phGraphNode, hGraph, dependencies, numDependencies, nodeParams)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":5281
 *     if __cuGraphAddBatchMemOpNode == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuGraphAddBatchMemOpNode" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUgraphNode*, CUgraph, const CUgraphNode*, size_t, const CUDA_BATCH_MEM_OP_NODE_PARAMS*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphAddBatchMemOpNode)(phGraphNode, hGraph, dependencies, numDependencies, nodeParams)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__296, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 5281, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 5281, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":5280
 *     cuPythonInit()
 *     if __cuGraphAddBatchMemOpNode == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuGraphAddBatchMemOpNode" not found')
 *     err = (<CUresult (*)(CUgraphNode*, CUgraph, const CUgraphNode*, size_t, const CUDA_BATCH_MEM_OP_NODE_PARAMS*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphAddBatchMemOpNode)(phGraphNode, hGraph, dependencies, numDependencies, nodeParams)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":5279
 *     global __cuGraphAddBatchMemOpNode
 *     cuPythonInit()
 *     if __cuGraphAddBatchMemOpNode == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuGraphAddBatchMemOpNode" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":5282
 *         with gil:
 *             raise RuntimeError('Function "cuGraphAddBatchMemOpNode" not found')
 *     err = (<CUresult (*)(CUgraphNode*, CUgraph, const CUgraphNode*, size_t, const CUDA_BATCH_MEM_OP_NODE_PARAMS*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphAddBatchMemOpNode)(phGraphNode, hGraph, dependencies, numDependencies, nodeParams)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUgraphNode *, CUgraph, CUgraphNode const *, size_t, CUDA_BATCH_MEM_OP_NODE_PARAMS const *))__pyx_v_4cuda_5_cuda_5ccuda___cuGraphAddBatchMemOpNode)(__pyx_v_phGraphNode, __pyx_v_hGraph, __pyx_v_dependencies, __pyx_v_numDependencies, __pyx_v_nodeParams); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 5282, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":5283
 *             raise RuntimeError('Function "cuGraphAddBatchMemOpNode" not found')
 *     err = (<CUresult (*)(CUgraphNode*, CUgraph, const CUgraphNode*, size_t, const CUDA_BATCH_MEM_OP_NODE_PARAMS*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphAddBatchMemOpNode)(phGraphNode, hGraph, dependencies, numDependencies, nodeParams)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuGraphBatchMemOpNodeGetParams(CUgraphNode hNode, CUDA_BATCH_MEM_OP_NODE_PARAMS* nodeParams_out) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":5276
 *     return err
 * 
 * cdef CUresult _cuGraphAddBatchMemOpNode(CUgraphNode* phGraphNode, CUgraph hGraph, const CUgraphNode* dependencies, size_t numDependencies, const CUDA_BATCH_MEM_OP_NODE_PARAMS* nodeParams) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuGraphAddBatchMemOpNode
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuGraphAddBatchMemOpNode", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":5285
 *     return err
 * 
 * cdef CUresult _cuGraphBatchMemOpNodeGetParams(CUgraphNode hNode, CUDA_BATCH_MEM_OP_NODE_PARAMS* nodeParams_out) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuGraphBatchMemOpNodeGetParams
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuGraphBatchMemOpNodeGetParams(CUgraphNode __pyx_v_hNode, CUDA_BATCH_MEM_OP_NODE_PARAMS *__pyx_v_nodeParams_out) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuGraphBatchMemOpNodeGetParams", 1);
  __Pyx_TraceCall("_cuGraphBatchMemOpNodeGetParams", __pyx_f[0], 5285, 1, __PYX_ERR(0, 5285, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":5287
 * cdef CUresult _cuGraphBatchMemOpNodeGetParams(CUgraphNode hNode, CUDA_BATCH_MEM_OP_NODE_PARAMS* nodeParams_out) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuGraphBatchMemOpNodeGetParams
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuGraphBatchMemOpNodeGetParams == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 5287, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":5288
 *     global __cuGraphBatchMemOpNodeGetParams
 *     cuPythonInit()
 *     if __cuGraphBatchMemOpNodeGetParams == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuGraphBatchMemOpNodeGetParams" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuGraphBatchMemOpNodeGetParams == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":5289
 *     cuPythonInit()
 *     if __cuGraphBatchMemOpNodeGetParams == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuGraphBatchMemOpNodeGetParams" not found')
 *     err = (<CUresult (*)(CUgraphNode, CUDA_BATCH_MEM_OP_NODE_PARAMS*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphBatchMemOpNodeGetParams)(hNode, nodeParams_out)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":5290
 *     if __cuGraphBatchMemOpNodeGetParams == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuGraphBatchMemOpNodeGetParams" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUgraphNode, CUDA_BATCH_MEM_OP_NODE_PARAMS*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphBatchMemOpNodeGetParams)(hNode, nodeParams_out)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__297, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 5290, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 5290, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":5289
 *     cuPythonInit()
 *     if __cuGraphBatchMemOpNodeGetParams == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuGraphBatchMemOpNodeGetParams" not found')
 *     err = (<CUresult (*)(CUgraphNode, CUDA_BATCH_MEM_OP_NODE_PARAMS*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphBatchMemOpNodeGetParams)(hNode, nodeParams_out)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":5288
 *     global __cuGraphBatchMemOpNodeGetParams
 *     cuPythonInit()
 *     if __cuGraphBatchMemOpNodeGetParams == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuGraphBatchMemOpNodeGetParams" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":5291
 *         with gil:
 *             raise RuntimeError('Function "cuGraphBatchMemOpNodeGetParams" not found')
 *     err = (<CUresult (*)(CUgraphNode, CUDA_BATCH_MEM_OP_NODE_PARAMS*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphBatchMemOpNodeGetParams)(hNode, nodeParams_out)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUgraphNode, CUDA_BATCH_MEM_OP_NODE_PARAMS *))__pyx_v_4cuda_5_cuda_5ccuda___cuGraphBatchMemOpNodeGetParams)(__pyx_v_hNode, __pyx_v_nodeParams_out); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 5291, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":5292
 *             raise RuntimeError('Function "cuGraphBatchMemOpNodeGetParams" not found')
 *     err = (<CUresult (*)(CUgraphNode, CUDA_BATCH_MEM_OP_NODE_PARAMS*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphBatchMemOpNodeGetParams)(hNode, nodeParams_out)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuGraphBatchMemOpNodeSetParams(CUgraphNode hNode, const CUDA_BATCH_MEM_OP_NODE_PARAMS* nodeParams) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":5285
 *     return err
 * 
 * cdef CUresult _cuGraphBatchMemOpNodeGetParams(CUgraphNode hNode, CUDA_BATCH_MEM_OP_NODE_PARAMS* nodeParams_out) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuGraphBatchMemOpNodeGetParams
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuGraphBatchMemOpNodeGetParams", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":5294
 *     return err
 * 
 * cdef CUresult _cuGraphBatchMemOpNodeSetParams(CUgraphNode hNode, const CUDA_BATCH_MEM_OP_NODE_PARAMS* nodeParams) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuGraphBatchMemOpNodeSetParams
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuGraphBatchMemOpNodeSetParams(CUgraphNode __pyx_v_hNode, CUDA_BATCH_MEM_OP_NODE_PARAMS const *__pyx_v_nodeParams) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuGraphBatchMemOpNodeSetParams", 1);
  __Pyx_TraceCall("_cuGraphBatchMemOpNodeSetParams", __pyx_f[0], 5294, 1, __PYX_ERR(0, 5294, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":5296
 * cdef CUresult _cuGraphBatchMemOpNodeSetParams(CUgraphNode hNode, const CUDA_BATCH_MEM_OP_NODE_PARAMS* nodeParams) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuGraphBatchMemOpNodeSetParams
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuGraphBatchMemOpNodeSetParams == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 5296, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":5297
 *     global __cuGraphBatchMemOpNodeSetParams
 *     cuPythonInit()
 *     if __cuGraphBatchMemOpNodeSetParams == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuGraphBatchMemOpNodeSetParams" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuGraphBatchMemOpNodeSetParams == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":5298
 *     cuPythonInit()
 *     if __cuGraphBatchMemOpNodeSetParams == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuGraphBatchMemOpNodeSetParams" not found')
 *     err = (<CUresult (*)(CUgraphNode, const CUDA_BATCH_MEM_OP_NODE_PARAMS*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphBatchMemOpNodeSetParams)(hNode, nodeParams)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":5299
 *     if __cuGraphBatchMemOpNodeSetParams == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuGraphBatchMemOpNodeSetParams" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUgraphNode, const CUDA_BATCH_MEM_OP_NODE_PARAMS*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphBatchMemOpNodeSetParams)(hNode, nodeParams)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__298, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 5299, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 5299, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":5298
 *     cuPythonInit()
 *     if __cuGraphBatchMemOpNodeSetParams == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuGraphBatchMemOpNodeSetParams" not found')
 *     err = (<CUresult (*)(CUgraphNode, const CUDA_BATCH_MEM_OP_NODE_PARAMS*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphBatchMemOpNodeSetParams)(hNode, nodeParams)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":5297
 *     global __cuGraphBatchMemOpNodeSetParams
 *     cuPythonInit()
 *     if __cuGraphBatchMemOpNodeSetParams == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuGraphBatchMemOpNodeSetParams" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":5300
 *         with gil:
 *             raise RuntimeError('Function "cuGraphBatchMemOpNodeSetParams" not found')
 *     err = (<CUresult (*)(CUgraphNode, const CUDA_BATCH_MEM_OP_NODE_PARAMS*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphBatchMemOpNodeSetParams)(hNode, nodeParams)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUgraphNode, CUDA_BATCH_MEM_OP_NODE_PARAMS const *))__pyx_v_4cuda_5_cuda_5ccuda___cuGraphBatchMemOpNodeSetParams)(__pyx_v_hNode, __pyx_v_nodeParams); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 5300, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":5301
 *             raise RuntimeError('Function "cuGraphBatchMemOpNodeSetParams" not found')
 *     err = (<CUresult (*)(CUgraphNode, const CUDA_BATCH_MEM_OP_NODE_PARAMS*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphBatchMemOpNodeSetParams)(hNode, nodeParams)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuGraphExecBatchMemOpNodeSetParams(CUgraphExec hGraphExec, CUgraphNode hNode, const CUDA_BATCH_MEM_OP_NODE_PARAMS* nodeParams) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":5294
 *     return err
 * 
 * cdef CUresult _cuGraphBatchMemOpNodeSetParams(CUgraphNode hNode, const CUDA_BATCH_MEM_OP_NODE_PARAMS* nodeParams) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuGraphBatchMemOpNodeSetParams
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuGraphBatchMemOpNodeSetParams", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":5303
 *     return err
 * 
 * cdef CUresult _cuGraphExecBatchMemOpNodeSetParams(CUgraphExec hGraphExec, CUgraphNode hNode, const CUDA_BATCH_MEM_OP_NODE_PARAMS* nodeParams) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuGraphExecBatchMemOpNodeSetParams
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuGraphExecBatchMemOpNodeSetParams(CUgraphExec __pyx_v_hGraphExec, CUgraphNode __pyx_v_hNode, CUDA_BATCH_MEM_OP_NODE_PARAMS const *__pyx_v_nodeParams) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuGraphExecBatchMemOpNodeSetParams", 1);
  __Pyx_TraceCall("_cuGraphExecBatchMemOpNodeSetParams", __pyx_f[0], 5303, 1, __PYX_ERR(0, 5303, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":5305
 * cdef CUresult _cuGraphExecBatchMemOpNodeSetParams(CUgraphExec hGraphExec, CUgraphNode hNode, const CUDA_BATCH_MEM_OP_NODE_PARAMS* nodeParams) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuGraphExecBatchMemOpNodeSetParams
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuGraphExecBatchMemOpNodeSetParams == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 5305, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":5306
 *     global __cuGraphExecBatchMemOpNodeSetParams
 *     cuPythonInit()
 *     if __cuGraphExecBatchMemOpNodeSetParams == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuGraphExecBatchMemOpNodeSetParams" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuGraphExecBatchMemOpNodeSetParams == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":5307
 *     cuPythonInit()
 *     if __cuGraphExecBatchMemOpNodeSetParams == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuGraphExecBatchMemOpNodeSetParams" not found')
 *     err = (<CUresult (*)(CUgraphExec, CUgraphNode, const CUDA_BATCH_MEM_OP_NODE_PARAMS*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphExecBatchMemOpNodeSetParams)(hGraphExec, hNode, nodeParams)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":5308
 *     if __cuGraphExecBatchMemOpNodeSetParams == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuGraphExecBatchMemOpNodeSetParams" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUgraphExec, CUgraphNode, const CUDA_BATCH_MEM_OP_NODE_PARAMS*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphExecBatchMemOpNodeSetParams)(hGraphExec, hNode, nodeParams)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__299, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 5308, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 5308, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":5307
 *     cuPythonInit()
 *     if __cuGraphExecBatchMemOpNodeSetParams == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuGraphExecBatchMemOpNodeSetParams" not found')
 *     err = (<CUresult (*)(CUgraphExec, CUgraphNode, const CUDA_BATCH_MEM_OP_NODE_PARAMS*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphExecBatchMemOpNodeSetParams)(hGraphExec, hNode, nodeParams)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":5306
 *     global __cuGraphExecBatchMemOpNodeSetParams
 *     cuPythonInit()
 *     if __cuGraphExecBatchMemOpNodeSetParams == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuGraphExecBatchMemOpNodeSetParams" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":5309
 *         with gil:
 *             raise RuntimeError('Function "cuGraphExecBatchMemOpNodeSetParams" not found')
 *     err = (<CUresult (*)(CUgraphExec, CUgraphNode, const CUDA_BATCH_MEM_OP_NODE_PARAMS*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphExecBatchMemOpNodeSetParams)(hGraphExec, hNode, nodeParams)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUgraphExec, CUgraphNode, CUDA_BATCH_MEM_OP_NODE_PARAMS const *))__pyx_v_4cuda_5_cuda_5ccuda___cuGraphExecBatchMemOpNodeSetParams)(__pyx_v_hGraphExec, __pyx_v_hNode, __pyx_v_nodeParams); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 5309, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":5310
 *             raise RuntimeError('Function "cuGraphExecBatchMemOpNodeSetParams" not found')
 *     err = (<CUresult (*)(CUgraphExec, CUgraphNode, const CUDA_BATCH_MEM_OP_NODE_PARAMS*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphExecBatchMemOpNodeSetParams)(hGraphExec, hNode, nodeParams)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuGraphAddMemAllocNode(CUgraphNode* phGraphNode, CUgraph hGraph, const CUgraphNode* dependencies, size_t numDependencies, CUDA_MEM_ALLOC_NODE_PARAMS* nodeParams) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":5303
 *     return err
 * 
 * cdef CUresult _cuGraphExecBatchMemOpNodeSetParams(CUgraphExec hGraphExec, CUgraphNode hNode, const CUDA_BATCH_MEM_OP_NODE_PARAMS* nodeParams) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuGraphExecBatchMemOpNodeSetParams
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuGraphExecBatchMemOpNodeSetParams", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":5312
 *     return err
 * 
 * cdef CUresult _cuGraphAddMemAllocNode(CUgraphNode* phGraphNode, CUgraph hGraph, const CUgraphNode* dependencies, size_t numDependencies, CUDA_MEM_ALLOC_NODE_PARAMS* nodeParams) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuGraphAddMemAllocNode
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuGraphAddMemAllocNode(CUgraphNode *__pyx_v_phGraphNode, CUgraph __pyx_v_hGraph, CUgraphNode const *__pyx_v_dependencies, size_t __pyx_v_numDependencies, CUDA_MEM_ALLOC_NODE_PARAMS *__pyx_v_nodeParams) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuGraphAddMemAllocNode", 1);
  __Pyx_TraceCall("_cuGraphAddMemAllocNode", __pyx_f[0], 5312, 1, __PYX_ERR(0, 5312, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":5314
 * cdef CUresult _cuGraphAddMemAllocNode(CUgraphNode* phGraphNode, CUgraph hGraph, const CUgraphNode* dependencies, size_t numDependencies, CUDA_MEM_ALLOC_NODE_PARAMS* nodeParams) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuGraphAddMemAllocNode
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuGraphAddMemAllocNode == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 5314, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":5315
 *     global __cuGraphAddMemAllocNode
 *     cuPythonInit()
 *     if __cuGraphAddMemAllocNode == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuGraphAddMemAllocNode" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuGraphAddMemAllocNode == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":5316
 *     cuPythonInit()
 *     if __cuGraphAddMemAllocNode == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuGraphAddMemAllocNode" not found')
 *     err = (<CUresult (*)(CUgraphNode*, CUgraph, const CUgraphNode*, size_t, CUDA_MEM_ALLOC_NODE_PARAMS*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphAddMemAllocNode)(phGraphNode, hGraph, dependencies, numDependencies, nodeParams)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":5317
 *     if __cuGraphAddMemAllocNode == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuGraphAddMemAllocNode" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUgraphNode*, CUgraph, const CUgraphNode*, size_t, CUDA_MEM_ALLOC_NODE_PARAMS*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphAddMemAllocNode)(phGraphNode, hGraph, dependencies, numDependencies, nodeParams)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__300, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 5317, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 5317, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":5316
 *     cuPythonInit()
 *     if __cuGraphAddMemAllocNode == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuGraphAddMemAllocNode" not found')
 *     err = (<CUresult (*)(CUgraphNode*, CUgraph, const CUgraphNode*, size_t, CUDA_MEM_ALLOC_NODE_PARAMS*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphAddMemAllocNode)(phGraphNode, hGraph, dependencies, numDependencies, nodeParams)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":5315
 *     global __cuGraphAddMemAllocNode
 *     cuPythonInit()
 *     if __cuGraphAddMemAllocNode == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuGraphAddMemAllocNode" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":5318
 *         with gil:
 *             raise RuntimeError('Function "cuGraphAddMemAllocNode" not found')
 *     err = (<CUresult (*)(CUgraphNode*, CUgraph, const CUgraphNode*, size_t, CUDA_MEM_ALLOC_NODE_PARAMS*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphAddMemAllocNode)(phGraphNode, hGraph, dependencies, numDependencies, nodeParams)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUgraphNode *, CUgraph, CUgraphNode const *, size_t, CUDA_MEM_ALLOC_NODE_PARAMS *))__pyx_v_4cuda_5_cuda_5ccuda___cuGraphAddMemAllocNode)(__pyx_v_phGraphNode, __pyx_v_hGraph, __pyx_v_dependencies, __pyx_v_numDependencies, __pyx_v_nodeParams); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 5318, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":5319
 *             raise RuntimeError('Function "cuGraphAddMemAllocNode" not found')
 *     err = (<CUresult (*)(CUgraphNode*, CUgraph, const CUgraphNode*, size_t, CUDA_MEM_ALLOC_NODE_PARAMS*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphAddMemAllocNode)(phGraphNode, hGraph, dependencies, numDependencies, nodeParams)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuGraphMemAllocNodeGetParams(CUgraphNode hNode, CUDA_MEM_ALLOC_NODE_PARAMS* params_out) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":5312
 *     return err
 * 
 * cdef CUresult _cuGraphAddMemAllocNode(CUgraphNode* phGraphNode, CUgraph hGraph, const CUgraphNode* dependencies, size_t numDependencies, CUDA_MEM_ALLOC_NODE_PARAMS* nodeParams) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuGraphAddMemAllocNode
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuGraphAddMemAllocNode", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":5321
 *     return err
 * 
 * cdef CUresult _cuGraphMemAllocNodeGetParams(CUgraphNode hNode, CUDA_MEM_ALLOC_NODE_PARAMS* params_out) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuGraphMemAllocNodeGetParams
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuGraphMemAllocNodeGetParams(CUgraphNode __pyx_v_hNode, CUDA_MEM_ALLOC_NODE_PARAMS *__pyx_v_params_out) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuGraphMemAllocNodeGetParams", 1);
  __Pyx_TraceCall("_cuGraphMemAllocNodeGetParams", __pyx_f[0], 5321, 1, __PYX_ERR(0, 5321, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":5323
 * cdef CUresult _cuGraphMemAllocNodeGetParams(CUgraphNode hNode, CUDA_MEM_ALLOC_NODE_PARAMS* params_out) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuGraphMemAllocNodeGetParams
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuGraphMemAllocNodeGetParams == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 5323, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":5324
 *     global __cuGraphMemAllocNodeGetParams
 *     cuPythonInit()
 *     if __cuGraphMemAllocNodeGetParams == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuGraphMemAllocNodeGetParams" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuGraphMemAllocNodeGetParams == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":5325
 *     cuPythonInit()
 *     if __cuGraphMemAllocNodeGetParams == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuGraphMemAllocNodeGetParams" not found')
 *     err = (<CUresult (*)(CUgraphNode, CUDA_MEM_ALLOC_NODE_PARAMS*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphMemAllocNodeGetParams)(hNode, params_out)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":5326
 *     if __cuGraphMemAllocNodeGetParams == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuGraphMemAllocNodeGetParams" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUgraphNode, CUDA_MEM_ALLOC_NODE_PARAMS*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphMemAllocNodeGetParams)(hNode, params_out)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__301, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 5326, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 5326, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":5325
 *     cuPythonInit()
 *     if __cuGraphMemAllocNodeGetParams == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuGraphMemAllocNodeGetParams" not found')
 *     err = (<CUresult (*)(CUgraphNode, CUDA_MEM_ALLOC_NODE_PARAMS*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphMemAllocNodeGetParams)(hNode, params_out)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":5324
 *     global __cuGraphMemAllocNodeGetParams
 *     cuPythonInit()
 *     if __cuGraphMemAllocNodeGetParams == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuGraphMemAllocNodeGetParams" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":5327
 *         with gil:
 *             raise RuntimeError('Function "cuGraphMemAllocNodeGetParams" not found')
 *     err = (<CUresult (*)(CUgraphNode, CUDA_MEM_ALLOC_NODE_PARAMS*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphMemAllocNodeGetParams)(hNode, params_out)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUgraphNode, CUDA_MEM_ALLOC_NODE_PARAMS *))__pyx_v_4cuda_5_cuda_5ccuda___cuGraphMemAllocNodeGetParams)(__pyx_v_hNode, __pyx_v_params_out); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 5327, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":5328
 *             raise RuntimeError('Function "cuGraphMemAllocNodeGetParams" not found')
 *     err = (<CUresult (*)(CUgraphNode, CUDA_MEM_ALLOC_NODE_PARAMS*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphMemAllocNodeGetParams)(hNode, params_out)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuGraphAddMemFreeNode(CUgraphNode* phGraphNode, CUgraph hGraph, const CUgraphNode* dependencies, size_t numDependencies, CUdeviceptr dptr) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":5321
 *     return err
 * 
 * cdef CUresult _cuGraphMemAllocNodeGetParams(CUgraphNode hNode, CUDA_MEM_ALLOC_NODE_PARAMS* params_out) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuGraphMemAllocNodeGetParams
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuGraphMemAllocNodeGetParams", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":5330
 *     return err
 * 
 * cdef CUresult _cuGraphAddMemFreeNode(CUgraphNode* phGraphNode, CUgraph hGraph, const CUgraphNode* dependencies, size_t numDependencies, CUdeviceptr dptr) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuGraphAddMemFreeNode
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuGraphAddMemFreeNode(CUgraphNode *__pyx_v_phGraphNode, CUgraph __pyx_v_hGraph, CUgraphNode const *__pyx_v_dependencies, size_t __pyx_v_numDependencies, CUdeviceptr __pyx_v_dptr) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuGraphAddMemFreeNode", 1);
  __Pyx_TraceCall("_cuGraphAddMemFreeNode", __pyx_f[0], 5330, 1, __PYX_ERR(0, 5330, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":5332
 * cdef CUresult _cuGraphAddMemFreeNode(CUgraphNode* phGraphNode, CUgraph hGraph, const CUgraphNode* dependencies, size_t numDependencies, CUdeviceptr dptr) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuGraphAddMemFreeNode
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuGraphAddMemFreeNode == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 5332, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":5333
 *     global __cuGraphAddMemFreeNode
 *     cuPythonInit()
 *     if __cuGraphAddMemFreeNode == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuGraphAddMemFreeNode" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuGraphAddMemFreeNode == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":5334
 *     cuPythonInit()
 *     if __cuGraphAddMemFreeNode == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuGraphAddMemFreeNode" not found')
 *     err = (<CUresult (*)(CUgraphNode*, CUgraph, const CUgraphNode*, size_t, CUdeviceptr) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphAddMemFreeNode)(phGraphNode, hGraph, dependencies, numDependencies, dptr)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":5335
 *     if __cuGraphAddMemFreeNode == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuGraphAddMemFreeNode" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUgraphNode*, CUgraph, const CUgraphNode*, size_t, CUdeviceptr) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphAddMemFreeNode)(phGraphNode, hGraph, dependencies, numDependencies, dptr)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__302, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 5335, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 5335, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":5334
 *     cuPythonInit()
 *     if __cuGraphAddMemFreeNode == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuGraphAddMemFreeNode" not found')
 *     err = (<CUresult (*)(CUgraphNode*, CUgraph, const CUgraphNode*, size_t, CUdeviceptr) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphAddMemFreeNode)(phGraphNode, hGraph, dependencies, numDependencies, dptr)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":5333
 *     global __cuGraphAddMemFreeNode
 *     cuPythonInit()
 *     if __cuGraphAddMemFreeNode == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuGraphAddMemFreeNode" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":5336
 *         with gil:
 *             raise RuntimeError('Function "cuGraphAddMemFreeNode" not found')
 *     err = (<CUresult (*)(CUgraphNode*, CUgraph, const CUgraphNode*, size_t, CUdeviceptr) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphAddMemFreeNode)(phGraphNode, hGraph, dependencies, numDependencies, dptr)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUgraphNode *, CUgraph, CUgraphNode const *, size_t, CUdeviceptr))__pyx_v_4cuda_5_cuda_5ccuda___cuGraphAddMemFreeNode)(__pyx_v_phGraphNode, __pyx_v_hGraph, __pyx_v_dependencies, __pyx_v_numDependencies, __pyx_v_dptr); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 5336, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":5337
 *             raise RuntimeError('Function "cuGraphAddMemFreeNode" not found')
 *     err = (<CUresult (*)(CUgraphNode*, CUgraph, const CUgraphNode*, size_t, CUdeviceptr) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphAddMemFreeNode)(phGraphNode, hGraph, dependencies, numDependencies, dptr)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuGraphMemFreeNodeGetParams(CUgraphNode hNode, CUdeviceptr* dptr_out) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":5330
 *     return err
 * 
 * cdef CUresult _cuGraphAddMemFreeNode(CUgraphNode* phGraphNode, CUgraph hGraph, const CUgraphNode* dependencies, size_t numDependencies, CUdeviceptr dptr) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuGraphAddMemFreeNode
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuGraphAddMemFreeNode", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":5339
 *     return err
 * 
 * cdef CUresult _cuGraphMemFreeNodeGetParams(CUgraphNode hNode, CUdeviceptr* dptr_out) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuGraphMemFreeNodeGetParams
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuGraphMemFreeNodeGetParams(CUgraphNode __pyx_v_hNode, CUdeviceptr *__pyx_v_dptr_out) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuGraphMemFreeNodeGetParams", 1);
  __Pyx_TraceCall("_cuGraphMemFreeNodeGetParams", __pyx_f[0], 5339, 1, __PYX_ERR(0, 5339, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":5341
 * cdef CUresult _cuGraphMemFreeNodeGetParams(CUgraphNode hNode, CUdeviceptr* dptr_out) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuGraphMemFreeNodeGetParams
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuGraphMemFreeNodeGetParams == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 5341, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":5342
 *     global __cuGraphMemFreeNodeGetParams
 *     cuPythonInit()
 *     if __cuGraphMemFreeNodeGetParams == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuGraphMemFreeNodeGetParams" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuGraphMemFreeNodeGetParams == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":5343
 *     cuPythonInit()
 *     if __cuGraphMemFreeNodeGetParams == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuGraphMemFreeNodeGetParams" not found')
 *     err = (<CUresult (*)(CUgraphNode, CUdeviceptr*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphMemFreeNodeGetParams)(hNode, dptr_out)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":5344
 *     if __cuGraphMemFreeNodeGetParams == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuGraphMemFreeNodeGetParams" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUgraphNode, CUdeviceptr*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphMemFreeNodeGetParams)(hNode, dptr_out)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__303, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 5344, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 5344, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":5343
 *     cuPythonInit()
 *     if __cuGraphMemFreeNodeGetParams == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuGraphMemFreeNodeGetParams" not found')
 *     err = (<CUresult (*)(CUgraphNode, CUdeviceptr*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphMemFreeNodeGetParams)(hNode, dptr_out)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":5342
 *     global __cuGraphMemFreeNodeGetParams
 *     cuPythonInit()
 *     if __cuGraphMemFreeNodeGetParams == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuGraphMemFreeNodeGetParams" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":5345
 *         with gil:
 *             raise RuntimeError('Function "cuGraphMemFreeNodeGetParams" not found')
 *     err = (<CUresult (*)(CUgraphNode, CUdeviceptr*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphMemFreeNodeGetParams)(hNode, dptr_out)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUgraphNode, CUdeviceptr *))__pyx_v_4cuda_5_cuda_5ccuda___cuGraphMemFreeNodeGetParams)(__pyx_v_hNode, __pyx_v_dptr_out); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 5345, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":5346
 *             raise RuntimeError('Function "cuGraphMemFreeNodeGetParams" not found')
 *     err = (<CUresult (*)(CUgraphNode, CUdeviceptr*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphMemFreeNodeGetParams)(hNode, dptr_out)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuDeviceGraphMemTrim(CUdevice device) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":5339
 *     return err
 * 
 * cdef CUresult _cuGraphMemFreeNodeGetParams(CUgraphNode hNode, CUdeviceptr* dptr_out) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuGraphMemFreeNodeGetParams
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuGraphMemFreeNodeGetParams", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":5348
 *     return err
 * 
 * cdef CUresult _cuDeviceGraphMemTrim(CUdevice device) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuDeviceGraphMemTrim
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuDeviceGraphMemTrim(CUdevice __pyx_v_device) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuDeviceGraphMemTrim", 1);
  __Pyx_TraceCall("_cuDeviceGraphMemTrim", __pyx_f[0], 5348, 1, __PYX_ERR(0, 5348, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":5350
 * cdef CUresult _cuDeviceGraphMemTrim(CUdevice device) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuDeviceGraphMemTrim
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuDeviceGraphMemTrim == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 5350, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":5351
 *     global __cuDeviceGraphMemTrim
 *     cuPythonInit()
 *     if __cuDeviceGraphMemTrim == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuDeviceGraphMemTrim" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuDeviceGraphMemTrim == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":5352
 *     cuPythonInit()
 *     if __cuDeviceGraphMemTrim == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuDeviceGraphMemTrim" not found')
 *     err = (<CUresult (*)(CUdevice) except ?CUDA_ERROR_NOT_FOUND nogil> __cuDeviceGraphMemTrim)(device)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":5353
 *     if __cuDeviceGraphMemTrim == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuDeviceGraphMemTrim" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUdevice) except ?CUDA_ERROR_NOT_FOUND nogil> __cuDeviceGraphMemTrim)(device)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__304, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 5353, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 5353, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":5352
 *     cuPythonInit()
 *     if __cuDeviceGraphMemTrim == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuDeviceGraphMemTrim" not found')
 *     err = (<CUresult (*)(CUdevice) except ?CUDA_ERROR_NOT_FOUND nogil> __cuDeviceGraphMemTrim)(device)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":5351
 *     global __cuDeviceGraphMemTrim
 *     cuPythonInit()
 *     if __cuDeviceGraphMemTrim == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuDeviceGraphMemTrim" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":5354
 *         with gil:
 *             raise RuntimeError('Function "cuDeviceGraphMemTrim" not found')
 *     err = (<CUresult (*)(CUdevice) except ?CUDA_ERROR_NOT_FOUND nogil> __cuDeviceGraphMemTrim)(device)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUdevice))__pyx_v_4cuda_5_cuda_5ccuda___cuDeviceGraphMemTrim)(__pyx_v_device); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 5354, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":5355
 *             raise RuntimeError('Function "cuDeviceGraphMemTrim" not found')
 *     err = (<CUresult (*)(CUdevice) except ?CUDA_ERROR_NOT_FOUND nogil> __cuDeviceGraphMemTrim)(device)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuDeviceGetGraphMemAttribute(CUdevice device, CUgraphMem_attribute attr, void* value) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":5348
 *     return err
 * 
 * cdef CUresult _cuDeviceGraphMemTrim(CUdevice device) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuDeviceGraphMemTrim
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuDeviceGraphMemTrim", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":5357
 *     return err
 * 
 * cdef CUresult _cuDeviceGetGraphMemAttribute(CUdevice device, CUgraphMem_attribute attr, void* value) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuDeviceGetGraphMemAttribute
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuDeviceGetGraphMemAttribute(CUdevice __pyx_v_device, CUgraphMem_attribute __pyx_v_attr, void *__pyx_v_value) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuDeviceGetGraphMemAttribute", 1);
  __Pyx_TraceCall("_cuDeviceGetGraphMemAttribute", __pyx_f[0], 5357, 1, __PYX_ERR(0, 5357, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":5359
 * cdef CUresult _cuDeviceGetGraphMemAttribute(CUdevice device, CUgraphMem_attribute attr, void* value) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuDeviceGetGraphMemAttribute
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuDeviceGetGraphMemAttribute == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 5359, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":5360
 *     global __cuDeviceGetGraphMemAttribute
 *     cuPythonInit()
 *     if __cuDeviceGetGraphMemAttribute == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuDeviceGetGraphMemAttribute" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuDeviceGetGraphMemAttribute == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":5361
 *     cuPythonInit()
 *     if __cuDeviceGetGraphMemAttribute == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuDeviceGetGraphMemAttribute" not found')
 *     err = (<CUresult (*)(CUdevice, CUgraphMem_attribute, void*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuDeviceGetGraphMemAttribute)(device, attr, value)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":5362
 *     if __cuDeviceGetGraphMemAttribute == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuDeviceGetGraphMemAttribute" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUdevice, CUgraphMem_attribute, void*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuDeviceGetGraphMemAttribute)(device, attr, value)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__305, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 5362, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 5362, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":5361
 *     cuPythonInit()
 *     if __cuDeviceGetGraphMemAttribute == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuDeviceGetGraphMemAttribute" not found')
 *     err = (<CUresult (*)(CUdevice, CUgraphMem_attribute, void*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuDeviceGetGraphMemAttribute)(device, attr, value)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":5360
 *     global __cuDeviceGetGraphMemAttribute
 *     cuPythonInit()
 *     if __cuDeviceGetGraphMemAttribute == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuDeviceGetGraphMemAttribute" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":5363
 *         with gil:
 *             raise RuntimeError('Function "cuDeviceGetGraphMemAttribute" not found')
 *     err = (<CUresult (*)(CUdevice, CUgraphMem_attribute, void*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuDeviceGetGraphMemAttribute)(device, attr, value)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUdevice, CUgraphMem_attribute, void *))__pyx_v_4cuda_5_cuda_5ccuda___cuDeviceGetGraphMemAttribute)(__pyx_v_device, __pyx_v_attr, __pyx_v_value); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 5363, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":5364
 *             raise RuntimeError('Function "cuDeviceGetGraphMemAttribute" not found')
 *     err = (<CUresult (*)(CUdevice, CUgraphMem_attribute, void*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuDeviceGetGraphMemAttribute)(device, attr, value)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuDeviceSetGraphMemAttribute(CUdevice device, CUgraphMem_attribute attr, void* value) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":5357
 *     return err
 * 
 * cdef CUresult _cuDeviceGetGraphMemAttribute(CUdevice device, CUgraphMem_attribute attr, void* value) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuDeviceGetGraphMemAttribute
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuDeviceGetGraphMemAttribute", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":5366
 *     return err
 * 
 * cdef CUresult _cuDeviceSetGraphMemAttribute(CUdevice device, CUgraphMem_attribute attr, void* value) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuDeviceSetGraphMemAttribute
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuDeviceSetGraphMemAttribute(CUdevice __pyx_v_device, CUgraphMem_attribute __pyx_v_attr, void *__pyx_v_value) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuDeviceSetGraphMemAttribute", 1);
  __Pyx_TraceCall("_cuDeviceSetGraphMemAttribute", __pyx_f[0], 5366, 1, __PYX_ERR(0, 5366, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":5368
 * cdef CUresult _cuDeviceSetGraphMemAttribute(CUdevice device, CUgraphMem_attribute attr, void* value) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuDeviceSetGraphMemAttribute
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuDeviceSetGraphMemAttribute == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 5368, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":5369
 *     global __cuDeviceSetGraphMemAttribute
 *     cuPythonInit()
 *     if __cuDeviceSetGraphMemAttribute == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuDeviceSetGraphMemAttribute" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuDeviceSetGraphMemAttribute == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":5370
 *     cuPythonInit()
 *     if __cuDeviceSetGraphMemAttribute == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuDeviceSetGraphMemAttribute" not found')
 *     err = (<CUresult (*)(CUdevice, CUgraphMem_attribute, void*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuDeviceSetGraphMemAttribute)(device, attr, value)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":5371
 *     if __cuDeviceSetGraphMemAttribute == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuDeviceSetGraphMemAttribute" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUdevice, CUgraphMem_attribute, void*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuDeviceSetGraphMemAttribute)(device, attr, value)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__306, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 5371, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 5371, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":5370
 *     cuPythonInit()
 *     if __cuDeviceSetGraphMemAttribute == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuDeviceSetGraphMemAttribute" not found')
 *     err = (<CUresult (*)(CUdevice, CUgraphMem_attribute, void*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuDeviceSetGraphMemAttribute)(device, attr, value)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":5369
 *     global __cuDeviceSetGraphMemAttribute
 *     cuPythonInit()
 *     if __cuDeviceSetGraphMemAttribute == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuDeviceSetGraphMemAttribute" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":5372
 *         with gil:
 *             raise RuntimeError('Function "cuDeviceSetGraphMemAttribute" not found')
 *     err = (<CUresult (*)(CUdevice, CUgraphMem_attribute, void*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuDeviceSetGraphMemAttribute)(device, attr, value)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUdevice, CUgraphMem_attribute, void *))__pyx_v_4cuda_5_cuda_5ccuda___cuDeviceSetGraphMemAttribute)(__pyx_v_device, __pyx_v_attr, __pyx_v_value); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 5372, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":5373
 *             raise RuntimeError('Function "cuDeviceSetGraphMemAttribute" not found')
 *     err = (<CUresult (*)(CUdevice, CUgraphMem_attribute, void*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuDeviceSetGraphMemAttribute)(device, attr, value)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuGraphClone(CUgraph* phGraphClone, CUgraph originalGraph) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":5366
 *     return err
 * 
 * cdef CUresult _cuDeviceSetGraphMemAttribute(CUdevice device, CUgraphMem_attribute attr, void* value) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuDeviceSetGraphMemAttribute
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuDeviceSetGraphMemAttribute", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":5375
 *     return err
 * 
 * cdef CUresult _cuGraphClone(CUgraph* phGraphClone, CUgraph originalGraph) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuGraphClone
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuGraphClone(CUgraph *__pyx_v_phGraphClone, CUgraph __pyx_v_originalGraph) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuGraphClone", 1);
  __Pyx_TraceCall("_cuGraphClone", __pyx_f[0], 5375, 1, __PYX_ERR(0, 5375, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":5377
 * cdef CUresult _cuGraphClone(CUgraph* phGraphClone, CUgraph originalGraph) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuGraphClone
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuGraphClone == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 5377, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":5378
 *     global __cuGraphClone
 *     cuPythonInit()
 *     if __cuGraphClone == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuGraphClone" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuGraphClone == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":5379
 *     cuPythonInit()
 *     if __cuGraphClone == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuGraphClone" not found')
 *     err = (<CUresult (*)(CUgraph*, CUgraph) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphClone)(phGraphClone, originalGraph)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":5380
 *     if __cuGraphClone == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuGraphClone" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUgraph*, CUgraph) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphClone)(phGraphClone, originalGraph)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__307, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 5380, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 5380, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":5379
 *     cuPythonInit()
 *     if __cuGraphClone == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuGraphClone" not found')
 *     err = (<CUresult (*)(CUgraph*, CUgraph) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphClone)(phGraphClone, originalGraph)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":5378
 *     global __cuGraphClone
 *     cuPythonInit()
 *     if __cuGraphClone == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuGraphClone" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":5381
 *         with gil:
 *             raise RuntimeError('Function "cuGraphClone" not found')
 *     err = (<CUresult (*)(CUgraph*, CUgraph) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphClone)(phGraphClone, originalGraph)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUgraph *, CUgraph))__pyx_v_4cuda_5_cuda_5ccuda___cuGraphClone)(__pyx_v_phGraphClone, __pyx_v_originalGraph); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 5381, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":5382
 *             raise RuntimeError('Function "cuGraphClone" not found')
 *     err = (<CUresult (*)(CUgraph*, CUgraph) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphClone)(phGraphClone, originalGraph)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuGraphNodeFindInClone(CUgraphNode* phNode, CUgraphNode hOriginalNode, CUgraph hClonedGraph) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":5375
 *     return err
 * 
 * cdef CUresult _cuGraphClone(CUgraph* phGraphClone, CUgraph originalGraph) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuGraphClone
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuGraphClone", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":5384
 *     return err
 * 
 * cdef CUresult _cuGraphNodeFindInClone(CUgraphNode* phNode, CUgraphNode hOriginalNode, CUgraph hClonedGraph) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuGraphNodeFindInClone
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuGraphNodeFindInClone(CUgraphNode *__pyx_v_phNode, CUgraphNode __pyx_v_hOriginalNode, CUgraph __pyx_v_hClonedGraph) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuGraphNodeFindInClone", 1);
  __Pyx_TraceCall("_cuGraphNodeFindInClone", __pyx_f[0], 5384, 1, __PYX_ERR(0, 5384, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":5386
 * cdef CUresult _cuGraphNodeFindInClone(CUgraphNode* phNode, CUgraphNode hOriginalNode, CUgraph hClonedGraph) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuGraphNodeFindInClone
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuGraphNodeFindInClone == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 5386, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":5387
 *     global __cuGraphNodeFindInClone
 *     cuPythonInit()
 *     if __cuGraphNodeFindInClone == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuGraphNodeFindInClone" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuGraphNodeFindInClone == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":5388
 *     cuPythonInit()
 *     if __cuGraphNodeFindInClone == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuGraphNodeFindInClone" not found')
 *     err = (<CUresult (*)(CUgraphNode*, CUgraphNode, CUgraph) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphNodeFindInClone)(phNode, hOriginalNode, hClonedGraph)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":5389
 *     if __cuGraphNodeFindInClone == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuGraphNodeFindInClone" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUgraphNode*, CUgraphNode, CUgraph) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphNodeFindInClone)(phNode, hOriginalNode, hClonedGraph)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__308, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 5389, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 5389, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":5388
 *     cuPythonInit()
 *     if __cuGraphNodeFindInClone == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuGraphNodeFindInClone" not found')
 *     err = (<CUresult (*)(CUgraphNode*, CUgraphNode, CUgraph) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphNodeFindInClone)(phNode, hOriginalNode, hClonedGraph)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":5387
 *     global __cuGraphNodeFindInClone
 *     cuPythonInit()
 *     if __cuGraphNodeFindInClone == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuGraphNodeFindInClone" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":5390
 *         with gil:
 *             raise RuntimeError('Function "cuGraphNodeFindInClone" not found')
 *     err = (<CUresult (*)(CUgraphNode*, CUgraphNode, CUgraph) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphNodeFindInClone)(phNode, hOriginalNode, hClonedGraph)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUgraphNode *, CUgraphNode, CUgraph))__pyx_v_4cuda_5_cuda_5ccuda___cuGraphNodeFindInClone)(__pyx_v_phNode, __pyx_v_hOriginalNode, __pyx_v_hClonedGraph); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 5390, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":5391
 *             raise RuntimeError('Function "cuGraphNodeFindInClone" not found')
 *     err = (<CUresult (*)(CUgraphNode*, CUgraphNode, CUgraph) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphNodeFindInClone)(phNode, hOriginalNode, hClonedGraph)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuGraphNodeGetType(CUgraphNode hNode, CUgraphNodeType* typename) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":5384
 *     return err
 * 
 * cdef CUresult _cuGraphNodeFindInClone(CUgraphNode* phNode, CUgraphNode hOriginalNode, CUgraph hClonedGraph) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuGraphNodeFindInClone
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuGraphNodeFindInClone", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":5393
 *     return err
 * 
 * cdef CUresult _cuGraphNodeGetType(CUgraphNode hNode, CUgraphNodeType* typename) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuGraphNodeGetType
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuGraphNodeGetType(CUgraphNode __pyx_v_hNode, CUgraphNodeType *__pyx_v_typename) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuGraphNodeGetType", 1);
  __Pyx_TraceCall("_cuGraphNodeGetType", __pyx_f[0], 5393, 1, __PYX_ERR(0, 5393, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":5395
 * cdef CUresult _cuGraphNodeGetType(CUgraphNode hNode, CUgraphNodeType* typename) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuGraphNodeGetType
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuGraphNodeGetType == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 5395, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":5396
 *     global __cuGraphNodeGetType
 *     cuPythonInit()
 *     if __cuGraphNodeGetType == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuGraphNodeGetType" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuGraphNodeGetType == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":5397
 *     cuPythonInit()
 *     if __cuGraphNodeGetType == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuGraphNodeGetType" not found')
 *     err = (<CUresult (*)(CUgraphNode, CUgraphNodeType*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphNodeGetType)(hNode, typename)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":5398
 *     if __cuGraphNodeGetType == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuGraphNodeGetType" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUgraphNode, CUgraphNodeType*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphNodeGetType)(hNode, typename)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__309, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 5398, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 5398, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":5397
 *     cuPythonInit()
 *     if __cuGraphNodeGetType == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuGraphNodeGetType" not found')
 *     err = (<CUresult (*)(CUgraphNode, CUgraphNodeType*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphNodeGetType)(hNode, typename)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":5396
 *     global __cuGraphNodeGetType
 *     cuPythonInit()
 *     if __cuGraphNodeGetType == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuGraphNodeGetType" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":5399
 *         with gil:
 *             raise RuntimeError('Function "cuGraphNodeGetType" not found')
 *     err = (<CUresult (*)(CUgraphNode, CUgraphNodeType*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphNodeGetType)(hNode, typename)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUgraphNode, CUgraphNodeType *))__pyx_v_4cuda_5_cuda_5ccuda___cuGraphNodeGetType)(__pyx_v_hNode, __pyx_v_typename); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 5399, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":5400
 *             raise RuntimeError('Function "cuGraphNodeGetType" not found')
 *     err = (<CUresult (*)(CUgraphNode, CUgraphNodeType*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphNodeGetType)(hNode, typename)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuGraphGetNodes(CUgraph hGraph, CUgraphNode* nodes, size_t* numNodes) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":5393
 *     return err
 * 
 * cdef CUresult _cuGraphNodeGetType(CUgraphNode hNode, CUgraphNodeType* typename) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuGraphNodeGetType
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuGraphNodeGetType", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":5402
 *     return err
 * 
 * cdef CUresult _cuGraphGetNodes(CUgraph hGraph, CUgraphNode* nodes, size_t* numNodes) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuGraphGetNodes
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuGraphGetNodes(CUgraph __pyx_v_hGraph, CUgraphNode *__pyx_v_nodes, size_t *__pyx_v_numNodes) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuGraphGetNodes", 1);
  __Pyx_TraceCall("_cuGraphGetNodes", __pyx_f[0], 5402, 1, __PYX_ERR(0, 5402, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":5404
 * cdef CUresult _cuGraphGetNodes(CUgraph hGraph, CUgraphNode* nodes, size_t* numNodes) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuGraphGetNodes
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuGraphGetNodes == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 5404, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":5405
 *     global __cuGraphGetNodes
 *     cuPythonInit()
 *     if __cuGraphGetNodes == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuGraphGetNodes" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuGraphGetNodes == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":5406
 *     cuPythonInit()
 *     if __cuGraphGetNodes == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuGraphGetNodes" not found')
 *     err = (<CUresult (*)(CUgraph, CUgraphNode*, size_t*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphGetNodes)(hGraph, nodes, numNodes)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":5407
 *     if __cuGraphGetNodes == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuGraphGetNodes" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUgraph, CUgraphNode*, size_t*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphGetNodes)(hGraph, nodes, numNodes)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__310, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 5407, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 5407, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":5406
 *     cuPythonInit()
 *     if __cuGraphGetNodes == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuGraphGetNodes" not found')
 *     err = (<CUresult (*)(CUgraph, CUgraphNode*, size_t*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphGetNodes)(hGraph, nodes, numNodes)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":5405
 *     global __cuGraphGetNodes
 *     cuPythonInit()
 *     if __cuGraphGetNodes == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuGraphGetNodes" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":5408
 *         with gil:
 *             raise RuntimeError('Function "cuGraphGetNodes" not found')
 *     err = (<CUresult (*)(CUgraph, CUgraphNode*, size_t*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphGetNodes)(hGraph, nodes, numNodes)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUgraph, CUgraphNode *, size_t *))__pyx_v_4cuda_5_cuda_5ccuda___cuGraphGetNodes)(__pyx_v_hGraph, __pyx_v_nodes, __pyx_v_numNodes); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 5408, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":5409
 *             raise RuntimeError('Function "cuGraphGetNodes" not found')
 *     err = (<CUresult (*)(CUgraph, CUgraphNode*, size_t*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphGetNodes)(hGraph, nodes, numNodes)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuGraphGetRootNodes(CUgraph hGraph, CUgraphNode* rootNodes, size_t* numRootNodes) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":5402
 *     return err
 * 
 * cdef CUresult _cuGraphGetNodes(CUgraph hGraph, CUgraphNode* nodes, size_t* numNodes) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuGraphGetNodes
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuGraphGetNodes", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":5411
 *     return err
 * 
 * cdef CUresult _cuGraphGetRootNodes(CUgraph hGraph, CUgraphNode* rootNodes, size_t* numRootNodes) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuGraphGetRootNodes
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuGraphGetRootNodes(CUgraph __pyx_v_hGraph, CUgraphNode *__pyx_v_rootNodes, size_t *__pyx_v_numRootNodes) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuGraphGetRootNodes", 1);
  __Pyx_TraceCall("_cuGraphGetRootNodes", __pyx_f[0], 5411, 1, __PYX_ERR(0, 5411, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":5413
 * cdef CUresult _cuGraphGetRootNodes(CUgraph hGraph, CUgraphNode* rootNodes, size_t* numRootNodes) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuGraphGetRootNodes
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuGraphGetRootNodes == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 5413, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":5414
 *     global __cuGraphGetRootNodes
 *     cuPythonInit()
 *     if __cuGraphGetRootNodes == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuGraphGetRootNodes" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuGraphGetRootNodes == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":5415
 *     cuPythonInit()
 *     if __cuGraphGetRootNodes == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuGraphGetRootNodes" not found')
 *     err = (<CUresult (*)(CUgraph, CUgraphNode*, size_t*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphGetRootNodes)(hGraph, rootNodes, numRootNodes)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":5416
 *     if __cuGraphGetRootNodes == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuGraphGetRootNodes" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUgraph, CUgraphNode*, size_t*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphGetRootNodes)(hGraph, rootNodes, numRootNodes)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__311, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 5416, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 5416, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":5415
 *     cuPythonInit()
 *     if __cuGraphGetRootNodes == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuGraphGetRootNodes" not found')
 *     err = (<CUresult (*)(CUgraph, CUgraphNode*, size_t*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphGetRootNodes)(hGraph, rootNodes, numRootNodes)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":5414
 *     global __cuGraphGetRootNodes
 *     cuPythonInit()
 *     if __cuGraphGetRootNodes == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuGraphGetRootNodes" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":5417
 *         with gil:
 *             raise RuntimeError('Function "cuGraphGetRootNodes" not found')
 *     err = (<CUresult (*)(CUgraph, CUgraphNode*, size_t*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphGetRootNodes)(hGraph, rootNodes, numRootNodes)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUgraph, CUgraphNode *, size_t *))__pyx_v_4cuda_5_cuda_5ccuda___cuGraphGetRootNodes)(__pyx_v_hGraph, __pyx_v_rootNodes, __pyx_v_numRootNodes); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 5417, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":5418
 *             raise RuntimeError('Function "cuGraphGetRootNodes" not found')
 *     err = (<CUresult (*)(CUgraph, CUgraphNode*, size_t*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphGetRootNodes)(hGraph, rootNodes, numRootNodes)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuGraphGetEdges(CUgraph hGraph, CUgraphNode* from_, CUgraphNode* to, size_t* numEdges) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":5411
 *     return err
 * 
 * cdef CUresult _cuGraphGetRootNodes(CUgraph hGraph, CUgraphNode* rootNodes, size_t* numRootNodes) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuGraphGetRootNodes
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuGraphGetRootNodes", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":5420
 *     return err
 * 
 * cdef CUresult _cuGraphGetEdges(CUgraph hGraph, CUgraphNode* from_, CUgraphNode* to, size_t* numEdges) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuGraphGetEdges
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuGraphGetEdges(CUgraph __pyx_v_hGraph, CUgraphNode *__pyx_v_from_, CUgraphNode *__pyx_v_to, size_t *__pyx_v_numEdges) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuGraphGetEdges", 1);
  __Pyx_TraceCall("_cuGraphGetEdges", __pyx_f[0], 5420, 1, __PYX_ERR(0, 5420, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":5422
 * cdef CUresult _cuGraphGetEdges(CUgraph hGraph, CUgraphNode* from_, CUgraphNode* to, size_t* numEdges) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuGraphGetEdges
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuGraphGetEdges == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 5422, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":5423
 *     global __cuGraphGetEdges
 *     cuPythonInit()
 *     if __cuGraphGetEdges == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuGraphGetEdges" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuGraphGetEdges == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":5424
 *     cuPythonInit()
 *     if __cuGraphGetEdges == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuGraphGetEdges" not found')
 *     err = (<CUresult (*)(CUgraph, CUgraphNode*, CUgraphNode*, size_t*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphGetEdges)(hGraph, from_, to, numEdges)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":5425
 *     if __cuGraphGetEdges == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuGraphGetEdges" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUgraph, CUgraphNode*, CUgraphNode*, size_t*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphGetEdges)(hGraph, from_, to, numEdges)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__312, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 5425, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 5425, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":5424
 *     cuPythonInit()
 *     if __cuGraphGetEdges == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuGraphGetEdges" not found')
 *     err = (<CUresult (*)(CUgraph, CUgraphNode*, CUgraphNode*, size_t*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphGetEdges)(hGraph, from_, to, numEdges)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":5423
 *     global __cuGraphGetEdges
 *     cuPythonInit()
 *     if __cuGraphGetEdges == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuGraphGetEdges" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":5426
 *         with gil:
 *             raise RuntimeError('Function "cuGraphGetEdges" not found')
 *     err = (<CUresult (*)(CUgraph, CUgraphNode*, CUgraphNode*, size_t*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphGetEdges)(hGraph, from_, to, numEdges)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUgraph, CUgraphNode *, CUgraphNode *, size_t *))__pyx_v_4cuda_5_cuda_5ccuda___cuGraphGetEdges)(__pyx_v_hGraph, __pyx_v_from_, __pyx_v_to, __pyx_v_numEdges); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 5426, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":5427
 *             raise RuntimeError('Function "cuGraphGetEdges" not found')
 *     err = (<CUresult (*)(CUgraph, CUgraphNode*, CUgraphNode*, size_t*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphGetEdges)(hGraph, from_, to, numEdges)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuGraphGetEdges_v2(CUgraph hGraph, CUgraphNode* from_, CUgraphNode* to, CUgraphEdgeData* edgeData, size_t* numEdges) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":5420
 *     return err
 * 
 * cdef CUresult _cuGraphGetEdges(CUgraph hGraph, CUgraphNode* from_, CUgraphNode* to, size_t* numEdges) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuGraphGetEdges
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuGraphGetEdges", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":5429
 *     return err
 * 
 * cdef CUresult _cuGraphGetEdges_v2(CUgraph hGraph, CUgraphNode* from_, CUgraphNode* to, CUgraphEdgeData* edgeData, size_t* numEdges) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuGraphGetEdges_v2
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuGraphGetEdges_v2(CUgraph __pyx_v_hGraph, CUgraphNode *__pyx_v_from_, CUgraphNode *__pyx_v_to, CUgraphEdgeData *__pyx_v_edgeData, size_t *__pyx_v_numEdges) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuGraphGetEdges_v2", 1);
  __Pyx_TraceCall("_cuGraphGetEdges_v2", __pyx_f[0], 5429, 1, __PYX_ERR(0, 5429, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":5431
 * cdef CUresult _cuGraphGetEdges_v2(CUgraph hGraph, CUgraphNode* from_, CUgraphNode* to, CUgraphEdgeData* edgeData, size_t* numEdges) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuGraphGetEdges_v2
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuGraphGetEdges_v2 == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 5431, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":5432
 *     global __cuGraphGetEdges_v2
 *     cuPythonInit()
 *     if __cuGraphGetEdges_v2 == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuGraphGetEdges_v2" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuGraphGetEdges_v2 == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":5433
 *     cuPythonInit()
 *     if __cuGraphGetEdges_v2 == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuGraphGetEdges_v2" not found')
 *     err = (<CUresult (*)(CUgraph, CUgraphNode*, CUgraphNode*, CUgraphEdgeData*, size_t*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphGetEdges_v2)(hGraph, from_, to, edgeData, numEdges)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":5434
 *     if __cuGraphGetEdges_v2 == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuGraphGetEdges_v2" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUgraph, CUgraphNode*, CUgraphNode*, CUgraphEdgeData*, size_t*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphGetEdges_v2)(hGraph, from_, to, edgeData, numEdges)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__313, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 5434, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 5434, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":5433
 *     cuPythonInit()
 *     if __cuGraphGetEdges_v2 == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuGraphGetEdges_v2" not found')
 *     err = (<CUresult (*)(CUgraph, CUgraphNode*, CUgraphNode*, CUgraphEdgeData*, size_t*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphGetEdges_v2)(hGraph, from_, to, edgeData, numEdges)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":5432
 *     global __cuGraphGetEdges_v2
 *     cuPythonInit()
 *     if __cuGraphGetEdges_v2 == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuGraphGetEdges_v2" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":5435
 *         with gil:
 *             raise RuntimeError('Function "cuGraphGetEdges_v2" not found')
 *     err = (<CUresult (*)(CUgraph, CUgraphNode*, CUgraphNode*, CUgraphEdgeData*, size_t*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphGetEdges_v2)(hGraph, from_, to, edgeData, numEdges)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUgraph, CUgraphNode *, CUgraphNode *, CUgraphEdgeData *, size_t *))__pyx_v_4cuda_5_cuda_5ccuda___cuGraphGetEdges_v2)(__pyx_v_hGraph, __pyx_v_from_, __pyx_v_to, __pyx_v_edgeData, __pyx_v_numEdges); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 5435, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":5436
 *             raise RuntimeError('Function "cuGraphGetEdges_v2" not found')
 *     err = (<CUresult (*)(CUgraph, CUgraphNode*, CUgraphNode*, CUgraphEdgeData*, size_t*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphGetEdges_v2)(hGraph, from_, to, edgeData, numEdges)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuGraphNodeGetDependencies(CUgraphNode hNode, CUgraphNode* dependencies, size_t* numDependencies) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":5429
 *     return err
 * 
 * cdef CUresult _cuGraphGetEdges_v2(CUgraph hGraph, CUgraphNode* from_, CUgraphNode* to, CUgraphEdgeData* edgeData, size_t* numEdges) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuGraphGetEdges_v2
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuGraphGetEdges_v2", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":5438
 *     return err
 * 
 * cdef CUresult _cuGraphNodeGetDependencies(CUgraphNode hNode, CUgraphNode* dependencies, size_t* numDependencies) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuGraphNodeGetDependencies
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuGraphNodeGetDependencies(CUgraphNode __pyx_v_hNode, CUgraphNode *__pyx_v_dependencies, size_t *__pyx_v_numDependencies) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuGraphNodeGetDependencies", 1);
  __Pyx_TraceCall("_cuGraphNodeGetDependencies", __pyx_f[0], 5438, 1, __PYX_ERR(0, 5438, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":5440
 * cdef CUresult _cuGraphNodeGetDependencies(CUgraphNode hNode, CUgraphNode* dependencies, size_t* numDependencies) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuGraphNodeGetDependencies
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuGraphNodeGetDependencies == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 5440, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":5441
 *     global __cuGraphNodeGetDependencies
 *     cuPythonInit()
 *     if __cuGraphNodeGetDependencies == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuGraphNodeGetDependencies" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuGraphNodeGetDependencies == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":5442
 *     cuPythonInit()
 *     if __cuGraphNodeGetDependencies == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuGraphNodeGetDependencies" not found')
 *     err = (<CUresult (*)(CUgraphNode, CUgraphNode*, size_t*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphNodeGetDependencies)(hNode, dependencies, numDependencies)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":5443
 *     if __cuGraphNodeGetDependencies == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuGraphNodeGetDependencies" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUgraphNode, CUgraphNode*, size_t*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphNodeGetDependencies)(hNode, dependencies, numDependencies)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__314, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 5443, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 5443, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":5442
 *     cuPythonInit()
 *     if __cuGraphNodeGetDependencies == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuGraphNodeGetDependencies" not found')
 *     err = (<CUresult (*)(CUgraphNode, CUgraphNode*, size_t*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphNodeGetDependencies)(hNode, dependencies, numDependencies)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":5441
 *     global __cuGraphNodeGetDependencies
 *     cuPythonInit()
 *     if __cuGraphNodeGetDependencies == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuGraphNodeGetDependencies" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":5444
 *         with gil:
 *             raise RuntimeError('Function "cuGraphNodeGetDependencies" not found')
 *     err = (<CUresult (*)(CUgraphNode, CUgraphNode*, size_t*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphNodeGetDependencies)(hNode, dependencies, numDependencies)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUgraphNode, CUgraphNode *, size_t *))__pyx_v_4cuda_5_cuda_5ccuda___cuGraphNodeGetDependencies)(__pyx_v_hNode, __pyx_v_dependencies, __pyx_v_numDependencies); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 5444, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":5445
 *             raise RuntimeError('Function "cuGraphNodeGetDependencies" not found')
 *     err = (<CUresult (*)(CUgraphNode, CUgraphNode*, size_t*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphNodeGetDependencies)(hNode, dependencies, numDependencies)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuGraphNodeGetDependencies_v2(CUgraphNode hNode, CUgraphNode* dependencies, CUgraphEdgeData* edgeData, size_t* numDependencies) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":5438
 *     return err
 * 
 * cdef CUresult _cuGraphNodeGetDependencies(CUgraphNode hNode, CUgraphNode* dependencies, size_t* numDependencies) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuGraphNodeGetDependencies
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuGraphNodeGetDependencies", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":5447
 *     return err
 * 
 * cdef CUresult _cuGraphNodeGetDependencies_v2(CUgraphNode hNode, CUgraphNode* dependencies, CUgraphEdgeData* edgeData, size_t* numDependencies) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuGraphNodeGetDependencies_v2
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuGraphNodeGetDependencies_v2(CUgraphNode __pyx_v_hNode, CUgraphNode *__pyx_v_dependencies, CUgraphEdgeData *__pyx_v_edgeData, size_t *__pyx_v_numDependencies) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuGraphNodeGetDependencies_v2", 1);
  __Pyx_TraceCall("_cuGraphNodeGetDependencies_v2", __pyx_f[0], 5447, 1, __PYX_ERR(0, 5447, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":5449
 * cdef CUresult _cuGraphNodeGetDependencies_v2(CUgraphNode hNode, CUgraphNode* dependencies, CUgraphEdgeData* edgeData, size_t* numDependencies) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuGraphNodeGetDependencies_v2
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuGraphNodeGetDependencies_v2 == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 5449, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":5450
 *     global __cuGraphNodeGetDependencies_v2
 *     cuPythonInit()
 *     if __cuGraphNodeGetDependencies_v2 == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuGraphNodeGetDependencies_v2" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuGraphNodeGetDependencies_v2 == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":5451
 *     cuPythonInit()
 *     if __cuGraphNodeGetDependencies_v2 == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuGraphNodeGetDependencies_v2" not found')
 *     err = (<CUresult (*)(CUgraphNode, CUgraphNode*, CUgraphEdgeData*, size_t*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphNodeGetDependencies_v2)(hNode, dependencies, edgeData, numDependencies)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":5452
 *     if __cuGraphNodeGetDependencies_v2 == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuGraphNodeGetDependencies_v2" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUgraphNode, CUgraphNode*, CUgraphEdgeData*, size_t*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphNodeGetDependencies_v2)(hNode, dependencies, edgeData, numDependencies)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__315, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 5452, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 5452, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":5451
 *     cuPythonInit()
 *     if __cuGraphNodeGetDependencies_v2 == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuGraphNodeGetDependencies_v2" not found')
 *     err = (<CUresult (*)(CUgraphNode, CUgraphNode*, CUgraphEdgeData*, size_t*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphNodeGetDependencies_v2)(hNode, dependencies, edgeData, numDependencies)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":5450
 *     global __cuGraphNodeGetDependencies_v2
 *     cuPythonInit()
 *     if __cuGraphNodeGetDependencies_v2 == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuGraphNodeGetDependencies_v2" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":5453
 *         with gil:
 *             raise RuntimeError('Function "cuGraphNodeGetDependencies_v2" not found')
 *     err = (<CUresult (*)(CUgraphNode, CUgraphNode*, CUgraphEdgeData*, size_t*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphNodeGetDependencies_v2)(hNode, dependencies, edgeData, numDependencies)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUgraphNode, CUgraphNode *, CUgraphEdgeData *, size_t *))__pyx_v_4cuda_5_cuda_5ccuda___cuGraphNodeGetDependencies_v2)(__pyx_v_hNode, __pyx_v_dependencies, __pyx_v_edgeData, __pyx_v_numDependencies); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 5453, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":5454
 *             raise RuntimeError('Function "cuGraphNodeGetDependencies_v2" not found')
 *     err = (<CUresult (*)(CUgraphNode, CUgraphNode*, CUgraphEdgeData*, size_t*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphNodeGetDependencies_v2)(hNode, dependencies, edgeData, numDependencies)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuGraphNodeGetDependentNodes(CUgraphNode hNode, CUgraphNode* dependentNodes, size_t* numDependentNodes) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":5447
 *     return err
 * 
 * cdef CUresult _cuGraphNodeGetDependencies_v2(CUgraphNode hNode, CUgraphNode* dependencies, CUgraphEdgeData* edgeData, size_t* numDependencies) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuGraphNodeGetDependencies_v2
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuGraphNodeGetDependencies_v2", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":5456
 *     return err
 * 
 * cdef CUresult _cuGraphNodeGetDependentNodes(CUgraphNode hNode, CUgraphNode* dependentNodes, size_t* numDependentNodes) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuGraphNodeGetDependentNodes
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuGraphNodeGetDependentNodes(CUgraphNode __pyx_v_hNode, CUgraphNode *__pyx_v_dependentNodes, size_t *__pyx_v_numDependentNodes) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuGraphNodeGetDependentNodes", 1);
  __Pyx_TraceCall("_cuGraphNodeGetDependentNodes", __pyx_f[0], 5456, 1, __PYX_ERR(0, 5456, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":5458
 * cdef CUresult _cuGraphNodeGetDependentNodes(CUgraphNode hNode, CUgraphNode* dependentNodes, size_t* numDependentNodes) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuGraphNodeGetDependentNodes
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuGraphNodeGetDependentNodes == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 5458, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":5459
 *     global __cuGraphNodeGetDependentNodes
 *     cuPythonInit()
 *     if __cuGraphNodeGetDependentNodes == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuGraphNodeGetDependentNodes" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuGraphNodeGetDependentNodes == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":5460
 *     cuPythonInit()
 *     if __cuGraphNodeGetDependentNodes == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuGraphNodeGetDependentNodes" not found')
 *     err = (<CUresult (*)(CUgraphNode, CUgraphNode*, size_t*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphNodeGetDependentNodes)(hNode, dependentNodes, numDependentNodes)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":5461
 *     if __cuGraphNodeGetDependentNodes == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuGraphNodeGetDependentNodes" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUgraphNode, CUgraphNode*, size_t*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphNodeGetDependentNodes)(hNode, dependentNodes, numDependentNodes)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__316, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 5461, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 5461, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":5460
 *     cuPythonInit()
 *     if __cuGraphNodeGetDependentNodes == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuGraphNodeGetDependentNodes" not found')
 *     err = (<CUresult (*)(CUgraphNode, CUgraphNode*, size_t*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphNodeGetDependentNodes)(hNode, dependentNodes, numDependentNodes)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":5459
 *     global __cuGraphNodeGetDependentNodes
 *     cuPythonInit()
 *     if __cuGraphNodeGetDependentNodes == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuGraphNodeGetDependentNodes" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":5462
 *         with gil:
 *             raise RuntimeError('Function "cuGraphNodeGetDependentNodes" not found')
 *     err = (<CUresult (*)(CUgraphNode, CUgraphNode*, size_t*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphNodeGetDependentNodes)(hNode, dependentNodes, numDependentNodes)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUgraphNode, CUgraphNode *, size_t *))__pyx_v_4cuda_5_cuda_5ccuda___cuGraphNodeGetDependentNodes)(__pyx_v_hNode, __pyx_v_dependentNodes, __pyx_v_numDependentNodes); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 5462, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":5463
 *             raise RuntimeError('Function "cuGraphNodeGetDependentNodes" not found')
 *     err = (<CUresult (*)(CUgraphNode, CUgraphNode*, size_t*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphNodeGetDependentNodes)(hNode, dependentNodes, numDependentNodes)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuGraphNodeGetDependentNodes_v2(CUgraphNode hNode, CUgraphNode* dependentNodes, CUgraphEdgeData* edgeData, size_t* numDependentNodes) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":5456
 *     return err
 * 
 * cdef CUresult _cuGraphNodeGetDependentNodes(CUgraphNode hNode, CUgraphNode* dependentNodes, size_t* numDependentNodes) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuGraphNodeGetDependentNodes
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuGraphNodeGetDependentNodes", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":5465
 *     return err
 * 
 * cdef CUresult _cuGraphNodeGetDependentNodes_v2(CUgraphNode hNode, CUgraphNode* dependentNodes, CUgraphEdgeData* edgeData, size_t* numDependentNodes) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuGraphNodeGetDependentNodes_v2
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuGraphNodeGetDependentNodes_v2(CUgraphNode __pyx_v_hNode, CUgraphNode *__pyx_v_dependentNodes, CUgraphEdgeData *__pyx_v_edgeData, size_t *__pyx_v_numDependentNodes) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuGraphNodeGetDependentNodes_v2", 1);
  __Pyx_TraceCall("_cuGraphNodeGetDependentNodes_v2", __pyx_f[0], 5465, 1, __PYX_ERR(0, 5465, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":5467
 * cdef CUresult _cuGraphNodeGetDependentNodes_v2(CUgraphNode hNode, CUgraphNode* dependentNodes, CUgraphEdgeData* edgeData, size_t* numDependentNodes) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuGraphNodeGetDependentNodes_v2
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuGraphNodeGetDependentNodes_v2 == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 5467, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":5468
 *     global __cuGraphNodeGetDependentNodes_v2
 *     cuPythonInit()
 *     if __cuGraphNodeGetDependentNodes_v2 == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuGraphNodeGetDependentNodes_v2" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuGraphNodeGetDependentNodes_v2 == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":5469
 *     cuPythonInit()
 *     if __cuGraphNodeGetDependentNodes_v2 == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuGraphNodeGetDependentNodes_v2" not found')
 *     err = (<CUresult (*)(CUgraphNode, CUgraphNode*, CUgraphEdgeData*, size_t*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphNodeGetDependentNodes_v2)(hNode, dependentNodes, edgeData, numDependentNodes)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":5470
 *     if __cuGraphNodeGetDependentNodes_v2 == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuGraphNodeGetDependentNodes_v2" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUgraphNode, CUgraphNode*, CUgraphEdgeData*, size_t*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphNodeGetDependentNodes_v2)(hNode, dependentNodes, edgeData, numDependentNodes)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__317, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 5470, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 5470, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":5469
 *     cuPythonInit()
 *     if __cuGraphNodeGetDependentNodes_v2 == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuGraphNodeGetDependentNodes_v2" not found')
 *     err = (<CUresult (*)(CUgraphNode, CUgraphNode*, CUgraphEdgeData*, size_t*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphNodeGetDependentNodes_v2)(hNode, dependentNodes, edgeData, numDependentNodes)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":5468
 *     global __cuGraphNodeGetDependentNodes_v2
 *     cuPythonInit()
 *     if __cuGraphNodeGetDependentNodes_v2 == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuGraphNodeGetDependentNodes_v2" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":5471
 *         with gil:
 *             raise RuntimeError('Function "cuGraphNodeGetDependentNodes_v2" not found')
 *     err = (<CUresult (*)(CUgraphNode, CUgraphNode*, CUgraphEdgeData*, size_t*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphNodeGetDependentNodes_v2)(hNode, dependentNodes, edgeData, numDependentNodes)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUgraphNode, CUgraphNode *, CUgraphEdgeData *, size_t *))__pyx_v_4cuda_5_cuda_5ccuda___cuGraphNodeGetDependentNodes_v2)(__pyx_v_hNode, __pyx_v_dependentNodes, __pyx_v_edgeData, __pyx_v_numDependentNodes); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 5471, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":5472
 *             raise RuntimeError('Function "cuGraphNodeGetDependentNodes_v2" not found')
 *     err = (<CUresult (*)(CUgraphNode, CUgraphNode*, CUgraphEdgeData*, size_t*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphNodeGetDependentNodes_v2)(hNode, dependentNodes, edgeData, numDependentNodes)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuGraphAddDependencies(CUgraph hGraph, const CUgraphNode* from_, const CUgraphNode* to, size_t numDependencies) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":5465
 *     return err
 * 
 * cdef CUresult _cuGraphNodeGetDependentNodes_v2(CUgraphNode hNode, CUgraphNode* dependentNodes, CUgraphEdgeData* edgeData, size_t* numDependentNodes) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuGraphNodeGetDependentNodes_v2
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuGraphNodeGetDependentNodes_v2", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":5474
 *     return err
 * 
 * cdef CUresult _cuGraphAddDependencies(CUgraph hGraph, const CUgraphNode* from_, const CUgraphNode* to, size_t numDependencies) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuGraphAddDependencies
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuGraphAddDependencies(CUgraph __pyx_v_hGraph, CUgraphNode const *__pyx_v_from_, CUgraphNode const *__pyx_v_to, size_t __pyx_v_numDependencies) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuGraphAddDependencies", 1);
  __Pyx_TraceCall("_cuGraphAddDependencies", __pyx_f[0], 5474, 1, __PYX_ERR(0, 5474, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":5476
 * cdef CUresult _cuGraphAddDependencies(CUgraph hGraph, const CUgraphNode* from_, const CUgraphNode* to, size_t numDependencies) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuGraphAddDependencies
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuGraphAddDependencies == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 5476, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":5477
 *     global __cuGraphAddDependencies
 *     cuPythonInit()
 *     if __cuGraphAddDependencies == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuGraphAddDependencies" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuGraphAddDependencies == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":5478
 *     cuPythonInit()
 *     if __cuGraphAddDependencies == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuGraphAddDependencies" not found')
 *     err = (<CUresult (*)(CUgraph, const CUgraphNode*, const CUgraphNode*, size_t) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphAddDependencies)(hGraph, from_, to, numDependencies)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":5479
 *     if __cuGraphAddDependencies == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuGraphAddDependencies" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUgraph, const CUgraphNode*, const CUgraphNode*, size_t) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphAddDependencies)(hGraph, from_, to, numDependencies)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__318, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 5479, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 5479, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":5478
 *     cuPythonInit()
 *     if __cuGraphAddDependencies == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuGraphAddDependencies" not found')
 *     err = (<CUresult (*)(CUgraph, const CUgraphNode*, const CUgraphNode*, size_t) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphAddDependencies)(hGraph, from_, to, numDependencies)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":5477
 *     global __cuGraphAddDependencies
 *     cuPythonInit()
 *     if __cuGraphAddDependencies == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuGraphAddDependencies" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":5480
 *         with gil:
 *             raise RuntimeError('Function "cuGraphAddDependencies" not found')
 *     err = (<CUresult (*)(CUgraph, const CUgraphNode*, const CUgraphNode*, size_t) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphAddDependencies)(hGraph, from_, to, numDependencies)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUgraph, CUgraphNode const *, CUgraphNode const *, size_t))__pyx_v_4cuda_5_cuda_5ccuda___cuGraphAddDependencies)(__pyx_v_hGraph, __pyx_v_from_, __pyx_v_to, __pyx_v_numDependencies); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 5480, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":5481
 *             raise RuntimeError('Function "cuGraphAddDependencies" not found')
 *     err = (<CUresult (*)(CUgraph, const CUgraphNode*, const CUgraphNode*, size_t) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphAddDependencies)(hGraph, from_, to, numDependencies)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuGraphAddDependencies_v2(CUgraph hGraph, const CUgraphNode* from_, const CUgraphNode* to, const CUgraphEdgeData* edgeData, size_t numDependencies) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":5474
 *     return err
 * 
 * cdef CUresult _cuGraphAddDependencies(CUgraph hGraph, const CUgraphNode* from_, const CUgraphNode* to, size_t numDependencies) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuGraphAddDependencies
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuGraphAddDependencies", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":5483
 *     return err
 * 
 * cdef CUresult _cuGraphAddDependencies_v2(CUgraph hGraph, const CUgraphNode* from_, const CUgraphNode* to, const CUgraphEdgeData* edgeData, size_t numDependencies) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuGraphAddDependencies_v2
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuGraphAddDependencies_v2(CUgraph __pyx_v_hGraph, CUgraphNode const *__pyx_v_from_, CUgraphNode const *__pyx_v_to, CUgraphEdgeData const *__pyx_v_edgeData, size_t __pyx_v_numDependencies) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuGraphAddDependencies_v2", 1);
  __Pyx_TraceCall("_cuGraphAddDependencies_v2", __pyx_f[0], 5483, 1, __PYX_ERR(0, 5483, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":5485
 * cdef CUresult _cuGraphAddDependencies_v2(CUgraph hGraph, const CUgraphNode* from_, const CUgraphNode* to, const CUgraphEdgeData* edgeData, size_t numDependencies) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuGraphAddDependencies_v2
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuGraphAddDependencies_v2 == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 5485, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":5486
 *     global __cuGraphAddDependencies_v2
 *     cuPythonInit()
 *     if __cuGraphAddDependencies_v2 == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuGraphAddDependencies_v2" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuGraphAddDependencies_v2 == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":5487
 *     cuPythonInit()
 *     if __cuGraphAddDependencies_v2 == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuGraphAddDependencies_v2" not found')
 *     err = (<CUresult (*)(CUgraph, const CUgraphNode*, const CUgraphNode*, const CUgraphEdgeData*, size_t) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphAddDependencies_v2)(hGraph, from_, to, edgeData, numDependencies)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":5488
 *     if __cuGraphAddDependencies_v2 == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuGraphAddDependencies_v2" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUgraph, const CUgraphNode*, const CUgraphNode*, const CUgraphEdgeData*, size_t) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphAddDependencies_v2)(hGraph, from_, to, edgeData, numDependencies)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__319, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 5488, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 5488, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":5487
 *     cuPythonInit()
 *     if __cuGraphAddDependencies_v2 == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuGraphAddDependencies_v2" not found')
 *     err = (<CUresult (*)(CUgraph, const CUgraphNode*, const CUgraphNode*, const CUgraphEdgeData*, size_t) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphAddDependencies_v2)(hGraph, from_, to, edgeData, numDependencies)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":5486
 *     global __cuGraphAddDependencies_v2
 *     cuPythonInit()
 *     if __cuGraphAddDependencies_v2 == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuGraphAddDependencies_v2" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":5489
 *         with gil:
 *             raise RuntimeError('Function "cuGraphAddDependencies_v2" not found')
 *     err = (<CUresult (*)(CUgraph, const CUgraphNode*, const CUgraphNode*, const CUgraphEdgeData*, size_t) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphAddDependencies_v2)(hGraph, from_, to, edgeData, numDependencies)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUgraph, CUgraphNode const *, CUgraphNode const *, CUgraphEdgeData const *, size_t))__pyx_v_4cuda_5_cuda_5ccuda___cuGraphAddDependencies_v2)(__pyx_v_hGraph, __pyx_v_from_, __pyx_v_to, __pyx_v_edgeData, __pyx_v_numDependencies); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 5489, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":5490
 *             raise RuntimeError('Function "cuGraphAddDependencies_v2" not found')
 *     err = (<CUresult (*)(CUgraph, const CUgraphNode*, const CUgraphNode*, const CUgraphEdgeData*, size_t) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphAddDependencies_v2)(hGraph, from_, to, edgeData, numDependencies)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuGraphRemoveDependencies(CUgraph hGraph, const CUgraphNode* from_, const CUgraphNode* to, size_t numDependencies) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":5483
 *     return err
 * 
 * cdef CUresult _cuGraphAddDependencies_v2(CUgraph hGraph, const CUgraphNode* from_, const CUgraphNode* to, const CUgraphEdgeData* edgeData, size_t numDependencies) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuGraphAddDependencies_v2
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuGraphAddDependencies_v2", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":5492
 *     return err
 * 
 * cdef CUresult _cuGraphRemoveDependencies(CUgraph hGraph, const CUgraphNode* from_, const CUgraphNode* to, size_t numDependencies) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuGraphRemoveDependencies
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuGraphRemoveDependencies(CUgraph __pyx_v_hGraph, CUgraphNode const *__pyx_v_from_, CUgraphNode const *__pyx_v_to, size_t __pyx_v_numDependencies) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuGraphRemoveDependencies", 1);
  __Pyx_TraceCall("_cuGraphRemoveDependencies", __pyx_f[0], 5492, 1, __PYX_ERR(0, 5492, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":5494
 * cdef CUresult _cuGraphRemoveDependencies(CUgraph hGraph, const CUgraphNode* from_, const CUgraphNode* to, size_t numDependencies) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuGraphRemoveDependencies
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuGraphRemoveDependencies == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 5494, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":5495
 *     global __cuGraphRemoveDependencies
 *     cuPythonInit()
 *     if __cuGraphRemoveDependencies == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuGraphRemoveDependencies" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuGraphRemoveDependencies == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":5496
 *     cuPythonInit()
 *     if __cuGraphRemoveDependencies == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuGraphRemoveDependencies" not found')
 *     err = (<CUresult (*)(CUgraph, const CUgraphNode*, const CUgraphNode*, size_t) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphRemoveDependencies)(hGraph, from_, to, numDependencies)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":5497
 *     if __cuGraphRemoveDependencies == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuGraphRemoveDependencies" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUgraph, const CUgraphNode*, const CUgraphNode*, size_t) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphRemoveDependencies)(hGraph, from_, to, numDependencies)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__320, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 5497, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 5497, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":5496
 *     cuPythonInit()
 *     if __cuGraphRemoveDependencies == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuGraphRemoveDependencies" not found')
 *     err = (<CUresult (*)(CUgraph, const CUgraphNode*, const CUgraphNode*, size_t) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphRemoveDependencies)(hGraph, from_, to, numDependencies)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":5495
 *     global __cuGraphRemoveDependencies
 *     cuPythonInit()
 *     if __cuGraphRemoveDependencies == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuGraphRemoveDependencies" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":5498
 *         with gil:
 *             raise RuntimeError('Function "cuGraphRemoveDependencies" not found')
 *     err = (<CUresult (*)(CUgraph, const CUgraphNode*, const CUgraphNode*, size_t) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphRemoveDependencies)(hGraph, from_, to, numDependencies)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUgraph, CUgraphNode const *, CUgraphNode const *, size_t))__pyx_v_4cuda_5_cuda_5ccuda___cuGraphRemoveDependencies)(__pyx_v_hGraph, __pyx_v_from_, __pyx_v_to, __pyx_v_numDependencies); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 5498, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":5499
 *             raise RuntimeError('Function "cuGraphRemoveDependencies" not found')
 *     err = (<CUresult (*)(CUgraph, const CUgraphNode*, const CUgraphNode*, size_t) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphRemoveDependencies)(hGraph, from_, to, numDependencies)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuGraphRemoveDependencies_v2(CUgraph hGraph, const CUgraphNode* from_, const CUgraphNode* to, const CUgraphEdgeData* edgeData, size_t numDependencies) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":5492
 *     return err
 * 
 * cdef CUresult _cuGraphRemoveDependencies(CUgraph hGraph, const CUgraphNode* from_, const CUgraphNode* to, size_t numDependencies) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuGraphRemoveDependencies
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuGraphRemoveDependencies", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":5501
 *     return err
 * 
 * cdef CUresult _cuGraphRemoveDependencies_v2(CUgraph hGraph, const CUgraphNode* from_, const CUgraphNode* to, const CUgraphEdgeData* edgeData, size_t numDependencies) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuGraphRemoveDependencies_v2
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuGraphRemoveDependencies_v2(CUgraph __pyx_v_hGraph, CUgraphNode const *__pyx_v_from_, CUgraphNode const *__pyx_v_to, CUgraphEdgeData const *__pyx_v_edgeData, size_t __pyx_v_numDependencies) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuGraphRemoveDependencies_v2", 1);
  __Pyx_TraceCall("_cuGraphRemoveDependencies_v2", __pyx_f[0], 5501, 1, __PYX_ERR(0, 5501, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":5503
 * cdef CUresult _cuGraphRemoveDependencies_v2(CUgraph hGraph, const CUgraphNode* from_, const CUgraphNode* to, const CUgraphEdgeData* edgeData, size_t numDependencies) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuGraphRemoveDependencies_v2
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuGraphRemoveDependencies_v2 == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 5503, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":5504
 *     global __cuGraphRemoveDependencies_v2
 *     cuPythonInit()
 *     if __cuGraphRemoveDependencies_v2 == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuGraphRemoveDependencies_v2" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuGraphRemoveDependencies_v2 == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":5505
 *     cuPythonInit()
 *     if __cuGraphRemoveDependencies_v2 == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuGraphRemoveDependencies_v2" not found')
 *     err = (<CUresult (*)(CUgraph, const CUgraphNode*, const CUgraphNode*, const CUgraphEdgeData*, size_t) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphRemoveDependencies_v2)(hGraph, from_, to, edgeData, numDependencies)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":5506
 *     if __cuGraphRemoveDependencies_v2 == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuGraphRemoveDependencies_v2" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUgraph, const CUgraphNode*, const CUgraphNode*, const CUgraphEdgeData*, size_t) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphRemoveDependencies_v2)(hGraph, from_, to, edgeData, numDependencies)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__321, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 5506, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 5506, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":5505
 *     cuPythonInit()
 *     if __cuGraphRemoveDependencies_v2 == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuGraphRemoveDependencies_v2" not found')
 *     err = (<CUresult (*)(CUgraph, const CUgraphNode*, const CUgraphNode*, const CUgraphEdgeData*, size_t) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphRemoveDependencies_v2)(hGraph, from_, to, edgeData, numDependencies)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":5504
 *     global __cuGraphRemoveDependencies_v2
 *     cuPythonInit()
 *     if __cuGraphRemoveDependencies_v2 == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuGraphRemoveDependencies_v2" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":5507
 *         with gil:
 *             raise RuntimeError('Function "cuGraphRemoveDependencies_v2" not found')
 *     err = (<CUresult (*)(CUgraph, const CUgraphNode*, const CUgraphNode*, const CUgraphEdgeData*, size_t) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphRemoveDependencies_v2)(hGraph, from_, to, edgeData, numDependencies)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUgraph, CUgraphNode const *, CUgraphNode const *, CUgraphEdgeData const *, size_t))__pyx_v_4cuda_5_cuda_5ccuda___cuGraphRemoveDependencies_v2)(__pyx_v_hGraph, __pyx_v_from_, __pyx_v_to, __pyx_v_edgeData, __pyx_v_numDependencies); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 5507, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":5508
 *             raise RuntimeError('Function "cuGraphRemoveDependencies_v2" not found')
 *     err = (<CUresult (*)(CUgraph, const CUgraphNode*, const CUgraphNode*, const CUgraphEdgeData*, size_t) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphRemoveDependencies_v2)(hGraph, from_, to, edgeData, numDependencies)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuGraphDestroyNode(CUgraphNode hNode) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":5501
 *     return err
 * 
 * cdef CUresult _cuGraphRemoveDependencies_v2(CUgraph hGraph, const CUgraphNode* from_, const CUgraphNode* to, const CUgraphEdgeData* edgeData, size_t numDependencies) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuGraphRemoveDependencies_v2
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuGraphRemoveDependencies_v2", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":5510
 *     return err
 * 
 * cdef CUresult _cuGraphDestroyNode(CUgraphNode hNode) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuGraphDestroyNode
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuGraphDestroyNode(CUgraphNode __pyx_v_hNode) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuGraphDestroyNode", 1);
  __Pyx_TraceCall("_cuGraphDestroyNode", __pyx_f[0], 5510, 1, __PYX_ERR(0, 5510, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":5512
 * cdef CUresult _cuGraphDestroyNode(CUgraphNode hNode) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuGraphDestroyNode
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuGraphDestroyNode == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 5512, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":5513
 *     global __cuGraphDestroyNode
 *     cuPythonInit()
 *     if __cuGraphDestroyNode == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuGraphDestroyNode" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuGraphDestroyNode == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":5514
 *     cuPythonInit()
 *     if __cuGraphDestroyNode == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuGraphDestroyNode" not found')
 *     err = (<CUresult (*)(CUgraphNode) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphDestroyNode)(hNode)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":5515
 *     if __cuGraphDestroyNode == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuGraphDestroyNode" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUgraphNode) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphDestroyNode)(hNode)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__322, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 5515, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 5515, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":5514
 *     cuPythonInit()
 *     if __cuGraphDestroyNode == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuGraphDestroyNode" not found')
 *     err = (<CUresult (*)(CUgraphNode) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphDestroyNode)(hNode)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":5513
 *     global __cuGraphDestroyNode
 *     cuPythonInit()
 *     if __cuGraphDestroyNode == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuGraphDestroyNode" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":5516
 *         with gil:
 *             raise RuntimeError('Function "cuGraphDestroyNode" not found')
 *     err = (<CUresult (*)(CUgraphNode) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphDestroyNode)(hNode)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUgraphNode))__pyx_v_4cuda_5_cuda_5ccuda___cuGraphDestroyNode)(__pyx_v_hNode); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 5516, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":5517
 *             raise RuntimeError('Function "cuGraphDestroyNode" not found')
 *     err = (<CUresult (*)(CUgraphNode) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphDestroyNode)(hNode)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuGraphInstantiateWithFlags(CUgraphExec* phGraphExec, CUgraph hGraph, unsigned long long flags) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":5510
 *     return err
 * 
 * cdef CUresult _cuGraphDestroyNode(CUgraphNode hNode) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuGraphDestroyNode
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuGraphDestroyNode", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":5519
 *     return err
 * 
 * cdef CUresult _cuGraphInstantiateWithFlags(CUgraphExec* phGraphExec, CUgraph hGraph, unsigned long long flags) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuGraphInstantiateWithFlags
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuGraphInstantiateWithFlags(CUgraphExec *__pyx_v_phGraphExec, CUgraph __pyx_v_hGraph, unsigned PY_LONG_LONG __pyx_v_flags) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuGraphInstantiateWithFlags", 1);
  __Pyx_TraceCall("_cuGraphInstantiateWithFlags", __pyx_f[0], 5519, 1, __PYX_ERR(0, 5519, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":5521
 * cdef CUresult _cuGraphInstantiateWithFlags(CUgraphExec* phGraphExec, CUgraph hGraph, unsigned long long flags) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuGraphInstantiateWithFlags
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuGraphInstantiateWithFlags == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 5521, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":5522
 *     global __cuGraphInstantiateWithFlags
 *     cuPythonInit()
 *     if __cuGraphInstantiateWithFlags == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuGraphInstantiateWithFlags" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuGraphInstantiateWithFlags == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":5523
 *     cuPythonInit()
 *     if __cuGraphInstantiateWithFlags == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuGraphInstantiateWithFlags" not found')
 *     err = (<CUresult (*)(CUgraphExec*, CUgraph, unsigned long long) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphInstantiateWithFlags)(phGraphExec, hGraph, flags)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":5524
 *     if __cuGraphInstantiateWithFlags == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuGraphInstantiateWithFlags" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUgraphExec*, CUgraph, unsigned long long) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphInstantiateWithFlags)(phGraphExec, hGraph, flags)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__323, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 5524, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 5524, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":5523
 *     cuPythonInit()
 *     if __cuGraphInstantiateWithFlags == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuGraphInstantiateWithFlags" not found')
 *     err = (<CUresult (*)(CUgraphExec*, CUgraph, unsigned long long) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphInstantiateWithFlags)(phGraphExec, hGraph, flags)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":5522
 *     global __cuGraphInstantiateWithFlags
 *     cuPythonInit()
 *     if __cuGraphInstantiateWithFlags == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuGraphInstantiateWithFlags" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":5525
 *         with gil:
 *             raise RuntimeError('Function "cuGraphInstantiateWithFlags" not found')
 *     err = (<CUresult (*)(CUgraphExec*, CUgraph, unsigned long long) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphInstantiateWithFlags)(phGraphExec, hGraph, flags)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUgraphExec *, CUgraph, unsigned PY_LONG_LONG))__pyx_v_4cuda_5_cuda_5ccuda___cuGraphInstantiateWithFlags)(__pyx_v_phGraphExec, __pyx_v_hGraph, __pyx_v_flags); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 5525, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":5526
 *             raise RuntimeError('Function "cuGraphInstantiateWithFlags" not found')
 *     err = (<CUresult (*)(CUgraphExec*, CUgraph, unsigned long long) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphInstantiateWithFlags)(phGraphExec, hGraph, flags)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuGraphInstantiateWithParams(CUgraphExec* phGraphExec, CUgraph hGraph, CUDA_GRAPH_INSTANTIATE_PARAMS* instantiateParams) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":5519
 *     return err
 * 
 * cdef CUresult _cuGraphInstantiateWithFlags(CUgraphExec* phGraphExec, CUgraph hGraph, unsigned long long flags) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuGraphInstantiateWithFlags
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuGraphInstantiateWithFlags", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":5528
 *     return err
 * 
 * cdef CUresult _cuGraphInstantiateWithParams(CUgraphExec* phGraphExec, CUgraph hGraph, CUDA_GRAPH_INSTANTIATE_PARAMS* instantiateParams) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuGraphInstantiateWithParams
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuGraphInstantiateWithParams(CUgraphExec *__pyx_v_phGraphExec, CUgraph __pyx_v_hGraph, CUDA_GRAPH_INSTANTIATE_PARAMS *__pyx_v_instantiateParams) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuGraphInstantiateWithParams", 1);
  __Pyx_TraceCall("_cuGraphInstantiateWithParams", __pyx_f[0], 5528, 1, __PYX_ERR(0, 5528, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":5530
 * cdef CUresult _cuGraphInstantiateWithParams(CUgraphExec* phGraphExec, CUgraph hGraph, CUDA_GRAPH_INSTANTIATE_PARAMS* instantiateParams) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuGraphInstantiateWithParams
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuGraphInstantiateWithParams == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 5530, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":5531
 *     global __cuGraphInstantiateWithParams
 *     cuPythonInit()
 *     if __cuGraphInstantiateWithParams == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuGraphInstantiateWithParams" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuGraphInstantiateWithParams == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":5532
 *     cuPythonInit()
 *     if __cuGraphInstantiateWithParams == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuGraphInstantiateWithParams" not found')
 *     err = (<CUresult (*)(CUgraphExec*, CUgraph, CUDA_GRAPH_INSTANTIATE_PARAMS*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphInstantiateWithParams)(phGraphExec, hGraph, instantiateParams)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":5533
 *     if __cuGraphInstantiateWithParams == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuGraphInstantiateWithParams" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUgraphExec*, CUgraph, CUDA_GRAPH_INSTANTIATE_PARAMS*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphInstantiateWithParams)(phGraphExec, hGraph, instantiateParams)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__324, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 5533, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 5533, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":5532
 *     cuPythonInit()
 *     if __cuGraphInstantiateWithParams == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuGraphInstantiateWithParams" not found')
 *     err = (<CUresult (*)(CUgraphExec*, CUgraph, CUDA_GRAPH_INSTANTIATE_PARAMS*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphInstantiateWithParams)(phGraphExec, hGraph, instantiateParams)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":5531
 *     global __cuGraphInstantiateWithParams
 *     cuPythonInit()
 *     if __cuGraphInstantiateWithParams == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuGraphInstantiateWithParams" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":5534
 *         with gil:
 *             raise RuntimeError('Function "cuGraphInstantiateWithParams" not found')
 *     err = (<CUresult (*)(CUgraphExec*, CUgraph, CUDA_GRAPH_INSTANTIATE_PARAMS*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphInstantiateWithParams)(phGraphExec, hGraph, instantiateParams)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUgraphExec *, CUgraph, CUDA_GRAPH_INSTANTIATE_PARAMS *))__pyx_v_4cuda_5_cuda_5ccuda___cuGraphInstantiateWithParams)(__pyx_v_phGraphExec, __pyx_v_hGraph, __pyx_v_instantiateParams); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 5534, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":5535
 *             raise RuntimeError('Function "cuGraphInstantiateWithParams" not found')
 *     err = (<CUresult (*)(CUgraphExec*, CUgraph, CUDA_GRAPH_INSTANTIATE_PARAMS*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphInstantiateWithParams)(phGraphExec, hGraph, instantiateParams)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuGraphExecGetFlags(CUgraphExec hGraphExec, cuuint64_t* flags) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":5528
 *     return err
 * 
 * cdef CUresult _cuGraphInstantiateWithParams(CUgraphExec* phGraphExec, CUgraph hGraph, CUDA_GRAPH_INSTANTIATE_PARAMS* instantiateParams) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuGraphInstantiateWithParams
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuGraphInstantiateWithParams", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":5537
 *     return err
 * 
 * cdef CUresult _cuGraphExecGetFlags(CUgraphExec hGraphExec, cuuint64_t* flags) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuGraphExecGetFlags
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuGraphExecGetFlags(CUgraphExec __pyx_v_hGraphExec, cuuint64_t *__pyx_v_flags) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuGraphExecGetFlags", 1);
  __Pyx_TraceCall("_cuGraphExecGetFlags", __pyx_f[0], 5537, 1, __PYX_ERR(0, 5537, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":5539
 * cdef CUresult _cuGraphExecGetFlags(CUgraphExec hGraphExec, cuuint64_t* flags) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuGraphExecGetFlags
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuGraphExecGetFlags == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 5539, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":5540
 *     global __cuGraphExecGetFlags
 *     cuPythonInit()
 *     if __cuGraphExecGetFlags == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuGraphExecGetFlags" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuGraphExecGetFlags == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":5541
 *     cuPythonInit()
 *     if __cuGraphExecGetFlags == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuGraphExecGetFlags" not found')
 *     err = (<CUresult (*)(CUgraphExec, cuuint64_t*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphExecGetFlags)(hGraphExec, flags)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":5542
 *     if __cuGraphExecGetFlags == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuGraphExecGetFlags" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUgraphExec, cuuint64_t*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphExecGetFlags)(hGraphExec, flags)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__325, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 5542, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 5542, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":5541
 *     cuPythonInit()
 *     if __cuGraphExecGetFlags == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuGraphExecGetFlags" not found')
 *     err = (<CUresult (*)(CUgraphExec, cuuint64_t*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphExecGetFlags)(hGraphExec, flags)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":5540
 *     global __cuGraphExecGetFlags
 *     cuPythonInit()
 *     if __cuGraphExecGetFlags == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuGraphExecGetFlags" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":5543
 *         with gil:
 *             raise RuntimeError('Function "cuGraphExecGetFlags" not found')
 *     err = (<CUresult (*)(CUgraphExec, cuuint64_t*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphExecGetFlags)(hGraphExec, flags)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUgraphExec, cuuint64_t *))__pyx_v_4cuda_5_cuda_5ccuda___cuGraphExecGetFlags)(__pyx_v_hGraphExec, __pyx_v_flags); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 5543, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":5544
 *             raise RuntimeError('Function "cuGraphExecGetFlags" not found')
 *     err = (<CUresult (*)(CUgraphExec, cuuint64_t*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphExecGetFlags)(hGraphExec, flags)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuGraphExecKernelNodeSetParams_v2(CUgraphExec hGraphExec, CUgraphNode hNode, const CUDA_KERNEL_NODE_PARAMS* nodeParams) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":5537
 *     return err
 * 
 * cdef CUresult _cuGraphExecGetFlags(CUgraphExec hGraphExec, cuuint64_t* flags) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuGraphExecGetFlags
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuGraphExecGetFlags", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":5546
 *     return err
 * 
 * cdef CUresult _cuGraphExecKernelNodeSetParams_v2(CUgraphExec hGraphExec, CUgraphNode hNode, const CUDA_KERNEL_NODE_PARAMS* nodeParams) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuGraphExecKernelNodeSetParams_v2
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuGraphExecKernelNodeSetParams_v2(CUgraphExec __pyx_v_hGraphExec, CUgraphNode __pyx_v_hNode, CUDA_KERNEL_NODE_PARAMS const *__pyx_v_nodeParams) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuGraphExecKernelNodeSetParams_v2", 1);
  __Pyx_TraceCall("_cuGraphExecKernelNodeSetParams_v2", __pyx_f[0], 5546, 1, __PYX_ERR(0, 5546, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":5548
 * cdef CUresult _cuGraphExecKernelNodeSetParams_v2(CUgraphExec hGraphExec, CUgraphNode hNode, const CUDA_KERNEL_NODE_PARAMS* nodeParams) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuGraphExecKernelNodeSetParams_v2
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuGraphExecKernelNodeSetParams_v2 == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 5548, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":5549
 *     global __cuGraphExecKernelNodeSetParams_v2
 *     cuPythonInit()
 *     if __cuGraphExecKernelNodeSetParams_v2 == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuGraphExecKernelNodeSetParams_v2" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuGraphExecKernelNodeSetParams_v2 == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":5550
 *     cuPythonInit()
 *     if __cuGraphExecKernelNodeSetParams_v2 == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuGraphExecKernelNodeSetParams_v2" not found')
 *     err = (<CUresult (*)(CUgraphExec, CUgraphNode, const CUDA_KERNEL_NODE_PARAMS*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphExecKernelNodeSetParams_v2)(hGraphExec, hNode, nodeParams)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":5551
 *     if __cuGraphExecKernelNodeSetParams_v2 == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuGraphExecKernelNodeSetParams_v2" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUgraphExec, CUgraphNode, const CUDA_KERNEL_NODE_PARAMS*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphExecKernelNodeSetParams_v2)(hGraphExec, hNode, nodeParams)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__326, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 5551, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 5551, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":5550
 *     cuPythonInit()
 *     if __cuGraphExecKernelNodeSetParams_v2 == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuGraphExecKernelNodeSetParams_v2" not found')
 *     err = (<CUresult (*)(CUgraphExec, CUgraphNode, const CUDA_KERNEL_NODE_PARAMS*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphExecKernelNodeSetParams_v2)(hGraphExec, hNode, nodeParams)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":5549
 *     global __cuGraphExecKernelNodeSetParams_v2
 *     cuPythonInit()
 *     if __cuGraphExecKernelNodeSetParams_v2 == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuGraphExecKernelNodeSetParams_v2" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":5552
 *         with gil:
 *             raise RuntimeError('Function "cuGraphExecKernelNodeSetParams_v2" not found')
 *     err = (<CUresult (*)(CUgraphExec, CUgraphNode, const CUDA_KERNEL_NODE_PARAMS*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphExecKernelNodeSetParams_v2)(hGraphExec, hNode, nodeParams)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUgraphExec, CUgraphNode, CUDA_KERNEL_NODE_PARAMS const *))__pyx_v_4cuda_5_cuda_5ccuda___cuGraphExecKernelNodeSetParams_v2)(__pyx_v_hGraphExec, __pyx_v_hNode, __pyx_v_nodeParams); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 5552, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":5553
 *             raise RuntimeError('Function "cuGraphExecKernelNodeSetParams_v2" not found')
 *     err = (<CUresult (*)(CUgraphExec, CUgraphNode, const CUDA_KERNEL_NODE_PARAMS*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphExecKernelNodeSetParams_v2)(hGraphExec, hNode, nodeParams)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuGraphExecMemcpyNodeSetParams(CUgraphExec hGraphExec, CUgraphNode hNode, const CUDA_MEMCPY3D* copyParams, CUcontext ctx) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":5546
 *     return err
 * 
 * cdef CUresult _cuGraphExecKernelNodeSetParams_v2(CUgraphExec hGraphExec, CUgraphNode hNode, const CUDA_KERNEL_NODE_PARAMS* nodeParams) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuGraphExecKernelNodeSetParams_v2
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuGraphExecKernelNodeSetParams_v2", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":5555
 *     return err
 * 
 * cdef CUresult _cuGraphExecMemcpyNodeSetParams(CUgraphExec hGraphExec, CUgraphNode hNode, const CUDA_MEMCPY3D* copyParams, CUcontext ctx) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuGraphExecMemcpyNodeSetParams
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuGraphExecMemcpyNodeSetParams(CUgraphExec __pyx_v_hGraphExec, CUgraphNode __pyx_v_hNode, CUDA_MEMCPY3D const *__pyx_v_copyParams, CUcontext __pyx_v_ctx) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuGraphExecMemcpyNodeSetParams", 1);
  __Pyx_TraceCall("_cuGraphExecMemcpyNodeSetParams", __pyx_f[0], 5555, 1, __PYX_ERR(0, 5555, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":5557
 * cdef CUresult _cuGraphExecMemcpyNodeSetParams(CUgraphExec hGraphExec, CUgraphNode hNode, const CUDA_MEMCPY3D* copyParams, CUcontext ctx) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuGraphExecMemcpyNodeSetParams
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuGraphExecMemcpyNodeSetParams == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 5557, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":5558
 *     global __cuGraphExecMemcpyNodeSetParams
 *     cuPythonInit()
 *     if __cuGraphExecMemcpyNodeSetParams == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuGraphExecMemcpyNodeSetParams" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuGraphExecMemcpyNodeSetParams == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":5559
 *     cuPythonInit()
 *     if __cuGraphExecMemcpyNodeSetParams == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuGraphExecMemcpyNodeSetParams" not found')
 *     err = (<CUresult (*)(CUgraphExec, CUgraphNode, const CUDA_MEMCPY3D*, CUcontext) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphExecMemcpyNodeSetParams)(hGraphExec, hNode, copyParams, ctx)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":5560
 *     if __cuGraphExecMemcpyNodeSetParams == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuGraphExecMemcpyNodeSetParams" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUgraphExec, CUgraphNode, const CUDA_MEMCPY3D*, CUcontext) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphExecMemcpyNodeSetParams)(hGraphExec, hNode, copyParams, ctx)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__327, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 5560, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 5560, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":5559
 *     cuPythonInit()
 *     if __cuGraphExecMemcpyNodeSetParams == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuGraphExecMemcpyNodeSetParams" not found')
 *     err = (<CUresult (*)(CUgraphExec, CUgraphNode, const CUDA_MEMCPY3D*, CUcontext) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphExecMemcpyNodeSetParams)(hGraphExec, hNode, copyParams, ctx)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":5558
 *     global __cuGraphExecMemcpyNodeSetParams
 *     cuPythonInit()
 *     if __cuGraphExecMemcpyNodeSetParams == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuGraphExecMemcpyNodeSetParams" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":5561
 *         with gil:
 *             raise RuntimeError('Function "cuGraphExecMemcpyNodeSetParams" not found')
 *     err = (<CUresult (*)(CUgraphExec, CUgraphNode, const CUDA_MEMCPY3D*, CUcontext) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphExecMemcpyNodeSetParams)(hGraphExec, hNode, copyParams, ctx)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUgraphExec, CUgraphNode, CUDA_MEMCPY3D const *, CUcontext))__pyx_v_4cuda_5_cuda_5ccuda___cuGraphExecMemcpyNodeSetParams)(__pyx_v_hGraphExec, __pyx_v_hNode, __pyx_v_copyParams, __pyx_v_ctx); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 5561, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":5562
 *             raise RuntimeError('Function "cuGraphExecMemcpyNodeSetParams" not found')
 *     err = (<CUresult (*)(CUgraphExec, CUgraphNode, const CUDA_MEMCPY3D*, CUcontext) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphExecMemcpyNodeSetParams)(hGraphExec, hNode, copyParams, ctx)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuGraphExecMemsetNodeSetParams(CUgraphExec hGraphExec, CUgraphNode hNode, const CUDA_MEMSET_NODE_PARAMS* memsetParams, CUcontext ctx) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":5555
 *     return err
 * 
 * cdef CUresult _cuGraphExecMemcpyNodeSetParams(CUgraphExec hGraphExec, CUgraphNode hNode, const CUDA_MEMCPY3D* copyParams, CUcontext ctx) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuGraphExecMemcpyNodeSetParams
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuGraphExecMemcpyNodeSetParams", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":5564
 *     return err
 * 
 * cdef CUresult _cuGraphExecMemsetNodeSetParams(CUgraphExec hGraphExec, CUgraphNode hNode, const CUDA_MEMSET_NODE_PARAMS* memsetParams, CUcontext ctx) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuGraphExecMemsetNodeSetParams
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuGraphExecMemsetNodeSetParams(CUgraphExec __pyx_v_hGraphExec, CUgraphNode __pyx_v_hNode, CUDA_MEMSET_NODE_PARAMS const *__pyx_v_memsetParams, CUcontext __pyx_v_ctx) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuGraphExecMemsetNodeSetParams", 1);
  __Pyx_TraceCall("_cuGraphExecMemsetNodeSetParams", __pyx_f[0], 5564, 1, __PYX_ERR(0, 5564, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":5566
 * cdef CUresult _cuGraphExecMemsetNodeSetParams(CUgraphExec hGraphExec, CUgraphNode hNode, const CUDA_MEMSET_NODE_PARAMS* memsetParams, CUcontext ctx) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuGraphExecMemsetNodeSetParams
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuGraphExecMemsetNodeSetParams == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 5566, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":5567
 *     global __cuGraphExecMemsetNodeSetParams
 *     cuPythonInit()
 *     if __cuGraphExecMemsetNodeSetParams == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuGraphExecMemsetNodeSetParams" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuGraphExecMemsetNodeSetParams == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":5568
 *     cuPythonInit()
 *     if __cuGraphExecMemsetNodeSetParams == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuGraphExecMemsetNodeSetParams" not found')
 *     err = (<CUresult (*)(CUgraphExec, CUgraphNode, const CUDA_MEMSET_NODE_PARAMS*, CUcontext) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphExecMemsetNodeSetParams)(hGraphExec, hNode, memsetParams, ctx)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":5569
 *     if __cuGraphExecMemsetNodeSetParams == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuGraphExecMemsetNodeSetParams" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUgraphExec, CUgraphNode, const CUDA_MEMSET_NODE_PARAMS*, CUcontext) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphExecMemsetNodeSetParams)(hGraphExec, hNode, memsetParams, ctx)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__328, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 5569, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 5569, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":5568
 *     cuPythonInit()
 *     if __cuGraphExecMemsetNodeSetParams == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuGraphExecMemsetNodeSetParams" not found')
 *     err = (<CUresult (*)(CUgraphExec, CUgraphNode, const CUDA_MEMSET_NODE_PARAMS*, CUcontext) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphExecMemsetNodeSetParams)(hGraphExec, hNode, memsetParams, ctx)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":5567
 *     global __cuGraphExecMemsetNodeSetParams
 *     cuPythonInit()
 *     if __cuGraphExecMemsetNodeSetParams == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuGraphExecMemsetNodeSetParams" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":5570
 *         with gil:
 *             raise RuntimeError('Function "cuGraphExecMemsetNodeSetParams" not found')
 *     err = (<CUresult (*)(CUgraphExec, CUgraphNode, const CUDA_MEMSET_NODE_PARAMS*, CUcontext) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphExecMemsetNodeSetParams)(hGraphExec, hNode, memsetParams, ctx)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUgraphExec, CUgraphNode, CUDA_MEMSET_NODE_PARAMS const *, CUcontext))__pyx_v_4cuda_5_cuda_5ccuda___cuGraphExecMemsetNodeSetParams)(__pyx_v_hGraphExec, __pyx_v_hNode, __pyx_v_memsetParams, __pyx_v_ctx); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 5570, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":5571
 *             raise RuntimeError('Function "cuGraphExecMemsetNodeSetParams" not found')
 *     err = (<CUresult (*)(CUgraphExec, CUgraphNode, const CUDA_MEMSET_NODE_PARAMS*, CUcontext) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphExecMemsetNodeSetParams)(hGraphExec, hNode, memsetParams, ctx)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuGraphExecHostNodeSetParams(CUgraphExec hGraphExec, CUgraphNode hNode, const CUDA_HOST_NODE_PARAMS* nodeParams) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":5564
 *     return err
 * 
 * cdef CUresult _cuGraphExecMemsetNodeSetParams(CUgraphExec hGraphExec, CUgraphNode hNode, const CUDA_MEMSET_NODE_PARAMS* memsetParams, CUcontext ctx) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuGraphExecMemsetNodeSetParams
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuGraphExecMemsetNodeSetParams", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":5573
 *     return err
 * 
 * cdef CUresult _cuGraphExecHostNodeSetParams(CUgraphExec hGraphExec, CUgraphNode hNode, const CUDA_HOST_NODE_PARAMS* nodeParams) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuGraphExecHostNodeSetParams
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuGraphExecHostNodeSetParams(CUgraphExec __pyx_v_hGraphExec, CUgraphNode __pyx_v_hNode, CUDA_HOST_NODE_PARAMS const *__pyx_v_nodeParams) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuGraphExecHostNodeSetParams", 1);
  __Pyx_TraceCall("_cuGraphExecHostNodeSetParams", __pyx_f[0], 5573, 1, __PYX_ERR(0, 5573, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":5575
 * cdef CUresult _cuGraphExecHostNodeSetParams(CUgraphExec hGraphExec, CUgraphNode hNode, const CUDA_HOST_NODE_PARAMS* nodeParams) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuGraphExecHostNodeSetParams
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuGraphExecHostNodeSetParams == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 5575, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":5576
 *     global __cuGraphExecHostNodeSetParams
 *     cuPythonInit()
 *     if __cuGraphExecHostNodeSetParams == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuGraphExecHostNodeSetParams" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuGraphExecHostNodeSetParams == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":5577
 *     cuPythonInit()
 *     if __cuGraphExecHostNodeSetParams == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuGraphExecHostNodeSetParams" not found')
 *     err = (<CUresult (*)(CUgraphExec, CUgraphNode, const CUDA_HOST_NODE_PARAMS*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphExecHostNodeSetParams)(hGraphExec, hNode, nodeParams)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":5578
 *     if __cuGraphExecHostNodeSetParams == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuGraphExecHostNodeSetParams" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUgraphExec, CUgraphNode, const CUDA_HOST_NODE_PARAMS*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphExecHostNodeSetParams)(hGraphExec, hNode, nodeParams)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__329, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 5578, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 5578, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":5577
 *     cuPythonInit()
 *     if __cuGraphExecHostNodeSetParams == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuGraphExecHostNodeSetParams" not found')
 *     err = (<CUresult (*)(CUgraphExec, CUgraphNode, const CUDA_HOST_NODE_PARAMS*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphExecHostNodeSetParams)(hGraphExec, hNode, nodeParams)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":5576
 *     global __cuGraphExecHostNodeSetParams
 *     cuPythonInit()
 *     if __cuGraphExecHostNodeSetParams == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuGraphExecHostNodeSetParams" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":5579
 *         with gil:
 *             raise RuntimeError('Function "cuGraphExecHostNodeSetParams" not found')
 *     err = (<CUresult (*)(CUgraphExec, CUgraphNode, const CUDA_HOST_NODE_PARAMS*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphExecHostNodeSetParams)(hGraphExec, hNode, nodeParams)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUgraphExec, CUgraphNode, CUDA_HOST_NODE_PARAMS const *))__pyx_v_4cuda_5_cuda_5ccuda___cuGraphExecHostNodeSetParams)(__pyx_v_hGraphExec, __pyx_v_hNode, __pyx_v_nodeParams); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 5579, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":5580
 *             raise RuntimeError('Function "cuGraphExecHostNodeSetParams" not found')
 *     err = (<CUresult (*)(CUgraphExec, CUgraphNode, const CUDA_HOST_NODE_PARAMS*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphExecHostNodeSetParams)(hGraphExec, hNode, nodeParams)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuGraphExecChildGraphNodeSetParams(CUgraphExec hGraphExec, CUgraphNode hNode, CUgraph childGraph) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":5573
 *     return err
 * 
 * cdef CUresult _cuGraphExecHostNodeSetParams(CUgraphExec hGraphExec, CUgraphNode hNode, const CUDA_HOST_NODE_PARAMS* nodeParams) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuGraphExecHostNodeSetParams
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuGraphExecHostNodeSetParams", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":5582
 *     return err
 * 
 * cdef CUresult _cuGraphExecChildGraphNodeSetParams(CUgraphExec hGraphExec, CUgraphNode hNode, CUgraph childGraph) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuGraphExecChildGraphNodeSetParams
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuGraphExecChildGraphNodeSetParams(CUgraphExec __pyx_v_hGraphExec, CUgraphNode __pyx_v_hNode, CUgraph __pyx_v_childGraph) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuGraphExecChildGraphNodeSetParams", 1);
  __Pyx_TraceCall("_cuGraphExecChildGraphNodeSetParams", __pyx_f[0], 5582, 1, __PYX_ERR(0, 5582, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":5584
 * cdef CUresult _cuGraphExecChildGraphNodeSetParams(CUgraphExec hGraphExec, CUgraphNode hNode, CUgraph childGraph) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuGraphExecChildGraphNodeSetParams
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuGraphExecChildGraphNodeSetParams == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 5584, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":5585
 *     global __cuGraphExecChildGraphNodeSetParams
 *     cuPythonInit()
 *     if __cuGraphExecChildGraphNodeSetParams == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuGraphExecChildGraphNodeSetParams" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuGraphExecChildGraphNodeSetParams == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":5586
 *     cuPythonInit()
 *     if __cuGraphExecChildGraphNodeSetParams == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuGraphExecChildGraphNodeSetParams" not found')
 *     err = (<CUresult (*)(CUgraphExec, CUgraphNode, CUgraph) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphExecChildGraphNodeSetParams)(hGraphExec, hNode, childGraph)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":5587
 *     if __cuGraphExecChildGraphNodeSetParams == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuGraphExecChildGraphNodeSetParams" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUgraphExec, CUgraphNode, CUgraph) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphExecChildGraphNodeSetParams)(hGraphExec, hNode, childGraph)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__330, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 5587, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 5587, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":5586
 *     cuPythonInit()
 *     if __cuGraphExecChildGraphNodeSetParams == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuGraphExecChildGraphNodeSetParams" not found')
 *     err = (<CUresult (*)(CUgraphExec, CUgraphNode, CUgraph) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphExecChildGraphNodeSetParams)(hGraphExec, hNode, childGraph)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":5585
 *     global __cuGraphExecChildGraphNodeSetParams
 *     cuPythonInit()
 *     if __cuGraphExecChildGraphNodeSetParams == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuGraphExecChildGraphNodeSetParams" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":5588
 *         with gil:
 *             raise RuntimeError('Function "cuGraphExecChildGraphNodeSetParams" not found')
 *     err = (<CUresult (*)(CUgraphExec, CUgraphNode, CUgraph) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphExecChildGraphNodeSetParams)(hGraphExec, hNode, childGraph)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUgraphExec, CUgraphNode, CUgraph))__pyx_v_4cuda_5_cuda_5ccuda___cuGraphExecChildGraphNodeSetParams)(__pyx_v_hGraphExec, __pyx_v_hNode, __pyx_v_childGraph); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 5588, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":5589
 *             raise RuntimeError('Function "cuGraphExecChildGraphNodeSetParams" not found')
 *     err = (<CUresult (*)(CUgraphExec, CUgraphNode, CUgraph) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphExecChildGraphNodeSetParams)(hGraphExec, hNode, childGraph)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuGraphExecEventRecordNodeSetEvent(CUgraphExec hGraphExec, CUgraphNode hNode, CUevent event) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":5582
 *     return err
 * 
 * cdef CUresult _cuGraphExecChildGraphNodeSetParams(CUgraphExec hGraphExec, CUgraphNode hNode, CUgraph childGraph) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuGraphExecChildGraphNodeSetParams
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuGraphExecChildGraphNodeSetParams", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":5591
 *     return err
 * 
 * cdef CUresult _cuGraphExecEventRecordNodeSetEvent(CUgraphExec hGraphExec, CUgraphNode hNode, CUevent event) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuGraphExecEventRecordNodeSetEvent
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuGraphExecEventRecordNodeSetEvent(CUgraphExec __pyx_v_hGraphExec, CUgraphNode __pyx_v_hNode, CUevent __pyx_v_event) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuGraphExecEventRecordNodeSetEvent", 1);
  __Pyx_TraceCall("_cuGraphExecEventRecordNodeSetEvent", __pyx_f[0], 5591, 1, __PYX_ERR(0, 5591, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":5593
 * cdef CUresult _cuGraphExecEventRecordNodeSetEvent(CUgraphExec hGraphExec, CUgraphNode hNode, CUevent event) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuGraphExecEventRecordNodeSetEvent
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuGraphExecEventRecordNodeSetEvent == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 5593, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":5594
 *     global __cuGraphExecEventRecordNodeSetEvent
 *     cuPythonInit()
 *     if __cuGraphExecEventRecordNodeSetEvent == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuGraphExecEventRecordNodeSetEvent" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuGraphExecEventRecordNodeSetEvent == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":5595
 *     cuPythonInit()
 *     if __cuGraphExecEventRecordNodeSetEvent == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuGraphExecEventRecordNodeSetEvent" not found')
 *     err = (<CUresult (*)(CUgraphExec, CUgraphNode, CUevent) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphExecEventRecordNodeSetEvent)(hGraphExec, hNode, event)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":5596
 *     if __cuGraphExecEventRecordNodeSetEvent == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuGraphExecEventRecordNodeSetEvent" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUgraphExec, CUgraphNode, CUevent) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphExecEventRecordNodeSetEvent)(hGraphExec, hNode, event)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__331, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 5596, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 5596, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":5595
 *     cuPythonInit()
 *     if __cuGraphExecEventRecordNodeSetEvent == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuGraphExecEventRecordNodeSetEvent" not found')
 *     err = (<CUresult (*)(CUgraphExec, CUgraphNode, CUevent) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphExecEventRecordNodeSetEvent)(hGraphExec, hNode, event)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":5594
 *     global __cuGraphExecEventRecordNodeSetEvent
 *     cuPythonInit()
 *     if __cuGraphExecEventRecordNodeSetEvent == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuGraphExecEventRecordNodeSetEvent" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":5597
 *         with gil:
 *             raise RuntimeError('Function "cuGraphExecEventRecordNodeSetEvent" not found')
 *     err = (<CUresult (*)(CUgraphExec, CUgraphNode, CUevent) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphExecEventRecordNodeSetEvent)(hGraphExec, hNode, event)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUgraphExec, CUgraphNode, CUevent))__pyx_v_4cuda_5_cuda_5ccuda___cuGraphExecEventRecordNodeSetEvent)(__pyx_v_hGraphExec, __pyx_v_hNode, __pyx_v_event); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 5597, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":5598
 *             raise RuntimeError('Function "cuGraphExecEventRecordNodeSetEvent" not found')
 *     err = (<CUresult (*)(CUgraphExec, CUgraphNode, CUevent) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphExecEventRecordNodeSetEvent)(hGraphExec, hNode, event)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuGraphExecEventWaitNodeSetEvent(CUgraphExec hGraphExec, CUgraphNode hNode, CUevent event) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":5591
 *     return err
 * 
 * cdef CUresult _cuGraphExecEventRecordNodeSetEvent(CUgraphExec hGraphExec, CUgraphNode hNode, CUevent event) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuGraphExecEventRecordNodeSetEvent
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuGraphExecEventRecordNodeSetEvent", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":5600
 *     return err
 * 
 * cdef CUresult _cuGraphExecEventWaitNodeSetEvent(CUgraphExec hGraphExec, CUgraphNode hNode, CUevent event) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuGraphExecEventWaitNodeSetEvent
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuGraphExecEventWaitNodeSetEvent(CUgraphExec __pyx_v_hGraphExec, CUgraphNode __pyx_v_hNode, CUevent __pyx_v_event) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuGraphExecEventWaitNodeSetEvent", 1);
  __Pyx_TraceCall("_cuGraphExecEventWaitNodeSetEvent", __pyx_f[0], 5600, 1, __PYX_ERR(0, 5600, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":5602
 * cdef CUresult _cuGraphExecEventWaitNodeSetEvent(CUgraphExec hGraphExec, CUgraphNode hNode, CUevent event) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuGraphExecEventWaitNodeSetEvent
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuGraphExecEventWaitNodeSetEvent == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 5602, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":5603
 *     global __cuGraphExecEventWaitNodeSetEvent
 *     cuPythonInit()
 *     if __cuGraphExecEventWaitNodeSetEvent == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuGraphExecEventWaitNodeSetEvent" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuGraphExecEventWaitNodeSetEvent == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":5604
 *     cuPythonInit()
 *     if __cuGraphExecEventWaitNodeSetEvent == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuGraphExecEventWaitNodeSetEvent" not found')
 *     err = (<CUresult (*)(CUgraphExec, CUgraphNode, CUevent) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphExecEventWaitNodeSetEvent)(hGraphExec, hNode, event)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":5605
 *     if __cuGraphExecEventWaitNodeSetEvent == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuGraphExecEventWaitNodeSetEvent" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUgraphExec, CUgraphNode, CUevent) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphExecEventWaitNodeSetEvent)(hGraphExec, hNode, event)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__332, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 5605, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 5605, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":5604
 *     cuPythonInit()
 *     if __cuGraphExecEventWaitNodeSetEvent == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuGraphExecEventWaitNodeSetEvent" not found')
 *     err = (<CUresult (*)(CUgraphExec, CUgraphNode, CUevent) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphExecEventWaitNodeSetEvent)(hGraphExec, hNode, event)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":5603
 *     global __cuGraphExecEventWaitNodeSetEvent
 *     cuPythonInit()
 *     if __cuGraphExecEventWaitNodeSetEvent == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuGraphExecEventWaitNodeSetEvent" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":5606
 *         with gil:
 *             raise RuntimeError('Function "cuGraphExecEventWaitNodeSetEvent" not found')
 *     err = (<CUresult (*)(CUgraphExec, CUgraphNode, CUevent) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphExecEventWaitNodeSetEvent)(hGraphExec, hNode, event)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUgraphExec, CUgraphNode, CUevent))__pyx_v_4cuda_5_cuda_5ccuda___cuGraphExecEventWaitNodeSetEvent)(__pyx_v_hGraphExec, __pyx_v_hNode, __pyx_v_event); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 5606, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":5607
 *             raise RuntimeError('Function "cuGraphExecEventWaitNodeSetEvent" not found')
 *     err = (<CUresult (*)(CUgraphExec, CUgraphNode, CUevent) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphExecEventWaitNodeSetEvent)(hGraphExec, hNode, event)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuGraphExecExternalSemaphoresSignalNodeSetParams(CUgraphExec hGraphExec, CUgraphNode hNode, const CUDA_EXT_SEM_SIGNAL_NODE_PARAMS* nodeParams) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":5600
 *     return err
 * 
 * cdef CUresult _cuGraphExecEventWaitNodeSetEvent(CUgraphExec hGraphExec, CUgraphNode hNode, CUevent event) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuGraphExecEventWaitNodeSetEvent
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuGraphExecEventWaitNodeSetEvent", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":5609
 *     return err
 * 
 * cdef CUresult _cuGraphExecExternalSemaphoresSignalNodeSetParams(CUgraphExec hGraphExec, CUgraphNode hNode, const CUDA_EXT_SEM_SIGNAL_NODE_PARAMS* nodeParams) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuGraphExecExternalSemaphoresSignalNodeSetParams
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuGraphExecExternalSemaphoresSignalNodeSetParams(CUgraphExec __pyx_v_hGraphExec, CUgraphNode __pyx_v_hNode, CUDA_EXT_SEM_SIGNAL_NODE_PARAMS const *__pyx_v_nodeParams) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuGraphExecExternalSemaphoresSignalNodeSetParams", 1);
  __Pyx_TraceCall("_cuGraphExecExternalSemaphoresSignalNodeSetParams", __pyx_f[0], 5609, 1, __PYX_ERR(0, 5609, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":5611
 * cdef CUresult _cuGraphExecExternalSemaphoresSignalNodeSetParams(CUgraphExec hGraphExec, CUgraphNode hNode, const CUDA_EXT_SEM_SIGNAL_NODE_PARAMS* nodeParams) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuGraphExecExternalSemaphoresSignalNodeSetParams
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuGraphExecExternalSemaphoresSignalNodeSetParams == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 5611, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":5612
 *     global __cuGraphExecExternalSemaphoresSignalNodeSetParams
 *     cuPythonInit()
 *     if __cuGraphExecExternalSemaphoresSignalNodeSetParams == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuGraphExecExternalSemaphoresSignalNodeSetParams" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuGraphExecExternalSemaphoresSignalNodeSetParams == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":5613
 *     cuPythonInit()
 *     if __cuGraphExecExternalSemaphoresSignalNodeSetParams == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuGraphExecExternalSemaphoresSignalNodeSetParams" not found')
 *     err = (<CUresult (*)(CUgraphExec, CUgraphNode, const CUDA_EXT_SEM_SIGNAL_NODE_PARAMS*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphExecExternalSemaphoresSignalNodeSetParams)(hGraphExec, hNode, nodeParams)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":5614
 *     if __cuGraphExecExternalSemaphoresSignalNodeSetParams == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuGraphExecExternalSemaphoresSignalNodeSetParams" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUgraphExec, CUgraphNode, const CUDA_EXT_SEM_SIGNAL_NODE_PARAMS*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphExecExternalSemaphoresSignalNodeSetParams)(hGraphExec, hNode, nodeParams)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__333, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 5614, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 5614, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":5613
 *     cuPythonInit()
 *     if __cuGraphExecExternalSemaphoresSignalNodeSetParams == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuGraphExecExternalSemaphoresSignalNodeSetParams" not found')
 *     err = (<CUresult (*)(CUgraphExec, CUgraphNode, const CUDA_EXT_SEM_SIGNAL_NODE_PARAMS*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphExecExternalSemaphoresSignalNodeSetParams)(hGraphExec, hNode, nodeParams)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":5612
 *     global __cuGraphExecExternalSemaphoresSignalNodeSetParams
 *     cuPythonInit()
 *     if __cuGraphExecExternalSemaphoresSignalNodeSetParams == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuGraphExecExternalSemaphoresSignalNodeSetParams" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":5615
 *         with gil:
 *             raise RuntimeError('Function "cuGraphExecExternalSemaphoresSignalNodeSetParams" not found')
 *     err = (<CUresult (*)(CUgraphExec, CUgraphNode, const CUDA_EXT_SEM_SIGNAL_NODE_PARAMS*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphExecExternalSemaphoresSignalNodeSetParams)(hGraphExec, hNode, nodeParams)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUgraphExec, CUgraphNode, CUDA_EXT_SEM_SIGNAL_NODE_PARAMS const *))__pyx_v_4cuda_5_cuda_5ccuda___cuGraphExecExternalSemaphoresSignalNodeSetParams)(__pyx_v_hGraphExec, __pyx_v_hNode, __pyx_v_nodeParams); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 5615, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":5616
 *             raise RuntimeError('Function "cuGraphExecExternalSemaphoresSignalNodeSetParams" not found')
 *     err = (<CUresult (*)(CUgraphExec, CUgraphNode, const CUDA_EXT_SEM_SIGNAL_NODE_PARAMS*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphExecExternalSemaphoresSignalNodeSetParams)(hGraphExec, hNode, nodeParams)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuGraphExecExternalSemaphoresWaitNodeSetParams(CUgraphExec hGraphExec, CUgraphNode hNode, const CUDA_EXT_SEM_WAIT_NODE_PARAMS* nodeParams) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":5609
 *     return err
 * 
 * cdef CUresult _cuGraphExecExternalSemaphoresSignalNodeSetParams(CUgraphExec hGraphExec, CUgraphNode hNode, const CUDA_EXT_SEM_SIGNAL_NODE_PARAMS* nodeParams) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuGraphExecExternalSemaphoresSignalNodeSetParams
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuGraphExecExternalSemaphoresSignalNodeSetParams", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":5618
 *     return err
 * 
 * cdef CUresult _cuGraphExecExternalSemaphoresWaitNodeSetParams(CUgraphExec hGraphExec, CUgraphNode hNode, const CUDA_EXT_SEM_WAIT_NODE_PARAMS* nodeParams) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuGraphExecExternalSemaphoresWaitNodeSetParams
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuGraphExecExternalSemaphoresWaitNodeSetParams(CUgraphExec __pyx_v_hGraphExec, CUgraphNode __pyx_v_hNode, CUDA_EXT_SEM_WAIT_NODE_PARAMS const *__pyx_v_nodeParams) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuGraphExecExternalSemaphoresWaitNodeSetParams", 1);
  __Pyx_TraceCall("_cuGraphExecExternalSemaphoresWaitNodeSetParams", __pyx_f[0], 5618, 1, __PYX_ERR(0, 5618, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":5620
 * cdef CUresult _cuGraphExecExternalSemaphoresWaitNodeSetParams(CUgraphExec hGraphExec, CUgraphNode hNode, const CUDA_EXT_SEM_WAIT_NODE_PARAMS* nodeParams) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuGraphExecExternalSemaphoresWaitNodeSetParams
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuGraphExecExternalSemaphoresWaitNodeSetParams == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 5620, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":5621
 *     global __cuGraphExecExternalSemaphoresWaitNodeSetParams
 *     cuPythonInit()
 *     if __cuGraphExecExternalSemaphoresWaitNodeSetParams == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuGraphExecExternalSemaphoresWaitNodeSetParams" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuGraphExecExternalSemaphoresWaitNodeSetParams == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":5622
 *     cuPythonInit()
 *     if __cuGraphExecExternalSemaphoresWaitNodeSetParams == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuGraphExecExternalSemaphoresWaitNodeSetParams" not found')
 *     err = (<CUresult (*)(CUgraphExec, CUgraphNode, const CUDA_EXT_SEM_WAIT_NODE_PARAMS*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphExecExternalSemaphoresWaitNodeSetParams)(hGraphExec, hNode, nodeParams)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":5623
 *     if __cuGraphExecExternalSemaphoresWaitNodeSetParams == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuGraphExecExternalSemaphoresWaitNodeSetParams" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUgraphExec, CUgraphNode, const CUDA_EXT_SEM_WAIT_NODE_PARAMS*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphExecExternalSemaphoresWaitNodeSetParams)(hGraphExec, hNode, nodeParams)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__334, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 5623, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 5623, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":5622
 *     cuPythonInit()
 *     if __cuGraphExecExternalSemaphoresWaitNodeSetParams == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuGraphExecExternalSemaphoresWaitNodeSetParams" not found')
 *     err = (<CUresult (*)(CUgraphExec, CUgraphNode, const CUDA_EXT_SEM_WAIT_NODE_PARAMS*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphExecExternalSemaphoresWaitNodeSetParams)(hGraphExec, hNode, nodeParams)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":5621
 *     global __cuGraphExecExternalSemaphoresWaitNodeSetParams
 *     cuPythonInit()
 *     if __cuGraphExecExternalSemaphoresWaitNodeSetParams == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuGraphExecExternalSemaphoresWaitNodeSetParams" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":5624
 *         with gil:
 *             raise RuntimeError('Function "cuGraphExecExternalSemaphoresWaitNodeSetParams" not found')
 *     err = (<CUresult (*)(CUgraphExec, CUgraphNode, const CUDA_EXT_SEM_WAIT_NODE_PARAMS*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphExecExternalSemaphoresWaitNodeSetParams)(hGraphExec, hNode, nodeParams)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUgraphExec, CUgraphNode, CUDA_EXT_SEM_WAIT_NODE_PARAMS const *))__pyx_v_4cuda_5_cuda_5ccuda___cuGraphExecExternalSemaphoresWaitNodeSetParams)(__pyx_v_hGraphExec, __pyx_v_hNode, __pyx_v_nodeParams); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 5624, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":5625
 *             raise RuntimeError('Function "cuGraphExecExternalSemaphoresWaitNodeSetParams" not found')
 *     err = (<CUresult (*)(CUgraphExec, CUgraphNode, const CUDA_EXT_SEM_WAIT_NODE_PARAMS*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphExecExternalSemaphoresWaitNodeSetParams)(hGraphExec, hNode, nodeParams)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuGraphNodeSetEnabled(CUgraphExec hGraphExec, CUgraphNode hNode, unsigned int isEnabled) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":5618
 *     return err
 * 
 * cdef CUresult _cuGraphExecExternalSemaphoresWaitNodeSetParams(CUgraphExec hGraphExec, CUgraphNode hNode, const CUDA_EXT_SEM_WAIT_NODE_PARAMS* nodeParams) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuGraphExecExternalSemaphoresWaitNodeSetParams
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuGraphExecExternalSemaphoresWaitNodeSetParams", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":5627
 *     return err
 * 
 * cdef CUresult _cuGraphNodeSetEnabled(CUgraphExec hGraphExec, CUgraphNode hNode, unsigned int isEnabled) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuGraphNodeSetEnabled
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuGraphNodeSetEnabled(CUgraphExec __pyx_v_hGraphExec, CUgraphNode __pyx_v_hNode, unsigned int __pyx_v_isEnabled) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuGraphNodeSetEnabled", 1);
  __Pyx_TraceCall("_cuGraphNodeSetEnabled", __pyx_f[0], 5627, 1, __PYX_ERR(0, 5627, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":5629
 * cdef CUresult _cuGraphNodeSetEnabled(CUgraphExec hGraphExec, CUgraphNode hNode, unsigned int isEnabled) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuGraphNodeSetEnabled
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuGraphNodeSetEnabled == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 5629, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":5630
 *     global __cuGraphNodeSetEnabled
 *     cuPythonInit()
 *     if __cuGraphNodeSetEnabled == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuGraphNodeSetEnabled" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuGraphNodeSetEnabled == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":5631
 *     cuPythonInit()
 *     if __cuGraphNodeSetEnabled == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuGraphNodeSetEnabled" not found')
 *     err = (<CUresult (*)(CUgraphExec, CUgraphNode, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphNodeSetEnabled)(hGraphExec, hNode, isEnabled)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":5632
 *     if __cuGraphNodeSetEnabled == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuGraphNodeSetEnabled" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUgraphExec, CUgraphNode, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphNodeSetEnabled)(hGraphExec, hNode, isEnabled)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__335, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 5632, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 5632, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":5631
 *     cuPythonInit()
 *     if __cuGraphNodeSetEnabled == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuGraphNodeSetEnabled" not found')
 *     err = (<CUresult (*)(CUgraphExec, CUgraphNode, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphNodeSetEnabled)(hGraphExec, hNode, isEnabled)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":5630
 *     global __cuGraphNodeSetEnabled
 *     cuPythonInit()
 *     if __cuGraphNodeSetEnabled == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuGraphNodeSetEnabled" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":5633
 *         with gil:
 *             raise RuntimeError('Function "cuGraphNodeSetEnabled" not found')
 *     err = (<CUresult (*)(CUgraphExec, CUgraphNode, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphNodeSetEnabled)(hGraphExec, hNode, isEnabled)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUgraphExec, CUgraphNode, unsigned int))__pyx_v_4cuda_5_cuda_5ccuda___cuGraphNodeSetEnabled)(__pyx_v_hGraphExec, __pyx_v_hNode, __pyx_v_isEnabled); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 5633, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":5634
 *             raise RuntimeError('Function "cuGraphNodeSetEnabled" not found')
 *     err = (<CUresult (*)(CUgraphExec, CUgraphNode, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphNodeSetEnabled)(hGraphExec, hNode, isEnabled)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuGraphNodeGetEnabled(CUgraphExec hGraphExec, CUgraphNode hNode, unsigned int* isEnabled) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":5627
 *     return err
 * 
 * cdef CUresult _cuGraphNodeSetEnabled(CUgraphExec hGraphExec, CUgraphNode hNode, unsigned int isEnabled) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuGraphNodeSetEnabled
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuGraphNodeSetEnabled", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":5636
 *     return err
 * 
 * cdef CUresult _cuGraphNodeGetEnabled(CUgraphExec hGraphExec, CUgraphNode hNode, unsigned int* isEnabled) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuGraphNodeGetEnabled
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuGraphNodeGetEnabled(CUgraphExec __pyx_v_hGraphExec, CUgraphNode __pyx_v_hNode, unsigned int *__pyx_v_isEnabled) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuGraphNodeGetEnabled", 1);
  __Pyx_TraceCall("_cuGraphNodeGetEnabled", __pyx_f[0], 5636, 1, __PYX_ERR(0, 5636, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":5638
 * cdef CUresult _cuGraphNodeGetEnabled(CUgraphExec hGraphExec, CUgraphNode hNode, unsigned int* isEnabled) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuGraphNodeGetEnabled
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuGraphNodeGetEnabled == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 5638, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":5639
 *     global __cuGraphNodeGetEnabled
 *     cuPythonInit()
 *     if __cuGraphNodeGetEnabled == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuGraphNodeGetEnabled" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuGraphNodeGetEnabled == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":5640
 *     cuPythonInit()
 *     if __cuGraphNodeGetEnabled == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuGraphNodeGetEnabled" not found')
 *     err = (<CUresult (*)(CUgraphExec, CUgraphNode, unsigned int*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphNodeGetEnabled)(hGraphExec, hNode, isEnabled)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":5641
 *     if __cuGraphNodeGetEnabled == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuGraphNodeGetEnabled" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUgraphExec, CUgraphNode, unsigned int*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphNodeGetEnabled)(hGraphExec, hNode, isEnabled)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__336, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 5641, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 5641, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":5640
 *     cuPythonInit()
 *     if __cuGraphNodeGetEnabled == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuGraphNodeGetEnabled" not found')
 *     err = (<CUresult (*)(CUgraphExec, CUgraphNode, unsigned int*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphNodeGetEnabled)(hGraphExec, hNode, isEnabled)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":5639
 *     global __cuGraphNodeGetEnabled
 *     cuPythonInit()
 *     if __cuGraphNodeGetEnabled == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuGraphNodeGetEnabled" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":5642
 *         with gil:
 *             raise RuntimeError('Function "cuGraphNodeGetEnabled" not found')
 *     err = (<CUresult (*)(CUgraphExec, CUgraphNode, unsigned int*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphNodeGetEnabled)(hGraphExec, hNode, isEnabled)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUgraphExec, CUgraphNode, unsigned int *))__pyx_v_4cuda_5_cuda_5ccuda___cuGraphNodeGetEnabled)(__pyx_v_hGraphExec, __pyx_v_hNode, __pyx_v_isEnabled); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 5642, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":5643
 *             raise RuntimeError('Function "cuGraphNodeGetEnabled" not found')
 *     err = (<CUresult (*)(CUgraphExec, CUgraphNode, unsigned int*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphNodeGetEnabled)(hGraphExec, hNode, isEnabled)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuGraphUpload(CUgraphExec hGraphExec, CUstream hStream) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":5636
 *     return err
 * 
 * cdef CUresult _cuGraphNodeGetEnabled(CUgraphExec hGraphExec, CUgraphNode hNode, unsigned int* isEnabled) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuGraphNodeGetEnabled
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuGraphNodeGetEnabled", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":5645
 *     return err
 * 
 * cdef CUresult _cuGraphUpload(CUgraphExec hGraphExec, CUstream hStream) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuGraphUpload
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuGraphUpload(CUgraphExec __pyx_v_hGraphExec, CUstream __pyx_v_hStream) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuGraphUpload", 1);
  __Pyx_TraceCall("_cuGraphUpload", __pyx_f[0], 5645, 1, __PYX_ERR(0, 5645, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":5647
 * cdef CUresult _cuGraphUpload(CUgraphExec hGraphExec, CUstream hStream) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuGraphUpload
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuGraphUpload == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 5647, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":5648
 *     global __cuGraphUpload
 *     cuPythonInit()
 *     if __cuGraphUpload == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuGraphUpload" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuGraphUpload == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":5649
 *     cuPythonInit()
 *     if __cuGraphUpload == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuGraphUpload" not found')
 *     err = (<CUresult (*)(CUgraphExec, CUstream) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphUpload)(hGraphExec, hStream)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":5650
 *     if __cuGraphUpload == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuGraphUpload" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUgraphExec, CUstream) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphUpload)(hGraphExec, hStream)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__337, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 5650, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 5650, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":5649
 *     cuPythonInit()
 *     if __cuGraphUpload == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuGraphUpload" not found')
 *     err = (<CUresult (*)(CUgraphExec, CUstream) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphUpload)(hGraphExec, hStream)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":5648
 *     global __cuGraphUpload
 *     cuPythonInit()
 *     if __cuGraphUpload == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuGraphUpload" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":5651
 *         with gil:
 *             raise RuntimeError('Function "cuGraphUpload" not found')
 *     err = (<CUresult (*)(CUgraphExec, CUstream) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphUpload)(hGraphExec, hStream)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUgraphExec, CUstream))__pyx_v_4cuda_5_cuda_5ccuda___cuGraphUpload)(__pyx_v_hGraphExec, __pyx_v_hStream); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 5651, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":5652
 *             raise RuntimeError('Function "cuGraphUpload" not found')
 *     err = (<CUresult (*)(CUgraphExec, CUstream) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphUpload)(hGraphExec, hStream)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuGraphLaunch(CUgraphExec hGraphExec, CUstream hStream) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":5645
 *     return err
 * 
 * cdef CUresult _cuGraphUpload(CUgraphExec hGraphExec, CUstream hStream) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuGraphUpload
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuGraphUpload", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":5654
 *     return err
 * 
 * cdef CUresult _cuGraphLaunch(CUgraphExec hGraphExec, CUstream hStream) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuGraphLaunch
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuGraphLaunch(CUgraphExec __pyx_v_hGraphExec, CUstream __pyx_v_hStream) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuGraphLaunch", 1);
  __Pyx_TraceCall("_cuGraphLaunch", __pyx_f[0], 5654, 1, __PYX_ERR(0, 5654, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":5656
 * cdef CUresult _cuGraphLaunch(CUgraphExec hGraphExec, CUstream hStream) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuGraphLaunch
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuGraphLaunch == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 5656, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":5657
 *     global __cuGraphLaunch
 *     cuPythonInit()
 *     if __cuGraphLaunch == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuGraphLaunch" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuGraphLaunch == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":5658
 *     cuPythonInit()
 *     if __cuGraphLaunch == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuGraphLaunch" not found')
 *     err = (<CUresult (*)(CUgraphExec, CUstream) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphLaunch)(hGraphExec, hStream)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":5659
 *     if __cuGraphLaunch == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuGraphLaunch" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUgraphExec, CUstream) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphLaunch)(hGraphExec, hStream)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__338, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 5659, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 5659, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":5658
 *     cuPythonInit()
 *     if __cuGraphLaunch == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuGraphLaunch" not found')
 *     err = (<CUresult (*)(CUgraphExec, CUstream) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphLaunch)(hGraphExec, hStream)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":5657
 *     global __cuGraphLaunch
 *     cuPythonInit()
 *     if __cuGraphLaunch == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuGraphLaunch" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":5660
 *         with gil:
 *             raise RuntimeError('Function "cuGraphLaunch" not found')
 *     err = (<CUresult (*)(CUgraphExec, CUstream) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphLaunch)(hGraphExec, hStream)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUgraphExec, CUstream))__pyx_v_4cuda_5_cuda_5ccuda___cuGraphLaunch)(__pyx_v_hGraphExec, __pyx_v_hStream); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 5660, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":5661
 *             raise RuntimeError('Function "cuGraphLaunch" not found')
 *     err = (<CUresult (*)(CUgraphExec, CUstream) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphLaunch)(hGraphExec, hStream)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuGraphExecDestroy(CUgraphExec hGraphExec) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":5654
 *     return err
 * 
 * cdef CUresult _cuGraphLaunch(CUgraphExec hGraphExec, CUstream hStream) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuGraphLaunch
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuGraphLaunch", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":5663
 *     return err
 * 
 * cdef CUresult _cuGraphExecDestroy(CUgraphExec hGraphExec) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuGraphExecDestroy
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuGraphExecDestroy(CUgraphExec __pyx_v_hGraphExec) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuGraphExecDestroy", 1);
  __Pyx_TraceCall("_cuGraphExecDestroy", __pyx_f[0], 5663, 1, __PYX_ERR(0, 5663, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":5665
 * cdef CUresult _cuGraphExecDestroy(CUgraphExec hGraphExec) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuGraphExecDestroy
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuGraphExecDestroy == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 5665, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":5666
 *     global __cuGraphExecDestroy
 *     cuPythonInit()
 *     if __cuGraphExecDestroy == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuGraphExecDestroy" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuGraphExecDestroy == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":5667
 *     cuPythonInit()
 *     if __cuGraphExecDestroy == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuGraphExecDestroy" not found')
 *     err = (<CUresult (*)(CUgraphExec) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphExecDestroy)(hGraphExec)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":5668
 *     if __cuGraphExecDestroy == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuGraphExecDestroy" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUgraphExec) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphExecDestroy)(hGraphExec)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__339, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 5668, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 5668, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":5667
 *     cuPythonInit()
 *     if __cuGraphExecDestroy == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuGraphExecDestroy" not found')
 *     err = (<CUresult (*)(CUgraphExec) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphExecDestroy)(hGraphExec)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":5666
 *     global __cuGraphExecDestroy
 *     cuPythonInit()
 *     if __cuGraphExecDestroy == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuGraphExecDestroy" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":5669
 *         with gil:
 *             raise RuntimeError('Function "cuGraphExecDestroy" not found')
 *     err = (<CUresult (*)(CUgraphExec) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphExecDestroy)(hGraphExec)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUgraphExec))__pyx_v_4cuda_5_cuda_5ccuda___cuGraphExecDestroy)(__pyx_v_hGraphExec); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 5669, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":5670
 *             raise RuntimeError('Function "cuGraphExecDestroy" not found')
 *     err = (<CUresult (*)(CUgraphExec) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphExecDestroy)(hGraphExec)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuGraphDestroy(CUgraph hGraph) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":5663
 *     return err
 * 
 * cdef CUresult _cuGraphExecDestroy(CUgraphExec hGraphExec) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuGraphExecDestroy
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuGraphExecDestroy", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":5672
 *     return err
 * 
 * cdef CUresult _cuGraphDestroy(CUgraph hGraph) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuGraphDestroy
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuGraphDestroy(CUgraph __pyx_v_hGraph) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuGraphDestroy", 1);
  __Pyx_TraceCall("_cuGraphDestroy", __pyx_f[0], 5672, 1, __PYX_ERR(0, 5672, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":5674
 * cdef CUresult _cuGraphDestroy(CUgraph hGraph) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuGraphDestroy
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuGraphDestroy == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 5674, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":5675
 *     global __cuGraphDestroy
 *     cuPythonInit()
 *     if __cuGraphDestroy == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuGraphDestroy" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuGraphDestroy == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":5676
 *     cuPythonInit()
 *     if __cuGraphDestroy == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuGraphDestroy" not found')
 *     err = (<CUresult (*)(CUgraph) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphDestroy)(hGraph)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":5677
 *     if __cuGraphDestroy == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuGraphDestroy" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUgraph) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphDestroy)(hGraph)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__340, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 5677, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 5677, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":5676
 *     cuPythonInit()
 *     if __cuGraphDestroy == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuGraphDestroy" not found')
 *     err = (<CUresult (*)(CUgraph) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphDestroy)(hGraph)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":5675
 *     global __cuGraphDestroy
 *     cuPythonInit()
 *     if __cuGraphDestroy == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuGraphDestroy" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":5678
 *         with gil:
 *             raise RuntimeError('Function "cuGraphDestroy" not found')
 *     err = (<CUresult (*)(CUgraph) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphDestroy)(hGraph)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUgraph))__pyx_v_4cuda_5_cuda_5ccuda___cuGraphDestroy)(__pyx_v_hGraph); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 5678, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":5679
 *             raise RuntimeError('Function "cuGraphDestroy" not found')
 *     err = (<CUresult (*)(CUgraph) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphDestroy)(hGraph)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuGraphExecUpdate_v2(CUgraphExec hGraphExec, CUgraph hGraph, CUgraphExecUpdateResultInfo* resultInfo) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":5672
 *     return err
 * 
 * cdef CUresult _cuGraphDestroy(CUgraph hGraph) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuGraphDestroy
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuGraphDestroy", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":5681
 *     return err
 * 
 * cdef CUresult _cuGraphExecUpdate_v2(CUgraphExec hGraphExec, CUgraph hGraph, CUgraphExecUpdateResultInfo* resultInfo) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuGraphExecUpdate_v2
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuGraphExecUpdate_v2(CUgraphExec __pyx_v_hGraphExec, CUgraph __pyx_v_hGraph, CUgraphExecUpdateResultInfo *__pyx_v_resultInfo) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuGraphExecUpdate_v2", 1);
  __Pyx_TraceCall("_cuGraphExecUpdate_v2", __pyx_f[0], 5681, 1, __PYX_ERR(0, 5681, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":5683
 * cdef CUresult _cuGraphExecUpdate_v2(CUgraphExec hGraphExec, CUgraph hGraph, CUgraphExecUpdateResultInfo* resultInfo) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuGraphExecUpdate_v2
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuGraphExecUpdate_v2 == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 5683, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":5684
 *     global __cuGraphExecUpdate_v2
 *     cuPythonInit()
 *     if __cuGraphExecUpdate_v2 == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuGraphExecUpdate_v2" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuGraphExecUpdate_v2 == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":5685
 *     cuPythonInit()
 *     if __cuGraphExecUpdate_v2 == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuGraphExecUpdate_v2" not found')
 *     err = (<CUresult (*)(CUgraphExec, CUgraph, CUgraphExecUpdateResultInfo*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphExecUpdate_v2)(hGraphExec, hGraph, resultInfo)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":5686
 *     if __cuGraphExecUpdate_v2 == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuGraphExecUpdate_v2" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUgraphExec, CUgraph, CUgraphExecUpdateResultInfo*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphExecUpdate_v2)(hGraphExec, hGraph, resultInfo)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__341, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 5686, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 5686, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":5685
 *     cuPythonInit()
 *     if __cuGraphExecUpdate_v2 == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuGraphExecUpdate_v2" not found')
 *     err = (<CUresult (*)(CUgraphExec, CUgraph, CUgraphExecUpdateResultInfo*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphExecUpdate_v2)(hGraphExec, hGraph, resultInfo)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":5684
 *     global __cuGraphExecUpdate_v2
 *     cuPythonInit()
 *     if __cuGraphExecUpdate_v2 == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuGraphExecUpdate_v2" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":5687
 *         with gil:
 *             raise RuntimeError('Function "cuGraphExecUpdate_v2" not found')
 *     err = (<CUresult (*)(CUgraphExec, CUgraph, CUgraphExecUpdateResultInfo*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphExecUpdate_v2)(hGraphExec, hGraph, resultInfo)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUgraphExec, CUgraph, CUgraphExecUpdateResultInfo *))__pyx_v_4cuda_5_cuda_5ccuda___cuGraphExecUpdate_v2)(__pyx_v_hGraphExec, __pyx_v_hGraph, __pyx_v_resultInfo); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 5687, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":5688
 *             raise RuntimeError('Function "cuGraphExecUpdate_v2" not found')
 *     err = (<CUresult (*)(CUgraphExec, CUgraph, CUgraphExecUpdateResultInfo*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphExecUpdate_v2)(hGraphExec, hGraph, resultInfo)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuGraphKernelNodeCopyAttributes(CUgraphNode dst, CUgraphNode src) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":5681
 *     return err
 * 
 * cdef CUresult _cuGraphExecUpdate_v2(CUgraphExec hGraphExec, CUgraph hGraph, CUgraphExecUpdateResultInfo* resultInfo) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuGraphExecUpdate_v2
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuGraphExecUpdate_v2", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":5690
 *     return err
 * 
 * cdef CUresult _cuGraphKernelNodeCopyAttributes(CUgraphNode dst, CUgraphNode src) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuGraphKernelNodeCopyAttributes
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuGraphKernelNodeCopyAttributes(CUgraphNode __pyx_v_dst, CUgraphNode __pyx_v_src) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuGraphKernelNodeCopyAttributes", 1);
  __Pyx_TraceCall("_cuGraphKernelNodeCopyAttributes", __pyx_f[0], 5690, 1, __PYX_ERR(0, 5690, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":5692
 * cdef CUresult _cuGraphKernelNodeCopyAttributes(CUgraphNode dst, CUgraphNode src) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuGraphKernelNodeCopyAttributes
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuGraphKernelNodeCopyAttributes == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 5692, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":5693
 *     global __cuGraphKernelNodeCopyAttributes
 *     cuPythonInit()
 *     if __cuGraphKernelNodeCopyAttributes == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuGraphKernelNodeCopyAttributes" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuGraphKernelNodeCopyAttributes == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":5694
 *     cuPythonInit()
 *     if __cuGraphKernelNodeCopyAttributes == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuGraphKernelNodeCopyAttributes" not found')
 *     err = (<CUresult (*)(CUgraphNode, CUgraphNode) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphKernelNodeCopyAttributes)(dst, src)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":5695
 *     if __cuGraphKernelNodeCopyAttributes == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuGraphKernelNodeCopyAttributes" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUgraphNode, CUgraphNode) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphKernelNodeCopyAttributes)(dst, src)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__342, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 5695, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 5695, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":5694
 *     cuPythonInit()
 *     if __cuGraphKernelNodeCopyAttributes == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuGraphKernelNodeCopyAttributes" not found')
 *     err = (<CUresult (*)(CUgraphNode, CUgraphNode) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphKernelNodeCopyAttributes)(dst, src)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":5693
 *     global __cuGraphKernelNodeCopyAttributes
 *     cuPythonInit()
 *     if __cuGraphKernelNodeCopyAttributes == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuGraphKernelNodeCopyAttributes" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":5696
 *         with gil:
 *             raise RuntimeError('Function "cuGraphKernelNodeCopyAttributes" not found')
 *     err = (<CUresult (*)(CUgraphNode, CUgraphNode) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphKernelNodeCopyAttributes)(dst, src)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUgraphNode, CUgraphNode))__pyx_v_4cuda_5_cuda_5ccuda___cuGraphKernelNodeCopyAttributes)(__pyx_v_dst, __pyx_v_src); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 5696, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":5697
 *             raise RuntimeError('Function "cuGraphKernelNodeCopyAttributes" not found')
 *     err = (<CUresult (*)(CUgraphNode, CUgraphNode) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphKernelNodeCopyAttributes)(dst, src)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuGraphKernelNodeGetAttribute(CUgraphNode hNode, CUkernelNodeAttrID attr, CUkernelNodeAttrValue* value_out) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":5690
 *     return err
 * 
 * cdef CUresult _cuGraphKernelNodeCopyAttributes(CUgraphNode dst, CUgraphNode src) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuGraphKernelNodeCopyAttributes
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuGraphKernelNodeCopyAttributes", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":5699
 *     return err
 * 
 * cdef CUresult _cuGraphKernelNodeGetAttribute(CUgraphNode hNode, CUkernelNodeAttrID attr, CUkernelNodeAttrValue* value_out) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuGraphKernelNodeGetAttribute
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuGraphKernelNodeGetAttribute(CUgraphNode __pyx_v_hNode, CUkernelNodeAttrID __pyx_v_attr, CUkernelNodeAttrValue *__pyx_v_value_out) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuGraphKernelNodeGetAttribute", 1);
  __Pyx_TraceCall("_cuGraphKernelNodeGetAttribute", __pyx_f[0], 5699, 1, __PYX_ERR(0, 5699, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":5701
 * cdef CUresult _cuGraphKernelNodeGetAttribute(CUgraphNode hNode, CUkernelNodeAttrID attr, CUkernelNodeAttrValue* value_out) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuGraphKernelNodeGetAttribute
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuGraphKernelNodeGetAttribute == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 5701, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":5702
 *     global __cuGraphKernelNodeGetAttribute
 *     cuPythonInit()
 *     if __cuGraphKernelNodeGetAttribute == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuGraphKernelNodeGetAttribute" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuGraphKernelNodeGetAttribute == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":5703
 *     cuPythonInit()
 *     if __cuGraphKernelNodeGetAttribute == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuGraphKernelNodeGetAttribute" not found')
 *     err = (<CUresult (*)(CUgraphNode, CUkernelNodeAttrID, CUkernelNodeAttrValue*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphKernelNodeGetAttribute)(hNode, attr, value_out)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":5704
 *     if __cuGraphKernelNodeGetAttribute == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuGraphKernelNodeGetAttribute" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUgraphNode, CUkernelNodeAttrID, CUkernelNodeAttrValue*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphKernelNodeGetAttribute)(hNode, attr, value_out)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__343, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 5704, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 5704, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":5703
 *     cuPythonInit()
 *     if __cuGraphKernelNodeGetAttribute == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuGraphKernelNodeGetAttribute" not found')
 *     err = (<CUresult (*)(CUgraphNode, CUkernelNodeAttrID, CUkernelNodeAttrValue*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphKernelNodeGetAttribute)(hNode, attr, value_out)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":5702
 *     global __cuGraphKernelNodeGetAttribute
 *     cuPythonInit()
 *     if __cuGraphKernelNodeGetAttribute == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuGraphKernelNodeGetAttribute" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":5705
 *         with gil:
 *             raise RuntimeError('Function "cuGraphKernelNodeGetAttribute" not found')
 *     err = (<CUresult (*)(CUgraphNode, CUkernelNodeAttrID, CUkernelNodeAttrValue*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphKernelNodeGetAttribute)(hNode, attr, value_out)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUgraphNode, CUkernelNodeAttrID, CUkernelNodeAttrValue *))__pyx_v_4cuda_5_cuda_5ccuda___cuGraphKernelNodeGetAttribute)(__pyx_v_hNode, __pyx_v_attr, __pyx_v_value_out); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 5705, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":5706
 *             raise RuntimeError('Function "cuGraphKernelNodeGetAttribute" not found')
 *     err = (<CUresult (*)(CUgraphNode, CUkernelNodeAttrID, CUkernelNodeAttrValue*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphKernelNodeGetAttribute)(hNode, attr, value_out)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuGraphKernelNodeSetAttribute(CUgraphNode hNode, CUkernelNodeAttrID attr, const CUkernelNodeAttrValue* value) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":5699
 *     return err
 * 
 * cdef CUresult _cuGraphKernelNodeGetAttribute(CUgraphNode hNode, CUkernelNodeAttrID attr, CUkernelNodeAttrValue* value_out) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuGraphKernelNodeGetAttribute
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuGraphKernelNodeGetAttribute", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":5708
 *     return err
 * 
 * cdef CUresult _cuGraphKernelNodeSetAttribute(CUgraphNode hNode, CUkernelNodeAttrID attr, const CUkernelNodeAttrValue* value) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuGraphKernelNodeSetAttribute
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuGraphKernelNodeSetAttribute(CUgraphNode __pyx_v_hNode, CUkernelNodeAttrID __pyx_v_attr, CUkernelNodeAttrValue const *__pyx_v_value) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuGraphKernelNodeSetAttribute", 1);
  __Pyx_TraceCall("_cuGraphKernelNodeSetAttribute", __pyx_f[0], 5708, 1, __PYX_ERR(0, 5708, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":5710
 * cdef CUresult _cuGraphKernelNodeSetAttribute(CUgraphNode hNode, CUkernelNodeAttrID attr, const CUkernelNodeAttrValue* value) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuGraphKernelNodeSetAttribute
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuGraphKernelNodeSetAttribute == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 5710, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":5711
 *     global __cuGraphKernelNodeSetAttribute
 *     cuPythonInit()
 *     if __cuGraphKernelNodeSetAttribute == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuGraphKernelNodeSetAttribute" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuGraphKernelNodeSetAttribute == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":5712
 *     cuPythonInit()
 *     if __cuGraphKernelNodeSetAttribute == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuGraphKernelNodeSetAttribute" not found')
 *     err = (<CUresult (*)(CUgraphNode, CUkernelNodeAttrID, const CUkernelNodeAttrValue*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphKernelNodeSetAttribute)(hNode, attr, value)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":5713
 *     if __cuGraphKernelNodeSetAttribute == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuGraphKernelNodeSetAttribute" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUgraphNode, CUkernelNodeAttrID, const CUkernelNodeAttrValue*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphKernelNodeSetAttribute)(hNode, attr, value)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__344, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 5713, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 5713, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":5712
 *     cuPythonInit()
 *     if __cuGraphKernelNodeSetAttribute == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuGraphKernelNodeSetAttribute" not found')
 *     err = (<CUresult (*)(CUgraphNode, CUkernelNodeAttrID, const CUkernelNodeAttrValue*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphKernelNodeSetAttribute)(hNode, attr, value)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":5711
 *     global __cuGraphKernelNodeSetAttribute
 *     cuPythonInit()
 *     if __cuGraphKernelNodeSetAttribute == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuGraphKernelNodeSetAttribute" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":5714
 *         with gil:
 *             raise RuntimeError('Function "cuGraphKernelNodeSetAttribute" not found')
 *     err = (<CUresult (*)(CUgraphNode, CUkernelNodeAttrID, const CUkernelNodeAttrValue*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphKernelNodeSetAttribute)(hNode, attr, value)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUgraphNode, CUkernelNodeAttrID, CUkernelNodeAttrValue const *))__pyx_v_4cuda_5_cuda_5ccuda___cuGraphKernelNodeSetAttribute)(__pyx_v_hNode, __pyx_v_attr, __pyx_v_value); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 5714, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":5715
 *             raise RuntimeError('Function "cuGraphKernelNodeSetAttribute" not found')
 *     err = (<CUresult (*)(CUgraphNode, CUkernelNodeAttrID, const CUkernelNodeAttrValue*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphKernelNodeSetAttribute)(hNode, attr, value)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuGraphDebugDotPrint(CUgraph hGraph, const char* path, unsigned int flags) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":5708
 *     return err
 * 
 * cdef CUresult _cuGraphKernelNodeSetAttribute(CUgraphNode hNode, CUkernelNodeAttrID attr, const CUkernelNodeAttrValue* value) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuGraphKernelNodeSetAttribute
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuGraphKernelNodeSetAttribute", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":5717
 *     return err
 * 
 * cdef CUresult _cuGraphDebugDotPrint(CUgraph hGraph, const char* path, unsigned int flags) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuGraphDebugDotPrint
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuGraphDebugDotPrint(CUgraph __pyx_v_hGraph, char const *__pyx_v_path, unsigned int __pyx_v_flags) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuGraphDebugDotPrint", 1);
  __Pyx_TraceCall("_cuGraphDebugDotPrint", __pyx_f[0], 5717, 1, __PYX_ERR(0, 5717, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":5719
 * cdef CUresult _cuGraphDebugDotPrint(CUgraph hGraph, const char* path, unsigned int flags) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuGraphDebugDotPrint
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuGraphDebugDotPrint == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 5719, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":5720
 *     global __cuGraphDebugDotPrint
 *     cuPythonInit()
 *     if __cuGraphDebugDotPrint == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuGraphDebugDotPrint" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuGraphDebugDotPrint == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":5721
 *     cuPythonInit()
 *     if __cuGraphDebugDotPrint == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuGraphDebugDotPrint" not found')
 *     err = (<CUresult (*)(CUgraph, const char*, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphDebugDotPrint)(hGraph, path, flags)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":5722
 *     if __cuGraphDebugDotPrint == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuGraphDebugDotPrint" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUgraph, const char*, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphDebugDotPrint)(hGraph, path, flags)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__345, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 5722, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 5722, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":5721
 *     cuPythonInit()
 *     if __cuGraphDebugDotPrint == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuGraphDebugDotPrint" not found')
 *     err = (<CUresult (*)(CUgraph, const char*, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphDebugDotPrint)(hGraph, path, flags)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":5720
 *     global __cuGraphDebugDotPrint
 *     cuPythonInit()
 *     if __cuGraphDebugDotPrint == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuGraphDebugDotPrint" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":5723
 *         with gil:
 *             raise RuntimeError('Function "cuGraphDebugDotPrint" not found')
 *     err = (<CUresult (*)(CUgraph, const char*, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphDebugDotPrint)(hGraph, path, flags)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUgraph, char const *, unsigned int))__pyx_v_4cuda_5_cuda_5ccuda___cuGraphDebugDotPrint)(__pyx_v_hGraph, __pyx_v_path, __pyx_v_flags); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 5723, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":5724
 *             raise RuntimeError('Function "cuGraphDebugDotPrint" not found')
 *     err = (<CUresult (*)(CUgraph, const char*, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphDebugDotPrint)(hGraph, path, flags)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuUserObjectCreate(CUuserObject* object_out, void* ptr, CUhostFn destroy, unsigned int initialRefcount, unsigned int flags) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":5717
 *     return err
 * 
 * cdef CUresult _cuGraphDebugDotPrint(CUgraph hGraph, const char* path, unsigned int flags) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuGraphDebugDotPrint
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuGraphDebugDotPrint", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":5726
 *     return err
 * 
 * cdef CUresult _cuUserObjectCreate(CUuserObject* object_out, void* ptr, CUhostFn destroy, unsigned int initialRefcount, unsigned int flags) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuUserObjectCreate
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuUserObjectCreate(CUuserObject *__pyx_v_object_out, void *__pyx_v_ptr, CUhostFn __pyx_v_destroy, unsigned int __pyx_v_initialRefcount, unsigned int __pyx_v_flags) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuUserObjectCreate", 1);
  __Pyx_TraceCall("_cuUserObjectCreate", __pyx_f[0], 5726, 1, __PYX_ERR(0, 5726, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":5728
 * cdef CUresult _cuUserObjectCreate(CUuserObject* object_out, void* ptr, CUhostFn destroy, unsigned int initialRefcount, unsigned int flags) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuUserObjectCreate
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuUserObjectCreate == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 5728, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":5729
 *     global __cuUserObjectCreate
 *     cuPythonInit()
 *     if __cuUserObjectCreate == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuUserObjectCreate" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuUserObjectCreate == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":5730
 *     cuPythonInit()
 *     if __cuUserObjectCreate == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuUserObjectCreate" not found')
 *     err = (<CUresult (*)(CUuserObject*, void*, CUhostFn, unsigned int, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuUserObjectCreate)(object_out, ptr, destroy, initialRefcount, flags)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":5731
 *     if __cuUserObjectCreate == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuUserObjectCreate" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUuserObject*, void*, CUhostFn, unsigned int, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuUserObjectCreate)(object_out, ptr, destroy, initialRefcount, flags)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__346, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 5731, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 5731, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":5730
 *     cuPythonInit()
 *     if __cuUserObjectCreate == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuUserObjectCreate" not found')
 *     err = (<CUresult (*)(CUuserObject*, void*, CUhostFn, unsigned int, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuUserObjectCreate)(object_out, ptr, destroy, initialRefcount, flags)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":5729
 *     global __cuUserObjectCreate
 *     cuPythonInit()
 *     if __cuUserObjectCreate == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuUserObjectCreate" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":5732
 *         with gil:
 *             raise RuntimeError('Function "cuUserObjectCreate" not found')
 *     err = (<CUresult (*)(CUuserObject*, void*, CUhostFn, unsigned int, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuUserObjectCreate)(object_out, ptr, destroy, initialRefcount, flags)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUuserObject *, void *, CUhostFn, unsigned int, unsigned int))__pyx_v_4cuda_5_cuda_5ccuda___cuUserObjectCreate)(__pyx_v_object_out, __pyx_v_ptr, __pyx_v_destroy, __pyx_v_initialRefcount, __pyx_v_flags); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 5732, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":5733
 *             raise RuntimeError('Function "cuUserObjectCreate" not found')
 *     err = (<CUresult (*)(CUuserObject*, void*, CUhostFn, unsigned int, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuUserObjectCreate)(object_out, ptr, destroy, initialRefcount, flags)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuUserObjectRetain(CUuserObject object, unsigned int count) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":5726
 *     return err
 * 
 * cdef CUresult _cuUserObjectCreate(CUuserObject* object_out, void* ptr, CUhostFn destroy, unsigned int initialRefcount, unsigned int flags) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuUserObjectCreate
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuUserObjectCreate", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":5735
 *     return err
 * 
 * cdef CUresult _cuUserObjectRetain(CUuserObject object, unsigned int count) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuUserObjectRetain
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuUserObjectRetain(CUuserObject __pyx_v_object, unsigned int __pyx_v_count) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuUserObjectRetain", 1);
  __Pyx_TraceCall("_cuUserObjectRetain", __pyx_f[0], 5735, 1, __PYX_ERR(0, 5735, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":5737
 * cdef CUresult _cuUserObjectRetain(CUuserObject object, unsigned int count) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuUserObjectRetain
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuUserObjectRetain == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 5737, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":5738
 *     global __cuUserObjectRetain
 *     cuPythonInit()
 *     if __cuUserObjectRetain == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuUserObjectRetain" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuUserObjectRetain == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":5739
 *     cuPythonInit()
 *     if __cuUserObjectRetain == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuUserObjectRetain" not found')
 *     err = (<CUresult (*)(CUuserObject, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuUserObjectRetain)(object, count)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":5740
 *     if __cuUserObjectRetain == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuUserObjectRetain" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUuserObject, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuUserObjectRetain)(object, count)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__347, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 5740, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 5740, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":5739
 *     cuPythonInit()
 *     if __cuUserObjectRetain == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuUserObjectRetain" not found')
 *     err = (<CUresult (*)(CUuserObject, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuUserObjectRetain)(object, count)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":5738
 *     global __cuUserObjectRetain
 *     cuPythonInit()
 *     if __cuUserObjectRetain == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuUserObjectRetain" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":5741
 *         with gil:
 *             raise RuntimeError('Function "cuUserObjectRetain" not found')
 *     err = (<CUresult (*)(CUuserObject, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuUserObjectRetain)(object, count)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUuserObject, unsigned int))__pyx_v_4cuda_5_cuda_5ccuda___cuUserObjectRetain)(__pyx_v_object, __pyx_v_count); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 5741, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":5742
 *             raise RuntimeError('Function "cuUserObjectRetain" not found')
 *     err = (<CUresult (*)(CUuserObject, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuUserObjectRetain)(object, count)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuUserObjectRelease(CUuserObject object, unsigned int count) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":5735
 *     return err
 * 
 * cdef CUresult _cuUserObjectRetain(CUuserObject object, unsigned int count) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuUserObjectRetain
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuUserObjectRetain", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":5744
 *     return err
 * 
 * cdef CUresult _cuUserObjectRelease(CUuserObject object, unsigned int count) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuUserObjectRelease
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuUserObjectRelease(CUuserObject __pyx_v_object, unsigned int __pyx_v_count) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuUserObjectRelease", 1);
  __Pyx_TraceCall("_cuUserObjectRelease", __pyx_f[0], 5744, 1, __PYX_ERR(0, 5744, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":5746
 * cdef CUresult _cuUserObjectRelease(CUuserObject object, unsigned int count) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuUserObjectRelease
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuUserObjectRelease == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 5746, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":5747
 *     global __cuUserObjectRelease
 *     cuPythonInit()
 *     if __cuUserObjectRelease == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuUserObjectRelease" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuUserObjectRelease == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":5748
 *     cuPythonInit()
 *     if __cuUserObjectRelease == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuUserObjectRelease" not found')
 *     err = (<CUresult (*)(CUuserObject, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuUserObjectRelease)(object, count)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":5749
 *     if __cuUserObjectRelease == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuUserObjectRelease" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUuserObject, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuUserObjectRelease)(object, count)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__348, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 5749, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 5749, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":5748
 *     cuPythonInit()
 *     if __cuUserObjectRelease == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuUserObjectRelease" not found')
 *     err = (<CUresult (*)(CUuserObject, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuUserObjectRelease)(object, count)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":5747
 *     global __cuUserObjectRelease
 *     cuPythonInit()
 *     if __cuUserObjectRelease == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuUserObjectRelease" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":5750
 *         with gil:
 *             raise RuntimeError('Function "cuUserObjectRelease" not found')
 *     err = (<CUresult (*)(CUuserObject, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuUserObjectRelease)(object, count)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUuserObject, unsigned int))__pyx_v_4cuda_5_cuda_5ccuda___cuUserObjectRelease)(__pyx_v_object, __pyx_v_count); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 5750, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":5751
 *             raise RuntimeError('Function "cuUserObjectRelease" not found')
 *     err = (<CUresult (*)(CUuserObject, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuUserObjectRelease)(object, count)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuGraphRetainUserObject(CUgraph graph, CUuserObject object, unsigned int count, unsigned int flags) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":5744
 *     return err
 * 
 * cdef CUresult _cuUserObjectRelease(CUuserObject object, unsigned int count) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuUserObjectRelease
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuUserObjectRelease", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":5753
 *     return err
 * 
 * cdef CUresult _cuGraphRetainUserObject(CUgraph graph, CUuserObject object, unsigned int count, unsigned int flags) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuGraphRetainUserObject
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuGraphRetainUserObject(CUgraph __pyx_v_graph, CUuserObject __pyx_v_object, unsigned int __pyx_v_count, unsigned int __pyx_v_flags) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuGraphRetainUserObject", 1);
  __Pyx_TraceCall("_cuGraphRetainUserObject", __pyx_f[0], 5753, 1, __PYX_ERR(0, 5753, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":5755
 * cdef CUresult _cuGraphRetainUserObject(CUgraph graph, CUuserObject object, unsigned int count, unsigned int flags) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuGraphRetainUserObject
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuGraphRetainUserObject == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 5755, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":5756
 *     global __cuGraphRetainUserObject
 *     cuPythonInit()
 *     if __cuGraphRetainUserObject == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuGraphRetainUserObject" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuGraphRetainUserObject == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":5757
 *     cuPythonInit()
 *     if __cuGraphRetainUserObject == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuGraphRetainUserObject" not found')
 *     err = (<CUresult (*)(CUgraph, CUuserObject, unsigned int, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphRetainUserObject)(graph, object, count, flags)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":5758
 *     if __cuGraphRetainUserObject == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuGraphRetainUserObject" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUgraph, CUuserObject, unsigned int, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphRetainUserObject)(graph, object, count, flags)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__349, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 5758, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 5758, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":5757
 *     cuPythonInit()
 *     if __cuGraphRetainUserObject == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuGraphRetainUserObject" not found')
 *     err = (<CUresult (*)(CUgraph, CUuserObject, unsigned int, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphRetainUserObject)(graph, object, count, flags)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":5756
 *     global __cuGraphRetainUserObject
 *     cuPythonInit()
 *     if __cuGraphRetainUserObject == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuGraphRetainUserObject" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":5759
 *         with gil:
 *             raise RuntimeError('Function "cuGraphRetainUserObject" not found')
 *     err = (<CUresult (*)(CUgraph, CUuserObject, unsigned int, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphRetainUserObject)(graph, object, count, flags)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUgraph, CUuserObject, unsigned int, unsigned int))__pyx_v_4cuda_5_cuda_5ccuda___cuGraphRetainUserObject)(__pyx_v_graph, __pyx_v_object, __pyx_v_count, __pyx_v_flags); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 5759, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":5760
 *             raise RuntimeError('Function "cuGraphRetainUserObject" not found')
 *     err = (<CUresult (*)(CUgraph, CUuserObject, unsigned int, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphRetainUserObject)(graph, object, count, flags)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuGraphReleaseUserObject(CUgraph graph, CUuserObject object, unsigned int count) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":5753
 *     return err
 * 
 * cdef CUresult _cuGraphRetainUserObject(CUgraph graph, CUuserObject object, unsigned int count, unsigned int flags) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuGraphRetainUserObject
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuGraphRetainUserObject", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":5762
 *     return err
 * 
 * cdef CUresult _cuGraphReleaseUserObject(CUgraph graph, CUuserObject object, unsigned int count) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuGraphReleaseUserObject
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuGraphReleaseUserObject(CUgraph __pyx_v_graph, CUuserObject __pyx_v_object, unsigned int __pyx_v_count) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuGraphReleaseUserObject", 1);
  __Pyx_TraceCall("_cuGraphReleaseUserObject", __pyx_f[0], 5762, 1, __PYX_ERR(0, 5762, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":5764
 * cdef CUresult _cuGraphReleaseUserObject(CUgraph graph, CUuserObject object, unsigned int count) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuGraphReleaseUserObject
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuGraphReleaseUserObject == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 5764, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":5765
 *     global __cuGraphReleaseUserObject
 *     cuPythonInit()
 *     if __cuGraphReleaseUserObject == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuGraphReleaseUserObject" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuGraphReleaseUserObject == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":5766
 *     cuPythonInit()
 *     if __cuGraphReleaseUserObject == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuGraphReleaseUserObject" not found')
 *     err = (<CUresult (*)(CUgraph, CUuserObject, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphReleaseUserObject)(graph, object, count)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":5767
 *     if __cuGraphReleaseUserObject == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuGraphReleaseUserObject" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUgraph, CUuserObject, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphReleaseUserObject)(graph, object, count)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__350, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 5767, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 5767, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":5766
 *     cuPythonInit()
 *     if __cuGraphReleaseUserObject == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuGraphReleaseUserObject" not found')
 *     err = (<CUresult (*)(CUgraph, CUuserObject, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphReleaseUserObject)(graph, object, count)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":5765
 *     global __cuGraphReleaseUserObject
 *     cuPythonInit()
 *     if __cuGraphReleaseUserObject == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuGraphReleaseUserObject" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":5768
 *         with gil:
 *             raise RuntimeError('Function "cuGraphReleaseUserObject" not found')
 *     err = (<CUresult (*)(CUgraph, CUuserObject, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphReleaseUserObject)(graph, object, count)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUgraph, CUuserObject, unsigned int))__pyx_v_4cuda_5_cuda_5ccuda___cuGraphReleaseUserObject)(__pyx_v_graph, __pyx_v_object, __pyx_v_count); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 5768, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":5769
 *             raise RuntimeError('Function "cuGraphReleaseUserObject" not found')
 *     err = (<CUresult (*)(CUgraph, CUuserObject, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphReleaseUserObject)(graph, object, count)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuGraphAddNode(CUgraphNode* phGraphNode, CUgraph hGraph, const CUgraphNode* dependencies, size_t numDependencies, CUgraphNodeParams* nodeParams) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":5762
 *     return err
 * 
 * cdef CUresult _cuGraphReleaseUserObject(CUgraph graph, CUuserObject object, unsigned int count) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuGraphReleaseUserObject
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuGraphReleaseUserObject", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":5771
 *     return err
 * 
 * cdef CUresult _cuGraphAddNode(CUgraphNode* phGraphNode, CUgraph hGraph, const CUgraphNode* dependencies, size_t numDependencies, CUgraphNodeParams* nodeParams) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuGraphAddNode
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuGraphAddNode(CUgraphNode *__pyx_v_phGraphNode, CUgraph __pyx_v_hGraph, CUgraphNode const *__pyx_v_dependencies, size_t __pyx_v_numDependencies, CUgraphNodeParams *__pyx_v_nodeParams) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuGraphAddNode", 1);
  __Pyx_TraceCall("_cuGraphAddNode", __pyx_f[0], 5771, 1, __PYX_ERR(0, 5771, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":5773
 * cdef CUresult _cuGraphAddNode(CUgraphNode* phGraphNode, CUgraph hGraph, const CUgraphNode* dependencies, size_t numDependencies, CUgraphNodeParams* nodeParams) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuGraphAddNode
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuGraphAddNode == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 5773, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":5774
 *     global __cuGraphAddNode
 *     cuPythonInit()
 *     if __cuGraphAddNode == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuGraphAddNode" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuGraphAddNode == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":5775
 *     cuPythonInit()
 *     if __cuGraphAddNode == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuGraphAddNode" not found')
 *     err = (<CUresult (*)(CUgraphNode*, CUgraph, const CUgraphNode*, size_t, CUgraphNodeParams*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphAddNode)(phGraphNode, hGraph, dependencies, numDependencies, nodeParams)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":5776
 *     if __cuGraphAddNode == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuGraphAddNode" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUgraphNode*, CUgraph, const CUgraphNode*, size_t, CUgraphNodeParams*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphAddNode)(phGraphNode, hGraph, dependencies, numDependencies, nodeParams)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__351, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 5776, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 5776, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":5775
 *     cuPythonInit()
 *     if __cuGraphAddNode == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuGraphAddNode" not found')
 *     err = (<CUresult (*)(CUgraphNode*, CUgraph, const CUgraphNode*, size_t, CUgraphNodeParams*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphAddNode)(phGraphNode, hGraph, dependencies, numDependencies, nodeParams)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":5774
 *     global __cuGraphAddNode
 *     cuPythonInit()
 *     if __cuGraphAddNode == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuGraphAddNode" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":5777
 *         with gil:
 *             raise RuntimeError('Function "cuGraphAddNode" not found')
 *     err = (<CUresult (*)(CUgraphNode*, CUgraph, const CUgraphNode*, size_t, CUgraphNodeParams*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphAddNode)(phGraphNode, hGraph, dependencies, numDependencies, nodeParams)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUgraphNode *, CUgraph, CUgraphNode const *, size_t, CUgraphNodeParams *))__pyx_v_4cuda_5_cuda_5ccuda___cuGraphAddNode)(__pyx_v_phGraphNode, __pyx_v_hGraph, __pyx_v_dependencies, __pyx_v_numDependencies, __pyx_v_nodeParams); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 5777, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":5778
 *             raise RuntimeError('Function "cuGraphAddNode" not found')
 *     err = (<CUresult (*)(CUgraphNode*, CUgraph, const CUgraphNode*, size_t, CUgraphNodeParams*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphAddNode)(phGraphNode, hGraph, dependencies, numDependencies, nodeParams)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuGraphAddNode_v2(CUgraphNode* phGraphNode, CUgraph hGraph, const CUgraphNode* dependencies, const CUgraphEdgeData* dependencyData, size_t numDependencies, CUgraphNodeParams* nodeParams) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":5771
 *     return err
 * 
 * cdef CUresult _cuGraphAddNode(CUgraphNode* phGraphNode, CUgraph hGraph, const CUgraphNode* dependencies, size_t numDependencies, CUgraphNodeParams* nodeParams) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuGraphAddNode
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuGraphAddNode", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":5780
 *     return err
 * 
 * cdef CUresult _cuGraphAddNode_v2(CUgraphNode* phGraphNode, CUgraph hGraph, const CUgraphNode* dependencies, const CUgraphEdgeData* dependencyData, size_t numDependencies, CUgraphNodeParams* nodeParams) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuGraphAddNode_v2
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuGraphAddNode_v2(CUgraphNode *__pyx_v_phGraphNode, CUgraph __pyx_v_hGraph, CUgraphNode const *__pyx_v_dependencies, CUgraphEdgeData const *__pyx_v_dependencyData, size_t __pyx_v_numDependencies, CUgraphNodeParams *__pyx_v_nodeParams) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuGraphAddNode_v2", 1);
  __Pyx_TraceCall("_cuGraphAddNode_v2", __pyx_f[0], 5780, 1, __PYX_ERR(0, 5780, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":5782
 * cdef CUresult _cuGraphAddNode_v2(CUgraphNode* phGraphNode, CUgraph hGraph, const CUgraphNode* dependencies, const CUgraphEdgeData* dependencyData, size_t numDependencies, CUgraphNodeParams* nodeParams) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuGraphAddNode_v2
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuGraphAddNode_v2 == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 5782, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":5783
 *     global __cuGraphAddNode_v2
 *     cuPythonInit()
 *     if __cuGraphAddNode_v2 == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuGraphAddNode_v2" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuGraphAddNode_v2 == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":5784
 *     cuPythonInit()
 *     if __cuGraphAddNode_v2 == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuGraphAddNode_v2" not found')
 *     err = (<CUresult (*)(CUgraphNode*, CUgraph, const CUgraphNode*, const CUgraphEdgeData*, size_t, CUgraphNodeParams*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphAddNode_v2)(phGraphNode, hGraph, dependencies, dependencyData, numDependencies, nodeParams)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":5785
 *     if __cuGraphAddNode_v2 == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuGraphAddNode_v2" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUgraphNode*, CUgraph, const CUgraphNode*, const CUgraphEdgeData*, size_t, CUgraphNodeParams*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphAddNode_v2)(phGraphNode, hGraph, dependencies, dependencyData, numDependencies, nodeParams)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__352, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 5785, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 5785, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":5784
 *     cuPythonInit()
 *     if __cuGraphAddNode_v2 == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuGraphAddNode_v2" not found')
 *     err = (<CUresult (*)(CUgraphNode*, CUgraph, const CUgraphNode*, const CUgraphEdgeData*, size_t, CUgraphNodeParams*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphAddNode_v2)(phGraphNode, hGraph, dependencies, dependencyData, numDependencies, nodeParams)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":5783
 *     global __cuGraphAddNode_v2
 *     cuPythonInit()
 *     if __cuGraphAddNode_v2 == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuGraphAddNode_v2" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":5786
 *         with gil:
 *             raise RuntimeError('Function "cuGraphAddNode_v2" not found')
 *     err = (<CUresult (*)(CUgraphNode*, CUgraph, const CUgraphNode*, const CUgraphEdgeData*, size_t, CUgraphNodeParams*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphAddNode_v2)(phGraphNode, hGraph, dependencies, dependencyData, numDependencies, nodeParams)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUgraphNode *, CUgraph, CUgraphNode const *, CUgraphEdgeData const *, size_t, CUgraphNodeParams *))__pyx_v_4cuda_5_cuda_5ccuda___cuGraphAddNode_v2)(__pyx_v_phGraphNode, __pyx_v_hGraph, __pyx_v_dependencies, __pyx_v_dependencyData, __pyx_v_numDependencies, __pyx_v_nodeParams); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 5786, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":5787
 *             raise RuntimeError('Function "cuGraphAddNode_v2" not found')
 *     err = (<CUresult (*)(CUgraphNode*, CUgraph, const CUgraphNode*, const CUgraphEdgeData*, size_t, CUgraphNodeParams*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphAddNode_v2)(phGraphNode, hGraph, dependencies, dependencyData, numDependencies, nodeParams)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuGraphNodeSetParams(CUgraphNode hNode, CUgraphNodeParams* nodeParams) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":5780
 *     return err
 * 
 * cdef CUresult _cuGraphAddNode_v2(CUgraphNode* phGraphNode, CUgraph hGraph, const CUgraphNode* dependencies, const CUgraphEdgeData* dependencyData, size_t numDependencies, CUgraphNodeParams* nodeParams) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuGraphAddNode_v2
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuGraphAddNode_v2", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":5789
 *     return err
 * 
 * cdef CUresult _cuGraphNodeSetParams(CUgraphNode hNode, CUgraphNodeParams* nodeParams) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuGraphNodeSetParams
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuGraphNodeSetParams(CUgraphNode __pyx_v_hNode, CUgraphNodeParams *__pyx_v_nodeParams) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuGraphNodeSetParams", 1);
  __Pyx_TraceCall("_cuGraphNodeSetParams", __pyx_f[0], 5789, 1, __PYX_ERR(0, 5789, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":5791
 * cdef CUresult _cuGraphNodeSetParams(CUgraphNode hNode, CUgraphNodeParams* nodeParams) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuGraphNodeSetParams
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuGraphNodeSetParams == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 5791, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":5792
 *     global __cuGraphNodeSetParams
 *     cuPythonInit()
 *     if __cuGraphNodeSetParams == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuGraphNodeSetParams" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuGraphNodeSetParams == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":5793
 *     cuPythonInit()
 *     if __cuGraphNodeSetParams == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuGraphNodeSetParams" not found')
 *     err = (<CUresult (*)(CUgraphNode, CUgraphNodeParams*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphNodeSetParams)(hNode, nodeParams)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":5794
 *     if __cuGraphNodeSetParams == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuGraphNodeSetParams" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUgraphNode, CUgraphNodeParams*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphNodeSetParams)(hNode, nodeParams)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__353, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 5794, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 5794, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":5793
 *     cuPythonInit()
 *     if __cuGraphNodeSetParams == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuGraphNodeSetParams" not found')
 *     err = (<CUresult (*)(CUgraphNode, CUgraphNodeParams*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphNodeSetParams)(hNode, nodeParams)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":5792
 *     global __cuGraphNodeSetParams
 *     cuPythonInit()
 *     if __cuGraphNodeSetParams == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuGraphNodeSetParams" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":5795
 *         with gil:
 *             raise RuntimeError('Function "cuGraphNodeSetParams" not found')
 *     err = (<CUresult (*)(CUgraphNode, CUgraphNodeParams*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphNodeSetParams)(hNode, nodeParams)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUgraphNode, CUgraphNodeParams *))__pyx_v_4cuda_5_cuda_5ccuda___cuGraphNodeSetParams)(__pyx_v_hNode, __pyx_v_nodeParams); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 5795, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":5796
 *             raise RuntimeError('Function "cuGraphNodeSetParams" not found')
 *     err = (<CUresult (*)(CUgraphNode, CUgraphNodeParams*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphNodeSetParams)(hNode, nodeParams)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuGraphExecNodeSetParams(CUgraphExec hGraphExec, CUgraphNode hNode, CUgraphNodeParams* nodeParams) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":5789
 *     return err
 * 
 * cdef CUresult _cuGraphNodeSetParams(CUgraphNode hNode, CUgraphNodeParams* nodeParams) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuGraphNodeSetParams
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuGraphNodeSetParams", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":5798
 *     return err
 * 
 * cdef CUresult _cuGraphExecNodeSetParams(CUgraphExec hGraphExec, CUgraphNode hNode, CUgraphNodeParams* nodeParams) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuGraphExecNodeSetParams
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuGraphExecNodeSetParams(CUgraphExec __pyx_v_hGraphExec, CUgraphNode __pyx_v_hNode, CUgraphNodeParams *__pyx_v_nodeParams) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuGraphExecNodeSetParams", 1);
  __Pyx_TraceCall("_cuGraphExecNodeSetParams", __pyx_f[0], 5798, 1, __PYX_ERR(0, 5798, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":5800
 * cdef CUresult _cuGraphExecNodeSetParams(CUgraphExec hGraphExec, CUgraphNode hNode, CUgraphNodeParams* nodeParams) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuGraphExecNodeSetParams
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuGraphExecNodeSetParams == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 5800, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":5801
 *     global __cuGraphExecNodeSetParams
 *     cuPythonInit()
 *     if __cuGraphExecNodeSetParams == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuGraphExecNodeSetParams" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuGraphExecNodeSetParams == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":5802
 *     cuPythonInit()
 *     if __cuGraphExecNodeSetParams == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuGraphExecNodeSetParams" not found')
 *     err = (<CUresult (*)(CUgraphExec, CUgraphNode, CUgraphNodeParams*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphExecNodeSetParams)(hGraphExec, hNode, nodeParams)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":5803
 *     if __cuGraphExecNodeSetParams == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuGraphExecNodeSetParams" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUgraphExec, CUgraphNode, CUgraphNodeParams*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphExecNodeSetParams)(hGraphExec, hNode, nodeParams)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__354, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 5803, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 5803, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":5802
 *     cuPythonInit()
 *     if __cuGraphExecNodeSetParams == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuGraphExecNodeSetParams" not found')
 *     err = (<CUresult (*)(CUgraphExec, CUgraphNode, CUgraphNodeParams*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphExecNodeSetParams)(hGraphExec, hNode, nodeParams)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":5801
 *     global __cuGraphExecNodeSetParams
 *     cuPythonInit()
 *     if __cuGraphExecNodeSetParams == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuGraphExecNodeSetParams" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":5804
 *         with gil:
 *             raise RuntimeError('Function "cuGraphExecNodeSetParams" not found')
 *     err = (<CUresult (*)(CUgraphExec, CUgraphNode, CUgraphNodeParams*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphExecNodeSetParams)(hGraphExec, hNode, nodeParams)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUgraphExec, CUgraphNode, CUgraphNodeParams *))__pyx_v_4cuda_5_cuda_5ccuda___cuGraphExecNodeSetParams)(__pyx_v_hGraphExec, __pyx_v_hNode, __pyx_v_nodeParams); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 5804, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":5805
 *             raise RuntimeError('Function "cuGraphExecNodeSetParams" not found')
 *     err = (<CUresult (*)(CUgraphExec, CUgraphNode, CUgraphNodeParams*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphExecNodeSetParams)(hGraphExec, hNode, nodeParams)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuGraphConditionalHandleCreate(CUgraphConditionalHandle* pHandle_out, CUgraph hGraph, CUcontext ctx, unsigned int defaultLaunchValue, unsigned int flags) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":5798
 *     return err
 * 
 * cdef CUresult _cuGraphExecNodeSetParams(CUgraphExec hGraphExec, CUgraphNode hNode, CUgraphNodeParams* nodeParams) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuGraphExecNodeSetParams
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuGraphExecNodeSetParams", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":5807
 *     return err
 * 
 * cdef CUresult _cuGraphConditionalHandleCreate(CUgraphConditionalHandle* pHandle_out, CUgraph hGraph, CUcontext ctx, unsigned int defaultLaunchValue, unsigned int flags) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuGraphConditionalHandleCreate
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuGraphConditionalHandleCreate(CUgraphConditionalHandle *__pyx_v_pHandle_out, CUgraph __pyx_v_hGraph, CUcontext __pyx_v_ctx, unsigned int __pyx_v_defaultLaunchValue, unsigned int __pyx_v_flags) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuGraphConditionalHandleCreate", 1);
  __Pyx_TraceCall("_cuGraphConditionalHandleCreate", __pyx_f[0], 5807, 1, __PYX_ERR(0, 5807, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":5809
 * cdef CUresult _cuGraphConditionalHandleCreate(CUgraphConditionalHandle* pHandle_out, CUgraph hGraph, CUcontext ctx, unsigned int defaultLaunchValue, unsigned int flags) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuGraphConditionalHandleCreate
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuGraphConditionalHandleCreate == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 5809, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":5810
 *     global __cuGraphConditionalHandleCreate
 *     cuPythonInit()
 *     if __cuGraphConditionalHandleCreate == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuGraphConditionalHandleCreate" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuGraphConditionalHandleCreate == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":5811
 *     cuPythonInit()
 *     if __cuGraphConditionalHandleCreate == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuGraphConditionalHandleCreate" not found')
 *     err = (<CUresult (*)(CUgraphConditionalHandle*, CUgraph, CUcontext, unsigned int, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphConditionalHandleCreate)(pHandle_out, hGraph, ctx, defaultLaunchValue, flags)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":5812
 *     if __cuGraphConditionalHandleCreate == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuGraphConditionalHandleCreate" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUgraphConditionalHandle*, CUgraph, CUcontext, unsigned int, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphConditionalHandleCreate)(pHandle_out, hGraph, ctx, defaultLaunchValue, flags)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__355, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 5812, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 5812, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":5811
 *     cuPythonInit()
 *     if __cuGraphConditionalHandleCreate == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuGraphConditionalHandleCreate" not found')
 *     err = (<CUresult (*)(CUgraphConditionalHandle*, CUgraph, CUcontext, unsigned int, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphConditionalHandleCreate)(pHandle_out, hGraph, ctx, defaultLaunchValue, flags)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":5810
 *     global __cuGraphConditionalHandleCreate
 *     cuPythonInit()
 *     if __cuGraphConditionalHandleCreate == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuGraphConditionalHandleCreate" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":5813
 *         with gil:
 *             raise RuntimeError('Function "cuGraphConditionalHandleCreate" not found')
 *     err = (<CUresult (*)(CUgraphConditionalHandle*, CUgraph, CUcontext, unsigned int, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphConditionalHandleCreate)(pHandle_out, hGraph, ctx, defaultLaunchValue, flags)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUgraphConditionalHandle *, CUgraph, CUcontext, unsigned int, unsigned int))__pyx_v_4cuda_5_cuda_5ccuda___cuGraphConditionalHandleCreate)(__pyx_v_pHandle_out, __pyx_v_hGraph, __pyx_v_ctx, __pyx_v_defaultLaunchValue, __pyx_v_flags); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 5813, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":5814
 *             raise RuntimeError('Function "cuGraphConditionalHandleCreate" not found')
 *     err = (<CUresult (*)(CUgraphConditionalHandle*, CUgraph, CUcontext, unsigned int, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphConditionalHandleCreate)(pHandle_out, hGraph, ctx, defaultLaunchValue, flags)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuOccupancyMaxActiveBlocksPerMultiprocessor(int* numBlocks, CUfunction func, int blockSize, size_t dynamicSMemSize) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":5807
 *     return err
 * 
 * cdef CUresult _cuGraphConditionalHandleCreate(CUgraphConditionalHandle* pHandle_out, CUgraph hGraph, CUcontext ctx, unsigned int defaultLaunchValue, unsigned int flags) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuGraphConditionalHandleCreate
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuGraphConditionalHandleCreate", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":5816
 *     return err
 * 
 * cdef CUresult _cuOccupancyMaxActiveBlocksPerMultiprocessor(int* numBlocks, CUfunction func, int blockSize, size_t dynamicSMemSize) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuOccupancyMaxActiveBlocksPerMultiprocessor
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuOccupancyMaxActiveBlocksPerMultiprocessor(int *__pyx_v_numBlocks, CUfunction __pyx_v_func, int __pyx_v_blockSize, size_t __pyx_v_dynamicSMemSize) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuOccupancyMaxActiveBlocksPerMultiprocessor", 1);
  __Pyx_TraceCall("_cuOccupancyMaxActiveBlocksPerMultiprocessor", __pyx_f[0], 5816, 1, __PYX_ERR(0, 5816, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":5818
 * cdef CUresult _cuOccupancyMaxActiveBlocksPerMultiprocessor(int* numBlocks, CUfunction func, int blockSize, size_t dynamicSMemSize) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuOccupancyMaxActiveBlocksPerMultiprocessor
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuOccupancyMaxActiveBlocksPerMultiprocessor == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 5818, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":5819
 *     global __cuOccupancyMaxActiveBlocksPerMultiprocessor
 *     cuPythonInit()
 *     if __cuOccupancyMaxActiveBlocksPerMultiprocessor == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuOccupancyMaxActiveBlocksPerMultiprocessor" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuOccupancyMaxActiveBlocksPerMultiprocessor == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":5820
 *     cuPythonInit()
 *     if __cuOccupancyMaxActiveBlocksPerMultiprocessor == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuOccupancyMaxActiveBlocksPerMultiprocessor" not found')
 *     err = (<CUresult (*)(int*, CUfunction, int, size_t) except ?CUDA_ERROR_NOT_FOUND nogil> __cuOccupancyMaxActiveBlocksPerMultiprocessor)(numBlocks, func, blockSize, dynamicSMemSize)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":5821
 *     if __cuOccupancyMaxActiveBlocksPerMultiprocessor == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuOccupancyMaxActiveBlocksPerMultiprocessor" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(int*, CUfunction, int, size_t) except ?CUDA_ERROR_NOT_FOUND nogil> __cuOccupancyMaxActiveBlocksPerMultiprocessor)(numBlocks, func, blockSize, dynamicSMemSize)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__356, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 5821, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 5821, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":5820
 *     cuPythonInit()
 *     if __cuOccupancyMaxActiveBlocksPerMultiprocessor == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuOccupancyMaxActiveBlocksPerMultiprocessor" not found')
 *     err = (<CUresult (*)(int*, CUfunction, int, size_t) except ?CUDA_ERROR_NOT_FOUND nogil> __cuOccupancyMaxActiveBlocksPerMultiprocessor)(numBlocks, func, blockSize, dynamicSMemSize)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":5819
 *     global __cuOccupancyMaxActiveBlocksPerMultiprocessor
 *     cuPythonInit()
 *     if __cuOccupancyMaxActiveBlocksPerMultiprocessor == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuOccupancyMaxActiveBlocksPerMultiprocessor" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":5822
 *         with gil:
 *             raise RuntimeError('Function "cuOccupancyMaxActiveBlocksPerMultiprocessor" not found')
 *     err = (<CUresult (*)(int*, CUfunction, int, size_t) except ?CUDA_ERROR_NOT_FOUND nogil> __cuOccupancyMaxActiveBlocksPerMultiprocessor)(numBlocks, func, blockSize, dynamicSMemSize)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(int *, CUfunction, int, size_t))__pyx_v_4cuda_5_cuda_5ccuda___cuOccupancyMaxActiveBlocksPerMultiprocessor)(__pyx_v_numBlocks, __pyx_v_func, __pyx_v_blockSize, __pyx_v_dynamicSMemSize); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 5822, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":5823
 *             raise RuntimeError('Function "cuOccupancyMaxActiveBlocksPerMultiprocessor" not found')
 *     err = (<CUresult (*)(int*, CUfunction, int, size_t) except ?CUDA_ERROR_NOT_FOUND nogil> __cuOccupancyMaxActiveBlocksPerMultiprocessor)(numBlocks, func, blockSize, dynamicSMemSize)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuOccupancyMaxActiveBlocksPerMultiprocessorWithFlags(int* numBlocks, CUfunction func, int blockSize, size_t dynamicSMemSize, unsigned int flags) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":5816
 *     return err
 * 
 * cdef CUresult _cuOccupancyMaxActiveBlocksPerMultiprocessor(int* numBlocks, CUfunction func, int blockSize, size_t dynamicSMemSize) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuOccupancyMaxActiveBlocksPerMultiprocessor
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuOccupancyMaxActiveBlocksPerMultiprocessor", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":5825
 *     return err
 * 
 * cdef CUresult _cuOccupancyMaxActiveBlocksPerMultiprocessorWithFlags(int* numBlocks, CUfunction func, int blockSize, size_t dynamicSMemSize, unsigned int flags) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuOccupancyMaxActiveBlocksPerMultiprocessorWithFlags
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuOccupancyMaxActiveBlocksPerMultiprocessorWithFlags(int *__pyx_v_numBlocks, CUfunction __pyx_v_func, int __pyx_v_blockSize, size_t __pyx_v_dynamicSMemSize, unsigned int __pyx_v_flags) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuOccupancyMaxActiveBlocksPerMultiprocessorWithFlags", 1);
  __Pyx_TraceCall("_cuOccupancyMaxActiveBlocksPerMultiprocessorWithFlags", __pyx_f[0], 5825, 1, __PYX_ERR(0, 5825, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":5827
 * cdef CUresult _cuOccupancyMaxActiveBlocksPerMultiprocessorWithFlags(int* numBlocks, CUfunction func, int blockSize, size_t dynamicSMemSize, unsigned int flags) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuOccupancyMaxActiveBlocksPerMultiprocessorWithFlags
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuOccupancyMaxActiveBlocksPerMultiprocessorWithFlags == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 5827, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":5828
 *     global __cuOccupancyMaxActiveBlocksPerMultiprocessorWithFlags
 *     cuPythonInit()
 *     if __cuOccupancyMaxActiveBlocksPerMultiprocessorWithFlags == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuOccupancyMaxActiveBlocksPerMultiprocessorWithFlags" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuOccupancyMaxActiveBlocksPerMultiprocessorWithFlags == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":5829
 *     cuPythonInit()
 *     if __cuOccupancyMaxActiveBlocksPerMultiprocessorWithFlags == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuOccupancyMaxActiveBlocksPerMultiprocessorWithFlags" not found')
 *     err = (<CUresult (*)(int*, CUfunction, int, size_t, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuOccupancyMaxActiveBlocksPerMultiprocessorWithFlags)(numBlocks, func, blockSize, dynamicSMemSize, flags)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":5830
 *     if __cuOccupancyMaxActiveBlocksPerMultiprocessorWithFlags == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuOccupancyMaxActiveBlocksPerMultiprocessorWithFlags" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(int*, CUfunction, int, size_t, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuOccupancyMaxActiveBlocksPerMultiprocessorWithFlags)(numBlocks, func, blockSize, dynamicSMemSize, flags)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__357, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 5830, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 5830, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":5829
 *     cuPythonInit()
 *     if __cuOccupancyMaxActiveBlocksPerMultiprocessorWithFlags == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuOccupancyMaxActiveBlocksPerMultiprocessorWithFlags" not found')
 *     err = (<CUresult (*)(int*, CUfunction, int, size_t, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuOccupancyMaxActiveBlocksPerMultiprocessorWithFlags)(numBlocks, func, blockSize, dynamicSMemSize, flags)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":5828
 *     global __cuOccupancyMaxActiveBlocksPerMultiprocessorWithFlags
 *     cuPythonInit()
 *     if __cuOccupancyMaxActiveBlocksPerMultiprocessorWithFlags == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuOccupancyMaxActiveBlocksPerMultiprocessorWithFlags" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":5831
 *         with gil:
 *             raise RuntimeError('Function "cuOccupancyMaxActiveBlocksPerMultiprocessorWithFlags" not found')
 *     err = (<CUresult (*)(int*, CUfunction, int, size_t, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuOccupancyMaxActiveBlocksPerMultiprocessorWithFlags)(numBlocks, func, blockSize, dynamicSMemSize, flags)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(int *, CUfunction, int, size_t, unsigned int))__pyx_v_4cuda_5_cuda_5ccuda___cuOccupancyMaxActiveBlocksPerMultiprocessorWithFlags)(__pyx_v_numBlocks, __pyx_v_func, __pyx_v_blockSize, __pyx_v_dynamicSMemSize, __pyx_v_flags); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 5831, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":5832
 *             raise RuntimeError('Function "cuOccupancyMaxActiveBlocksPerMultiprocessorWithFlags" not found')
 *     err = (<CUresult (*)(int*, CUfunction, int, size_t, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuOccupancyMaxActiveBlocksPerMultiprocessorWithFlags)(numBlocks, func, blockSize, dynamicSMemSize, flags)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuOccupancyMaxPotentialBlockSize(int* minGridSize, int* blockSize, CUfunction func, CUoccupancyB2DSize blockSizeToDynamicSMemSize, size_t dynamicSMemSize, int blockSizeLimit) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":5825
 *     return err
 * 
 * cdef CUresult _cuOccupancyMaxActiveBlocksPerMultiprocessorWithFlags(int* numBlocks, CUfunction func, int blockSize, size_t dynamicSMemSize, unsigned int flags) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuOccupancyMaxActiveBlocksPerMultiprocessorWithFlags
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuOccupancyMaxActiveBlocksPerMultiprocessorWithFlags", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":5834
 *     return err
 * 
 * cdef CUresult _cuOccupancyMaxPotentialBlockSize(int* minGridSize, int* blockSize, CUfunction func, CUoccupancyB2DSize blockSizeToDynamicSMemSize, size_t dynamicSMemSize, int blockSizeLimit) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuOccupancyMaxPotentialBlockSize
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuOccupancyMaxPotentialBlockSize(int *__pyx_v_minGridSize, int *__pyx_v_blockSize, CUfunction __pyx_v_func, CUoccupancyB2DSize __pyx_v_blockSizeToDynamicSMemSize, size_t __pyx_v_dynamicSMemSize, int __pyx_v_blockSizeLimit) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuOccupancyMaxPotentialBlockSize", 1);
  __Pyx_TraceCall("_cuOccupancyMaxPotentialBlockSize", __pyx_f[0], 5834, 1, __PYX_ERR(0, 5834, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":5836
 * cdef CUresult _cuOccupancyMaxPotentialBlockSize(int* minGridSize, int* blockSize, CUfunction func, CUoccupancyB2DSize blockSizeToDynamicSMemSize, size_t dynamicSMemSize, int blockSizeLimit) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuOccupancyMaxPotentialBlockSize
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuOccupancyMaxPotentialBlockSize == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 5836, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":5837
 *     global __cuOccupancyMaxPotentialBlockSize
 *     cuPythonInit()
 *     if __cuOccupancyMaxPotentialBlockSize == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuOccupancyMaxPotentialBlockSize" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuOccupancyMaxPotentialBlockSize == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":5838
 *     cuPythonInit()
 *     if __cuOccupancyMaxPotentialBlockSize == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuOccupancyMaxPotentialBlockSize" not found')
 *     err = (<CUresult (*)(int*, int*, CUfunction, CUoccupancyB2DSize, size_t, int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuOccupancyMaxPotentialBlockSize)(minGridSize, blockSize, func, blockSizeToDynamicSMemSize, dynamicSMemSize, blockSizeLimit)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":5839
 *     if __cuOccupancyMaxPotentialBlockSize == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuOccupancyMaxPotentialBlockSize" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(int*, int*, CUfunction, CUoccupancyB2DSize, size_t, int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuOccupancyMaxPotentialBlockSize)(minGridSize, blockSize, func, blockSizeToDynamicSMemSize, dynamicSMemSize, blockSizeLimit)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__358, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 5839, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 5839, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":5838
 *     cuPythonInit()
 *     if __cuOccupancyMaxPotentialBlockSize == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuOccupancyMaxPotentialBlockSize" not found')
 *     err = (<CUresult (*)(int*, int*, CUfunction, CUoccupancyB2DSize, size_t, int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuOccupancyMaxPotentialBlockSize)(minGridSize, blockSize, func, blockSizeToDynamicSMemSize, dynamicSMemSize, blockSizeLimit)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":5837
 *     global __cuOccupancyMaxPotentialBlockSize
 *     cuPythonInit()
 *     if __cuOccupancyMaxPotentialBlockSize == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuOccupancyMaxPotentialBlockSize" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":5840
 *         with gil:
 *             raise RuntimeError('Function "cuOccupancyMaxPotentialBlockSize" not found')
 *     err = (<CUresult (*)(int*, int*, CUfunction, CUoccupancyB2DSize, size_t, int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuOccupancyMaxPotentialBlockSize)(minGridSize, blockSize, func, blockSizeToDynamicSMemSize, dynamicSMemSize, blockSizeLimit)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(int *, int *, CUfunction, CUoccupancyB2DSize, size_t, int))__pyx_v_4cuda_5_cuda_5ccuda___cuOccupancyMaxPotentialBlockSize)(__pyx_v_minGridSize, __pyx_v_blockSize, __pyx_v_func, __pyx_v_blockSizeToDynamicSMemSize, __pyx_v_dynamicSMemSize, __pyx_v_blockSizeLimit); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 5840, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":5841
 *             raise RuntimeError('Function "cuOccupancyMaxPotentialBlockSize" not found')
 *     err = (<CUresult (*)(int*, int*, CUfunction, CUoccupancyB2DSize, size_t, int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuOccupancyMaxPotentialBlockSize)(minGridSize, blockSize, func, blockSizeToDynamicSMemSize, dynamicSMemSize, blockSizeLimit)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuOccupancyMaxPotentialBlockSizeWithFlags(int* minGridSize, int* blockSize, CUfunction func, CUoccupancyB2DSize blockSizeToDynamicSMemSize, size_t dynamicSMemSize, int blockSizeLimit, unsigned int flags) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":5834
 *     return err
 * 
 * cdef CUresult _cuOccupancyMaxPotentialBlockSize(int* minGridSize, int* blockSize, CUfunction func, CUoccupancyB2DSize blockSizeToDynamicSMemSize, size_t dynamicSMemSize, int blockSizeLimit) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuOccupancyMaxPotentialBlockSize
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuOccupancyMaxPotentialBlockSize", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":5843
 *     return err
 * 
 * cdef CUresult _cuOccupancyMaxPotentialBlockSizeWithFlags(int* minGridSize, int* blockSize, CUfunction func, CUoccupancyB2DSize blockSizeToDynamicSMemSize, size_t dynamicSMemSize, int blockSizeLimit, unsigned int flags) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuOccupancyMaxPotentialBlockSizeWithFlags
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuOccupancyMaxPotentialBlockSizeWithFlags(int *__pyx_v_minGridSize, int *__pyx_v_blockSize, CUfunction __pyx_v_func, CUoccupancyB2DSize __pyx_v_blockSizeToDynamicSMemSize, size_t __pyx_v_dynamicSMemSize, int __pyx_v_blockSizeLimit, unsigned int __pyx_v_flags) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuOccupancyMaxPotentialBlockSizeWithFlags", 1);
  __Pyx_TraceCall("_cuOccupancyMaxPotentialBlockSizeWithFlags", __pyx_f[0], 5843, 1, __PYX_ERR(0, 5843, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":5845
 * cdef CUresult _cuOccupancyMaxPotentialBlockSizeWithFlags(int* minGridSize, int* blockSize, CUfunction func, CUoccupancyB2DSize blockSizeToDynamicSMemSize, size_t dynamicSMemSize, int blockSizeLimit, unsigned int flags) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuOccupancyMaxPotentialBlockSizeWithFlags
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuOccupancyMaxPotentialBlockSizeWithFlags == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 5845, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":5846
 *     global __cuOccupancyMaxPotentialBlockSizeWithFlags
 *     cuPythonInit()
 *     if __cuOccupancyMaxPotentialBlockSizeWithFlags == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuOccupancyMaxPotentialBlockSizeWithFlags" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuOccupancyMaxPotentialBlockSizeWithFlags == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":5847
 *     cuPythonInit()
 *     if __cuOccupancyMaxPotentialBlockSizeWithFlags == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuOccupancyMaxPotentialBlockSizeWithFlags" not found')
 *     err = (<CUresult (*)(int*, int*, CUfunction, CUoccupancyB2DSize, size_t, int, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuOccupancyMaxPotentialBlockSizeWithFlags)(minGridSize, blockSize, func, blockSizeToDynamicSMemSize, dynamicSMemSize, blockSizeLimit, flags)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":5848
 *     if __cuOccupancyMaxPotentialBlockSizeWithFlags == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuOccupancyMaxPotentialBlockSizeWithFlags" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(int*, int*, CUfunction, CUoccupancyB2DSize, size_t, int, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuOccupancyMaxPotentialBlockSizeWithFlags)(minGridSize, blockSize, func, blockSizeToDynamicSMemSize, dynamicSMemSize, blockSizeLimit, flags)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__359, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 5848, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 5848, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":5847
 *     cuPythonInit()
 *     if __cuOccupancyMaxPotentialBlockSizeWithFlags == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuOccupancyMaxPotentialBlockSizeWithFlags" not found')
 *     err = (<CUresult (*)(int*, int*, CUfunction, CUoccupancyB2DSize, size_t, int, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuOccupancyMaxPotentialBlockSizeWithFlags)(minGridSize, blockSize, func, blockSizeToDynamicSMemSize, dynamicSMemSize, blockSizeLimit, flags)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":5846
 *     global __cuOccupancyMaxPotentialBlockSizeWithFlags
 *     cuPythonInit()
 *     if __cuOccupancyMaxPotentialBlockSizeWithFlags == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuOccupancyMaxPotentialBlockSizeWithFlags" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":5849
 *         with gil:
 *             raise RuntimeError('Function "cuOccupancyMaxPotentialBlockSizeWithFlags" not found')
 *     err = (<CUresult (*)(int*, int*, CUfunction, CUoccupancyB2DSize, size_t, int, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuOccupancyMaxPotentialBlockSizeWithFlags)(minGridSize, blockSize, func, blockSizeToDynamicSMemSize, dynamicSMemSize, blockSizeLimit, flags)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(int *, int *, CUfunction, CUoccupancyB2DSize, size_t, int, unsigned int))__pyx_v_4cuda_5_cuda_5ccuda___cuOccupancyMaxPotentialBlockSizeWithFlags)(__pyx_v_minGridSize, __pyx_v_blockSize, __pyx_v_func, __pyx_v_blockSizeToDynamicSMemSize, __pyx_v_dynamicSMemSize, __pyx_v_blockSizeLimit, __pyx_v_flags); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 5849, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":5850
 *             raise RuntimeError('Function "cuOccupancyMaxPotentialBlockSizeWithFlags" not found')
 *     err = (<CUresult (*)(int*, int*, CUfunction, CUoccupancyB2DSize, size_t, int, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuOccupancyMaxPotentialBlockSizeWithFlags)(minGridSize, blockSize, func, blockSizeToDynamicSMemSize, dynamicSMemSize, blockSizeLimit, flags)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuOccupancyAvailableDynamicSMemPerBlock(size_t* dynamicSmemSize, CUfunction func, int numBlocks, int blockSize) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":5843
 *     return err
 * 
 * cdef CUresult _cuOccupancyMaxPotentialBlockSizeWithFlags(int* minGridSize, int* blockSize, CUfunction func, CUoccupancyB2DSize blockSizeToDynamicSMemSize, size_t dynamicSMemSize, int blockSizeLimit, unsigned int flags) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuOccupancyMaxPotentialBlockSizeWithFlags
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuOccupancyMaxPotentialBlockSizeWithFlags", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":5852
 *     return err
 * 
 * cdef CUresult _cuOccupancyAvailableDynamicSMemPerBlock(size_t* dynamicSmemSize, CUfunction func, int numBlocks, int blockSize) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuOccupancyAvailableDynamicSMemPerBlock
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuOccupancyAvailableDynamicSMemPerBlock(size_t *__pyx_v_dynamicSmemSize, CUfunction __pyx_v_func, int __pyx_v_numBlocks, int __pyx_v_blockSize) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuOccupancyAvailableDynamicSMemPerBlock", 1);
  __Pyx_TraceCall("_cuOccupancyAvailableDynamicSMemPerBlock", __pyx_f[0], 5852, 1, __PYX_ERR(0, 5852, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":5854
 * cdef CUresult _cuOccupancyAvailableDynamicSMemPerBlock(size_t* dynamicSmemSize, CUfunction func, int numBlocks, int blockSize) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuOccupancyAvailableDynamicSMemPerBlock
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuOccupancyAvailableDynamicSMemPerBlock == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 5854, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":5855
 *     global __cuOccupancyAvailableDynamicSMemPerBlock
 *     cuPythonInit()
 *     if __cuOccupancyAvailableDynamicSMemPerBlock == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuOccupancyAvailableDynamicSMemPerBlock" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuOccupancyAvailableDynamicSMemPerBlock == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":5856
 *     cuPythonInit()
 *     if __cuOccupancyAvailableDynamicSMemPerBlock == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuOccupancyAvailableDynamicSMemPerBlock" not found')
 *     err = (<CUresult (*)(size_t*, CUfunction, int, int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuOccupancyAvailableDynamicSMemPerBlock)(dynamicSmemSize, func, numBlocks, blockSize)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":5857
 *     if __cuOccupancyAvailableDynamicSMemPerBlock == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuOccupancyAvailableDynamicSMemPerBlock" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(size_t*, CUfunction, int, int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuOccupancyAvailableDynamicSMemPerBlock)(dynamicSmemSize, func, numBlocks, blockSize)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__360, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 5857, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 5857, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":5856
 *     cuPythonInit()
 *     if __cuOccupancyAvailableDynamicSMemPerBlock == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuOccupancyAvailableDynamicSMemPerBlock" not found')
 *     err = (<CUresult (*)(size_t*, CUfunction, int, int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuOccupancyAvailableDynamicSMemPerBlock)(dynamicSmemSize, func, numBlocks, blockSize)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":5855
 *     global __cuOccupancyAvailableDynamicSMemPerBlock
 *     cuPythonInit()
 *     if __cuOccupancyAvailableDynamicSMemPerBlock == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuOccupancyAvailableDynamicSMemPerBlock" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":5858
 *         with gil:
 *             raise RuntimeError('Function "cuOccupancyAvailableDynamicSMemPerBlock" not found')
 *     err = (<CUresult (*)(size_t*, CUfunction, int, int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuOccupancyAvailableDynamicSMemPerBlock)(dynamicSmemSize, func, numBlocks, blockSize)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(size_t *, CUfunction, int, int))__pyx_v_4cuda_5_cuda_5ccuda___cuOccupancyAvailableDynamicSMemPerBlock)(__pyx_v_dynamicSmemSize, __pyx_v_func, __pyx_v_numBlocks, __pyx_v_blockSize); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 5858, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":5859
 *             raise RuntimeError('Function "cuOccupancyAvailableDynamicSMemPerBlock" not found')
 *     err = (<CUresult (*)(size_t*, CUfunction, int, int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuOccupancyAvailableDynamicSMemPerBlock)(dynamicSmemSize, func, numBlocks, blockSize)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuOccupancyMaxPotentialClusterSize(int* clusterSize, CUfunction func, const CUlaunchConfig* config) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":5852
 *     return err
 * 
 * cdef CUresult _cuOccupancyAvailableDynamicSMemPerBlock(size_t* dynamicSmemSize, CUfunction func, int numBlocks, int blockSize) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuOccupancyAvailableDynamicSMemPerBlock
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuOccupancyAvailableDynamicSMemPerBlock", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":5861
 *     return err
 * 
 * cdef CUresult _cuOccupancyMaxPotentialClusterSize(int* clusterSize, CUfunction func, const CUlaunchConfig* config) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuOccupancyMaxPotentialClusterSize
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuOccupancyMaxPotentialClusterSize(int *__pyx_v_clusterSize, CUfunction __pyx_v_func, CUlaunchConfig const *__pyx_v_config) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuOccupancyMaxPotentialClusterSize", 1);
  __Pyx_TraceCall("_cuOccupancyMaxPotentialClusterSize", __pyx_f[0], 5861, 1, __PYX_ERR(0, 5861, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":5863
 * cdef CUresult _cuOccupancyMaxPotentialClusterSize(int* clusterSize, CUfunction func, const CUlaunchConfig* config) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuOccupancyMaxPotentialClusterSize
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuOccupancyMaxPotentialClusterSize == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 5863, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":5864
 *     global __cuOccupancyMaxPotentialClusterSize
 *     cuPythonInit()
 *     if __cuOccupancyMaxPotentialClusterSize == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuOccupancyMaxPotentialClusterSize" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuOccupancyMaxPotentialClusterSize == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":5865
 *     cuPythonInit()
 *     if __cuOccupancyMaxPotentialClusterSize == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuOccupancyMaxPotentialClusterSize" not found')
 *     err = (<CUresult (*)(int*, CUfunction, const CUlaunchConfig*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuOccupancyMaxPotentialClusterSize)(clusterSize, func, config)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":5866
 *     if __cuOccupancyMaxPotentialClusterSize == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuOccupancyMaxPotentialClusterSize" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(int*, CUfunction, const CUlaunchConfig*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuOccupancyMaxPotentialClusterSize)(clusterSize, func, config)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__361, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 5866, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 5866, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":5865
 *     cuPythonInit()
 *     if __cuOccupancyMaxPotentialClusterSize == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuOccupancyMaxPotentialClusterSize" not found')
 *     err = (<CUresult (*)(int*, CUfunction, const CUlaunchConfig*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuOccupancyMaxPotentialClusterSize)(clusterSize, func, config)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":5864
 *     global __cuOccupancyMaxPotentialClusterSize
 *     cuPythonInit()
 *     if __cuOccupancyMaxPotentialClusterSize == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuOccupancyMaxPotentialClusterSize" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":5867
 *         with gil:
 *             raise RuntimeError('Function "cuOccupancyMaxPotentialClusterSize" not found')
 *     err = (<CUresult (*)(int*, CUfunction, const CUlaunchConfig*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuOccupancyMaxPotentialClusterSize)(clusterSize, func, config)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(int *, CUfunction, CUlaunchConfig const *))__pyx_v_4cuda_5_cuda_5ccuda___cuOccupancyMaxPotentialClusterSize)(__pyx_v_clusterSize, __pyx_v_func, __pyx_v_config); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 5867, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":5868
 *             raise RuntimeError('Function "cuOccupancyMaxPotentialClusterSize" not found')
 *     err = (<CUresult (*)(int*, CUfunction, const CUlaunchConfig*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuOccupancyMaxPotentialClusterSize)(clusterSize, func, config)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuOccupancyMaxActiveClusters(int* numClusters, CUfunction func, const CUlaunchConfig* config) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":5861
 *     return err
 * 
 * cdef CUresult _cuOccupancyMaxPotentialClusterSize(int* clusterSize, CUfunction func, const CUlaunchConfig* config) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuOccupancyMaxPotentialClusterSize
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuOccupancyMaxPotentialClusterSize", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":5870
 *     return err
 * 
 * cdef CUresult _cuOccupancyMaxActiveClusters(int* numClusters, CUfunction func, const CUlaunchConfig* config) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuOccupancyMaxActiveClusters
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuOccupancyMaxActiveClusters(int *__pyx_v_numClusters, CUfunction __pyx_v_func, CUlaunchConfig const *__pyx_v_config) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuOccupancyMaxActiveClusters", 1);
  __Pyx_TraceCall("_cuOccupancyMaxActiveClusters", __pyx_f[0], 5870, 1, __PYX_ERR(0, 5870, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":5872
 * cdef CUresult _cuOccupancyMaxActiveClusters(int* numClusters, CUfunction func, const CUlaunchConfig* config) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuOccupancyMaxActiveClusters
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuOccupancyMaxActiveClusters == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 5872, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":5873
 *     global __cuOccupancyMaxActiveClusters
 *     cuPythonInit()
 *     if __cuOccupancyMaxActiveClusters == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuOccupancyMaxActiveClusters" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuOccupancyMaxActiveClusters == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":5874
 *     cuPythonInit()
 *     if __cuOccupancyMaxActiveClusters == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuOccupancyMaxActiveClusters" not found')
 *     err = (<CUresult (*)(int*, CUfunction, const CUlaunchConfig*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuOccupancyMaxActiveClusters)(numClusters, func, config)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":5875
 *     if __cuOccupancyMaxActiveClusters == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuOccupancyMaxActiveClusters" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(int*, CUfunction, const CUlaunchConfig*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuOccupancyMaxActiveClusters)(numClusters, func, config)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__362, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 5875, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 5875, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":5874
 *     cuPythonInit()
 *     if __cuOccupancyMaxActiveClusters == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuOccupancyMaxActiveClusters" not found')
 *     err = (<CUresult (*)(int*, CUfunction, const CUlaunchConfig*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuOccupancyMaxActiveClusters)(numClusters, func, config)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":5873
 *     global __cuOccupancyMaxActiveClusters
 *     cuPythonInit()
 *     if __cuOccupancyMaxActiveClusters == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuOccupancyMaxActiveClusters" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":5876
 *         with gil:
 *             raise RuntimeError('Function "cuOccupancyMaxActiveClusters" not found')
 *     err = (<CUresult (*)(int*, CUfunction, const CUlaunchConfig*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuOccupancyMaxActiveClusters)(numClusters, func, config)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(int *, CUfunction, CUlaunchConfig const *))__pyx_v_4cuda_5_cuda_5ccuda___cuOccupancyMaxActiveClusters)(__pyx_v_numClusters, __pyx_v_func, __pyx_v_config); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 5876, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":5877
 *             raise RuntimeError('Function "cuOccupancyMaxActiveClusters" not found')
 *     err = (<CUresult (*)(int*, CUfunction, const CUlaunchConfig*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuOccupancyMaxActiveClusters)(numClusters, func, config)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuTexRefSetArray(CUtexref hTexRef, CUarray hArray, unsigned int Flags) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":5870
 *     return err
 * 
 * cdef CUresult _cuOccupancyMaxActiveClusters(int* numClusters, CUfunction func, const CUlaunchConfig* config) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuOccupancyMaxActiveClusters
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuOccupancyMaxActiveClusters", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":5879
 *     return err
 * 
 * cdef CUresult _cuTexRefSetArray(CUtexref hTexRef, CUarray hArray, unsigned int Flags) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuTexRefSetArray
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuTexRefSetArray(CUtexref __pyx_v_hTexRef, CUarray __pyx_v_hArray, unsigned int __pyx_v_Flags) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuTexRefSetArray", 1);
  __Pyx_TraceCall("_cuTexRefSetArray", __pyx_f[0], 5879, 1, __PYX_ERR(0, 5879, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":5881
 * cdef CUresult _cuTexRefSetArray(CUtexref hTexRef, CUarray hArray, unsigned int Flags) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuTexRefSetArray
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuTexRefSetArray == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 5881, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":5882
 *     global __cuTexRefSetArray
 *     cuPythonInit()
 *     if __cuTexRefSetArray == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuTexRefSetArray" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuTexRefSetArray == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":5883
 *     cuPythonInit()
 *     if __cuTexRefSetArray == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuTexRefSetArray" not found')
 *     err = (<CUresult (*)(CUtexref, CUarray, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuTexRefSetArray)(hTexRef, hArray, Flags)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":5884
 *     if __cuTexRefSetArray == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuTexRefSetArray" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUtexref, CUarray, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuTexRefSetArray)(hTexRef, hArray, Flags)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__363, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 5884, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 5884, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":5883
 *     cuPythonInit()
 *     if __cuTexRefSetArray == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuTexRefSetArray" not found')
 *     err = (<CUresult (*)(CUtexref, CUarray, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuTexRefSetArray)(hTexRef, hArray, Flags)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":5882
 *     global __cuTexRefSetArray
 *     cuPythonInit()
 *     if __cuTexRefSetArray == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuTexRefSetArray" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":5885
 *         with gil:
 *             raise RuntimeError('Function "cuTexRefSetArray" not found')
 *     err = (<CUresult (*)(CUtexref, CUarray, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuTexRefSetArray)(hTexRef, hArray, Flags)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUtexref, CUarray, unsigned int))__pyx_v_4cuda_5_cuda_5ccuda___cuTexRefSetArray)(__pyx_v_hTexRef, __pyx_v_hArray, __pyx_v_Flags); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 5885, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":5886
 *             raise RuntimeError('Function "cuTexRefSetArray" not found')
 *     err = (<CUresult (*)(CUtexref, CUarray, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuTexRefSetArray)(hTexRef, hArray, Flags)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuTexRefSetMipmappedArray(CUtexref hTexRef, CUmipmappedArray hMipmappedArray, unsigned int Flags) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":5879
 *     return err
 * 
 * cdef CUresult _cuTexRefSetArray(CUtexref hTexRef, CUarray hArray, unsigned int Flags) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuTexRefSetArray
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuTexRefSetArray", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":5888
 *     return err
 * 
 * cdef CUresult _cuTexRefSetMipmappedArray(CUtexref hTexRef, CUmipmappedArray hMipmappedArray, unsigned int Flags) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuTexRefSetMipmappedArray
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuTexRefSetMipmappedArray(CUtexref __pyx_v_hTexRef, CUmipmappedArray __pyx_v_hMipmappedArray, unsigned int __pyx_v_Flags) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuTexRefSetMipmappedArray", 1);
  __Pyx_TraceCall("_cuTexRefSetMipmappedArray", __pyx_f[0], 5888, 1, __PYX_ERR(0, 5888, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":5890
 * cdef CUresult _cuTexRefSetMipmappedArray(CUtexref hTexRef, CUmipmappedArray hMipmappedArray, unsigned int Flags) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuTexRefSetMipmappedArray
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuTexRefSetMipmappedArray == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 5890, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":5891
 *     global __cuTexRefSetMipmappedArray
 *     cuPythonInit()
 *     if __cuTexRefSetMipmappedArray == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuTexRefSetMipmappedArray" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuTexRefSetMipmappedArray == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":5892
 *     cuPythonInit()
 *     if __cuTexRefSetMipmappedArray == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuTexRefSetMipmappedArray" not found')
 *     err = (<CUresult (*)(CUtexref, CUmipmappedArray, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuTexRefSetMipmappedArray)(hTexRef, hMipmappedArray, Flags)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":5893
 *     if __cuTexRefSetMipmappedArray == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuTexRefSetMipmappedArray" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUtexref, CUmipmappedArray, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuTexRefSetMipmappedArray)(hTexRef, hMipmappedArray, Flags)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__364, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 5893, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 5893, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":5892
 *     cuPythonInit()
 *     if __cuTexRefSetMipmappedArray == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuTexRefSetMipmappedArray" not found')
 *     err = (<CUresult (*)(CUtexref, CUmipmappedArray, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuTexRefSetMipmappedArray)(hTexRef, hMipmappedArray, Flags)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":5891
 *     global __cuTexRefSetMipmappedArray
 *     cuPythonInit()
 *     if __cuTexRefSetMipmappedArray == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuTexRefSetMipmappedArray" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":5894
 *         with gil:
 *             raise RuntimeError('Function "cuTexRefSetMipmappedArray" not found')
 *     err = (<CUresult (*)(CUtexref, CUmipmappedArray, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuTexRefSetMipmappedArray)(hTexRef, hMipmappedArray, Flags)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUtexref, CUmipmappedArray, unsigned int))__pyx_v_4cuda_5_cuda_5ccuda___cuTexRefSetMipmappedArray)(__pyx_v_hTexRef, __pyx_v_hMipmappedArray, __pyx_v_Flags); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 5894, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":5895
 *             raise RuntimeError('Function "cuTexRefSetMipmappedArray" not found')
 *     err = (<CUresult (*)(CUtexref, CUmipmappedArray, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuTexRefSetMipmappedArray)(hTexRef, hMipmappedArray, Flags)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuTexRefSetAddress_v2(size_t* ByteOffset, CUtexref hTexRef, CUdeviceptr dptr, size_t numbytes) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":5888
 *     return err
 * 
 * cdef CUresult _cuTexRefSetMipmappedArray(CUtexref hTexRef, CUmipmappedArray hMipmappedArray, unsigned int Flags) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuTexRefSetMipmappedArray
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuTexRefSetMipmappedArray", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":5897
 *     return err
 * 
 * cdef CUresult _cuTexRefSetAddress_v2(size_t* ByteOffset, CUtexref hTexRef, CUdeviceptr dptr, size_t numbytes) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuTexRefSetAddress_v2
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuTexRefSetAddress_v2(size_t *__pyx_v_ByteOffset, CUtexref __pyx_v_hTexRef, CUdeviceptr __pyx_v_dptr, size_t __pyx_v_numbytes) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuTexRefSetAddress_v2", 1);
  __Pyx_TraceCall("_cuTexRefSetAddress_v2", __pyx_f[0], 5897, 1, __PYX_ERR(0, 5897, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":5899
 * cdef CUresult _cuTexRefSetAddress_v2(size_t* ByteOffset, CUtexref hTexRef, CUdeviceptr dptr, size_t numbytes) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuTexRefSetAddress_v2
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuTexRefSetAddress_v2 == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 5899, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":5900
 *     global __cuTexRefSetAddress_v2
 *     cuPythonInit()
 *     if __cuTexRefSetAddress_v2 == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuTexRefSetAddress_v2" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuTexRefSetAddress_v2 == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":5901
 *     cuPythonInit()
 *     if __cuTexRefSetAddress_v2 == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuTexRefSetAddress_v2" not found')
 *     err = (<CUresult (*)(size_t*, CUtexref, CUdeviceptr, size_t) except ?CUDA_ERROR_NOT_FOUND nogil> __cuTexRefSetAddress_v2)(ByteOffset, hTexRef, dptr, numbytes)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":5902
 *     if __cuTexRefSetAddress_v2 == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuTexRefSetAddress_v2" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(size_t*, CUtexref, CUdeviceptr, size_t) except ?CUDA_ERROR_NOT_FOUND nogil> __cuTexRefSetAddress_v2)(ByteOffset, hTexRef, dptr, numbytes)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__365, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 5902, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 5902, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":5901
 *     cuPythonInit()
 *     if __cuTexRefSetAddress_v2 == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuTexRefSetAddress_v2" not found')
 *     err = (<CUresult (*)(size_t*, CUtexref, CUdeviceptr, size_t) except ?CUDA_ERROR_NOT_FOUND nogil> __cuTexRefSetAddress_v2)(ByteOffset, hTexRef, dptr, numbytes)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":5900
 *     global __cuTexRefSetAddress_v2
 *     cuPythonInit()
 *     if __cuTexRefSetAddress_v2 == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuTexRefSetAddress_v2" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":5903
 *         with gil:
 *             raise RuntimeError('Function "cuTexRefSetAddress_v2" not found')
 *     err = (<CUresult (*)(size_t*, CUtexref, CUdeviceptr, size_t) except ?CUDA_ERROR_NOT_FOUND nogil> __cuTexRefSetAddress_v2)(ByteOffset, hTexRef, dptr, numbytes)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(size_t *, CUtexref, CUdeviceptr, size_t))__pyx_v_4cuda_5_cuda_5ccuda___cuTexRefSetAddress_v2)(__pyx_v_ByteOffset, __pyx_v_hTexRef, __pyx_v_dptr, __pyx_v_numbytes); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 5903, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":5904
 *             raise RuntimeError('Function "cuTexRefSetAddress_v2" not found')
 *     err = (<CUresult (*)(size_t*, CUtexref, CUdeviceptr, size_t) except ?CUDA_ERROR_NOT_FOUND nogil> __cuTexRefSetAddress_v2)(ByteOffset, hTexRef, dptr, numbytes)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuTexRefSetAddress2D_v3(CUtexref hTexRef, const CUDA_ARRAY_DESCRIPTOR* desc, CUdeviceptr dptr, size_t Pitch) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":5897
 *     return err
 * 
 * cdef CUresult _cuTexRefSetAddress_v2(size_t* ByteOffset, CUtexref hTexRef, CUdeviceptr dptr, size_t numbytes) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuTexRefSetAddress_v2
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuTexRefSetAddress_v2", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":5906
 *     return err
 * 
 * cdef CUresult _cuTexRefSetAddress2D_v3(CUtexref hTexRef, const CUDA_ARRAY_DESCRIPTOR* desc, CUdeviceptr dptr, size_t Pitch) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuTexRefSetAddress2D_v3
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuTexRefSetAddress2D_v3(CUtexref __pyx_v_hTexRef, CUDA_ARRAY_DESCRIPTOR const *__pyx_v_desc, CUdeviceptr __pyx_v_dptr, size_t __pyx_v_Pitch) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuTexRefSetAddress2D_v3", 1);
  __Pyx_TraceCall("_cuTexRefSetAddress2D_v3", __pyx_f[0], 5906, 1, __PYX_ERR(0, 5906, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":5908
 * cdef CUresult _cuTexRefSetAddress2D_v3(CUtexref hTexRef, const CUDA_ARRAY_DESCRIPTOR* desc, CUdeviceptr dptr, size_t Pitch) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuTexRefSetAddress2D_v3
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuTexRefSetAddress2D_v3 == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 5908, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":5909
 *     global __cuTexRefSetAddress2D_v3
 *     cuPythonInit()
 *     if __cuTexRefSetAddress2D_v3 == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuTexRefSetAddress2D_v3" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuTexRefSetAddress2D_v3 == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":5910
 *     cuPythonInit()
 *     if __cuTexRefSetAddress2D_v3 == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuTexRefSetAddress2D_v3" not found')
 *     err = (<CUresult (*)(CUtexref, const CUDA_ARRAY_DESCRIPTOR*, CUdeviceptr, size_t) except ?CUDA_ERROR_NOT_FOUND nogil> __cuTexRefSetAddress2D_v3)(hTexRef, desc, dptr, Pitch)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":5911
 *     if __cuTexRefSetAddress2D_v3 == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuTexRefSetAddress2D_v3" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUtexref, const CUDA_ARRAY_DESCRIPTOR*, CUdeviceptr, size_t) except ?CUDA_ERROR_NOT_FOUND nogil> __cuTexRefSetAddress2D_v3)(hTexRef, desc, dptr, Pitch)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__366, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 5911, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 5911, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":5910
 *     cuPythonInit()
 *     if __cuTexRefSetAddress2D_v3 == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuTexRefSetAddress2D_v3" not found')
 *     err = (<CUresult (*)(CUtexref, const CUDA_ARRAY_DESCRIPTOR*, CUdeviceptr, size_t) except ?CUDA_ERROR_NOT_FOUND nogil> __cuTexRefSetAddress2D_v3)(hTexRef, desc, dptr, Pitch)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":5909
 *     global __cuTexRefSetAddress2D_v3
 *     cuPythonInit()
 *     if __cuTexRefSetAddress2D_v3 == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuTexRefSetAddress2D_v3" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":5912
 *         with gil:
 *             raise RuntimeError('Function "cuTexRefSetAddress2D_v3" not found')
 *     err = (<CUresult (*)(CUtexref, const CUDA_ARRAY_DESCRIPTOR*, CUdeviceptr, size_t) except ?CUDA_ERROR_NOT_FOUND nogil> __cuTexRefSetAddress2D_v3)(hTexRef, desc, dptr, Pitch)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUtexref, CUDA_ARRAY_DESCRIPTOR const *, CUdeviceptr, size_t))__pyx_v_4cuda_5_cuda_5ccuda___cuTexRefSetAddress2D_v3)(__pyx_v_hTexRef, __pyx_v_desc, __pyx_v_dptr, __pyx_v_Pitch); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 5912, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":5913
 *             raise RuntimeError('Function "cuTexRefSetAddress2D_v3" not found')
 *     err = (<CUresult (*)(CUtexref, const CUDA_ARRAY_DESCRIPTOR*, CUdeviceptr, size_t) except ?CUDA_ERROR_NOT_FOUND nogil> __cuTexRefSetAddress2D_v3)(hTexRef, desc, dptr, Pitch)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuTexRefSetFormat(CUtexref hTexRef, CUarray_format fmt, int NumPackedComponents) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":5906
 *     return err
 * 
 * cdef CUresult _cuTexRefSetAddress2D_v3(CUtexref hTexRef, const CUDA_ARRAY_DESCRIPTOR* desc, CUdeviceptr dptr, size_t Pitch) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuTexRefSetAddress2D_v3
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuTexRefSetAddress2D_v3", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":5915
 *     return err
 * 
 * cdef CUresult _cuTexRefSetFormat(CUtexref hTexRef, CUarray_format fmt, int NumPackedComponents) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuTexRefSetFormat
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuTexRefSetFormat(CUtexref __pyx_v_hTexRef, CUarray_format __pyx_v_fmt, int __pyx_v_NumPackedComponents) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuTexRefSetFormat", 1);
  __Pyx_TraceCall("_cuTexRefSetFormat", __pyx_f[0], 5915, 1, __PYX_ERR(0, 5915, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":5917
 * cdef CUresult _cuTexRefSetFormat(CUtexref hTexRef, CUarray_format fmt, int NumPackedComponents) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuTexRefSetFormat
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuTexRefSetFormat == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 5917, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":5918
 *     global __cuTexRefSetFormat
 *     cuPythonInit()
 *     if __cuTexRefSetFormat == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuTexRefSetFormat" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuTexRefSetFormat == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":5919
 *     cuPythonInit()
 *     if __cuTexRefSetFormat == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuTexRefSetFormat" not found')
 *     err = (<CUresult (*)(CUtexref, CUarray_format, int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuTexRefSetFormat)(hTexRef, fmt, NumPackedComponents)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":5920
 *     if __cuTexRefSetFormat == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuTexRefSetFormat" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUtexref, CUarray_format, int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuTexRefSetFormat)(hTexRef, fmt, NumPackedComponents)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__367, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 5920, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 5920, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":5919
 *     cuPythonInit()
 *     if __cuTexRefSetFormat == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuTexRefSetFormat" not found')
 *     err = (<CUresult (*)(CUtexref, CUarray_format, int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuTexRefSetFormat)(hTexRef, fmt, NumPackedComponents)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":5918
 *     global __cuTexRefSetFormat
 *     cuPythonInit()
 *     if __cuTexRefSetFormat == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuTexRefSetFormat" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":5921
 *         with gil:
 *             raise RuntimeError('Function "cuTexRefSetFormat" not found')
 *     err = (<CUresult (*)(CUtexref, CUarray_format, int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuTexRefSetFormat)(hTexRef, fmt, NumPackedComponents)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUtexref, CUarray_format, int))__pyx_v_4cuda_5_cuda_5ccuda___cuTexRefSetFormat)(__pyx_v_hTexRef, __pyx_v_fmt, __pyx_v_NumPackedComponents); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 5921, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":5922
 *             raise RuntimeError('Function "cuTexRefSetFormat" not found')
 *     err = (<CUresult (*)(CUtexref, CUarray_format, int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuTexRefSetFormat)(hTexRef, fmt, NumPackedComponents)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuTexRefSetAddressMode(CUtexref hTexRef, int dim, CUaddress_mode am) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":5915
 *     return err
 * 
 * cdef CUresult _cuTexRefSetFormat(CUtexref hTexRef, CUarray_format fmt, int NumPackedComponents) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuTexRefSetFormat
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuTexRefSetFormat", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":5924
 *     return err
 * 
 * cdef CUresult _cuTexRefSetAddressMode(CUtexref hTexRef, int dim, CUaddress_mode am) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuTexRefSetAddressMode
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuTexRefSetAddressMode(CUtexref __pyx_v_hTexRef, int __pyx_v_dim, CUaddress_mode __pyx_v_am) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuTexRefSetAddressMode", 1);
  __Pyx_TraceCall("_cuTexRefSetAddressMode", __pyx_f[0], 5924, 1, __PYX_ERR(0, 5924, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":5926
 * cdef CUresult _cuTexRefSetAddressMode(CUtexref hTexRef, int dim, CUaddress_mode am) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuTexRefSetAddressMode
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuTexRefSetAddressMode == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 5926, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":5927
 *     global __cuTexRefSetAddressMode
 *     cuPythonInit()
 *     if __cuTexRefSetAddressMode == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuTexRefSetAddressMode" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuTexRefSetAddressMode == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":5928
 *     cuPythonInit()
 *     if __cuTexRefSetAddressMode == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuTexRefSetAddressMode" not found')
 *     err = (<CUresult (*)(CUtexref, int, CUaddress_mode) except ?CUDA_ERROR_NOT_FOUND nogil> __cuTexRefSetAddressMode)(hTexRef, dim, am)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":5929
 *     if __cuTexRefSetAddressMode == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuTexRefSetAddressMode" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUtexref, int, CUaddress_mode) except ?CUDA_ERROR_NOT_FOUND nogil> __cuTexRefSetAddressMode)(hTexRef, dim, am)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__368, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 5929, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 5929, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":5928
 *     cuPythonInit()
 *     if __cuTexRefSetAddressMode == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuTexRefSetAddressMode" not found')
 *     err = (<CUresult (*)(CUtexref, int, CUaddress_mode) except ?CUDA_ERROR_NOT_FOUND nogil> __cuTexRefSetAddressMode)(hTexRef, dim, am)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":5927
 *     global __cuTexRefSetAddressMode
 *     cuPythonInit()
 *     if __cuTexRefSetAddressMode == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuTexRefSetAddressMode" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":5930
 *         with gil:
 *             raise RuntimeError('Function "cuTexRefSetAddressMode" not found')
 *     err = (<CUresult (*)(CUtexref, int, CUaddress_mode) except ?CUDA_ERROR_NOT_FOUND nogil> __cuTexRefSetAddressMode)(hTexRef, dim, am)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUtexref, int, CUaddress_mode))__pyx_v_4cuda_5_cuda_5ccuda___cuTexRefSetAddressMode)(__pyx_v_hTexRef, __pyx_v_dim, __pyx_v_am); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 5930, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":5931
 *             raise RuntimeError('Function "cuTexRefSetAddressMode" not found')
 *     err = (<CUresult (*)(CUtexref, int, CUaddress_mode) except ?CUDA_ERROR_NOT_FOUND nogil> __cuTexRefSetAddressMode)(hTexRef, dim, am)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuTexRefSetFilterMode(CUtexref hTexRef, CUfilter_mode fm) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":5924
 *     return err
 * 
 * cdef CUresult _cuTexRefSetAddressMode(CUtexref hTexRef, int dim, CUaddress_mode am) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuTexRefSetAddressMode
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuTexRefSetAddressMode", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":5933
 *     return err
 * 
 * cdef CUresult _cuTexRefSetFilterMode(CUtexref hTexRef, CUfilter_mode fm) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuTexRefSetFilterMode
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuTexRefSetFilterMode(CUtexref __pyx_v_hTexRef, CUfilter_mode __pyx_v_fm) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuTexRefSetFilterMode", 1);
  __Pyx_TraceCall("_cuTexRefSetFilterMode", __pyx_f[0], 5933, 1, __PYX_ERR(0, 5933, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":5935
 * cdef CUresult _cuTexRefSetFilterMode(CUtexref hTexRef, CUfilter_mode fm) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuTexRefSetFilterMode
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuTexRefSetFilterMode == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 5935, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":5936
 *     global __cuTexRefSetFilterMode
 *     cuPythonInit()
 *     if __cuTexRefSetFilterMode == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuTexRefSetFilterMode" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuTexRefSetFilterMode == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":5937
 *     cuPythonInit()
 *     if __cuTexRefSetFilterMode == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuTexRefSetFilterMode" not found')
 *     err = (<CUresult (*)(CUtexref, CUfilter_mode) except ?CUDA_ERROR_NOT_FOUND nogil> __cuTexRefSetFilterMode)(hTexRef, fm)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":5938
 *     if __cuTexRefSetFilterMode == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuTexRefSetFilterMode" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUtexref, CUfilter_mode) except ?CUDA_ERROR_NOT_FOUND nogil> __cuTexRefSetFilterMode)(hTexRef, fm)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__369, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 5938, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 5938, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":5937
 *     cuPythonInit()
 *     if __cuTexRefSetFilterMode == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuTexRefSetFilterMode" not found')
 *     err = (<CUresult (*)(CUtexref, CUfilter_mode) except ?CUDA_ERROR_NOT_FOUND nogil> __cuTexRefSetFilterMode)(hTexRef, fm)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":5936
 *     global __cuTexRefSetFilterMode
 *     cuPythonInit()
 *     if __cuTexRefSetFilterMode == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuTexRefSetFilterMode" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":5939
 *         with gil:
 *             raise RuntimeError('Function "cuTexRefSetFilterMode" not found')
 *     err = (<CUresult (*)(CUtexref, CUfilter_mode) except ?CUDA_ERROR_NOT_FOUND nogil> __cuTexRefSetFilterMode)(hTexRef, fm)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUtexref, CUfilter_mode))__pyx_v_4cuda_5_cuda_5ccuda___cuTexRefSetFilterMode)(__pyx_v_hTexRef, __pyx_v_fm); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 5939, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":5940
 *             raise RuntimeError('Function "cuTexRefSetFilterMode" not found')
 *     err = (<CUresult (*)(CUtexref, CUfilter_mode) except ?CUDA_ERROR_NOT_FOUND nogil> __cuTexRefSetFilterMode)(hTexRef, fm)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuTexRefSetMipmapFilterMode(CUtexref hTexRef, CUfilter_mode fm) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":5933
 *     return err
 * 
 * cdef CUresult _cuTexRefSetFilterMode(CUtexref hTexRef, CUfilter_mode fm) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuTexRefSetFilterMode
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuTexRefSetFilterMode", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":5942
 *     return err
 * 
 * cdef CUresult _cuTexRefSetMipmapFilterMode(CUtexref hTexRef, CUfilter_mode fm) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuTexRefSetMipmapFilterMode
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuTexRefSetMipmapFilterMode(CUtexref __pyx_v_hTexRef, CUfilter_mode __pyx_v_fm) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuTexRefSetMipmapFilterMode", 1);
  __Pyx_TraceCall("_cuTexRefSetMipmapFilterMode", __pyx_f[0], 5942, 1, __PYX_ERR(0, 5942, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":5944
 * cdef CUresult _cuTexRefSetMipmapFilterMode(CUtexref hTexRef, CUfilter_mode fm) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuTexRefSetMipmapFilterMode
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuTexRefSetMipmapFilterMode == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 5944, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":5945
 *     global __cuTexRefSetMipmapFilterMode
 *     cuPythonInit()
 *     if __cuTexRefSetMipmapFilterMode == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuTexRefSetMipmapFilterMode" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuTexRefSetMipmapFilterMode == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":5946
 *     cuPythonInit()
 *     if __cuTexRefSetMipmapFilterMode == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuTexRefSetMipmapFilterMode" not found')
 *     err = (<CUresult (*)(CUtexref, CUfilter_mode) except ?CUDA_ERROR_NOT_FOUND nogil> __cuTexRefSetMipmapFilterMode)(hTexRef, fm)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":5947
 *     if __cuTexRefSetMipmapFilterMode == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuTexRefSetMipmapFilterMode" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUtexref, CUfilter_mode) except ?CUDA_ERROR_NOT_FOUND nogil> __cuTexRefSetMipmapFilterMode)(hTexRef, fm)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__370, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 5947, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 5947, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":5946
 *     cuPythonInit()
 *     if __cuTexRefSetMipmapFilterMode == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuTexRefSetMipmapFilterMode" not found')
 *     err = (<CUresult (*)(CUtexref, CUfilter_mode) except ?CUDA_ERROR_NOT_FOUND nogil> __cuTexRefSetMipmapFilterMode)(hTexRef, fm)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":5945
 *     global __cuTexRefSetMipmapFilterMode
 *     cuPythonInit()
 *     if __cuTexRefSetMipmapFilterMode == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuTexRefSetMipmapFilterMode" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":5948
 *         with gil:
 *             raise RuntimeError('Function "cuTexRefSetMipmapFilterMode" not found')
 *     err = (<CUresult (*)(CUtexref, CUfilter_mode) except ?CUDA_ERROR_NOT_FOUND nogil> __cuTexRefSetMipmapFilterMode)(hTexRef, fm)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUtexref, CUfilter_mode))__pyx_v_4cuda_5_cuda_5ccuda___cuTexRefSetMipmapFilterMode)(__pyx_v_hTexRef, __pyx_v_fm); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 5948, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":5949
 *             raise RuntimeError('Function "cuTexRefSetMipmapFilterMode" not found')
 *     err = (<CUresult (*)(CUtexref, CUfilter_mode) except ?CUDA_ERROR_NOT_FOUND nogil> __cuTexRefSetMipmapFilterMode)(hTexRef, fm)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuTexRefSetMipmapLevelBias(CUtexref hTexRef, float bias) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":5942
 *     return err
 * 
 * cdef CUresult _cuTexRefSetMipmapFilterMode(CUtexref hTexRef, CUfilter_mode fm) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuTexRefSetMipmapFilterMode
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuTexRefSetMipmapFilterMode", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":5951
 *     return err
 * 
 * cdef CUresult _cuTexRefSetMipmapLevelBias(CUtexref hTexRef, float bias) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuTexRefSetMipmapLevelBias
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuTexRefSetMipmapLevelBias(CUtexref __pyx_v_hTexRef, float __pyx_v_bias) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuTexRefSetMipmapLevelBias", 1);
  __Pyx_TraceCall("_cuTexRefSetMipmapLevelBias", __pyx_f[0], 5951, 1, __PYX_ERR(0, 5951, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":5953
 * cdef CUresult _cuTexRefSetMipmapLevelBias(CUtexref hTexRef, float bias) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuTexRefSetMipmapLevelBias
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuTexRefSetMipmapLevelBias == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 5953, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":5954
 *     global __cuTexRefSetMipmapLevelBias
 *     cuPythonInit()
 *     if __cuTexRefSetMipmapLevelBias == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuTexRefSetMipmapLevelBias" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuTexRefSetMipmapLevelBias == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":5955
 *     cuPythonInit()
 *     if __cuTexRefSetMipmapLevelBias == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuTexRefSetMipmapLevelBias" not found')
 *     err = (<CUresult (*)(CUtexref, float) except ?CUDA_ERROR_NOT_FOUND nogil> __cuTexRefSetMipmapLevelBias)(hTexRef, bias)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":5956
 *     if __cuTexRefSetMipmapLevelBias == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuTexRefSetMipmapLevelBias" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUtexref, float) except ?CUDA_ERROR_NOT_FOUND nogil> __cuTexRefSetMipmapLevelBias)(hTexRef, bias)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__371, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 5956, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 5956, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":5955
 *     cuPythonInit()
 *     if __cuTexRefSetMipmapLevelBias == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuTexRefSetMipmapLevelBias" not found')
 *     err = (<CUresult (*)(CUtexref, float) except ?CUDA_ERROR_NOT_FOUND nogil> __cuTexRefSetMipmapLevelBias)(hTexRef, bias)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":5954
 *     global __cuTexRefSetMipmapLevelBias
 *     cuPythonInit()
 *     if __cuTexRefSetMipmapLevelBias == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuTexRefSetMipmapLevelBias" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":5957
 *         with gil:
 *             raise RuntimeError('Function "cuTexRefSetMipmapLevelBias" not found')
 *     err = (<CUresult (*)(CUtexref, float) except ?CUDA_ERROR_NOT_FOUND nogil> __cuTexRefSetMipmapLevelBias)(hTexRef, bias)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUtexref, float))__pyx_v_4cuda_5_cuda_5ccuda___cuTexRefSetMipmapLevelBias)(__pyx_v_hTexRef, __pyx_v_bias); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 5957, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":5958
 *             raise RuntimeError('Function "cuTexRefSetMipmapLevelBias" not found')
 *     err = (<CUresult (*)(CUtexref, float) except ?CUDA_ERROR_NOT_FOUND nogil> __cuTexRefSetMipmapLevelBias)(hTexRef, bias)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuTexRefSetMipmapLevelClamp(CUtexref hTexRef, float minMipmapLevelClamp, float maxMipmapLevelClamp) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":5951
 *     return err
 * 
 * cdef CUresult _cuTexRefSetMipmapLevelBias(CUtexref hTexRef, float bias) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuTexRefSetMipmapLevelBias
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuTexRefSetMipmapLevelBias", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":5960
 *     return err
 * 
 * cdef CUresult _cuTexRefSetMipmapLevelClamp(CUtexref hTexRef, float minMipmapLevelClamp, float maxMipmapLevelClamp) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuTexRefSetMipmapLevelClamp
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuTexRefSetMipmapLevelClamp(CUtexref __pyx_v_hTexRef, float __pyx_v_minMipmapLevelClamp, float __pyx_v_maxMipmapLevelClamp) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuTexRefSetMipmapLevelClamp", 1);
  __Pyx_TraceCall("_cuTexRefSetMipmapLevelClamp", __pyx_f[0], 5960, 1, __PYX_ERR(0, 5960, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":5962
 * cdef CUresult _cuTexRefSetMipmapLevelClamp(CUtexref hTexRef, float minMipmapLevelClamp, float maxMipmapLevelClamp) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuTexRefSetMipmapLevelClamp
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuTexRefSetMipmapLevelClamp == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 5962, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":5963
 *     global __cuTexRefSetMipmapLevelClamp
 *     cuPythonInit()
 *     if __cuTexRefSetMipmapLevelClamp == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuTexRefSetMipmapLevelClamp" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuTexRefSetMipmapLevelClamp == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":5964
 *     cuPythonInit()
 *     if __cuTexRefSetMipmapLevelClamp == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuTexRefSetMipmapLevelClamp" not found')
 *     err = (<CUresult (*)(CUtexref, float, float) except ?CUDA_ERROR_NOT_FOUND nogil> __cuTexRefSetMipmapLevelClamp)(hTexRef, minMipmapLevelClamp, maxMipmapLevelClamp)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":5965
 *     if __cuTexRefSetMipmapLevelClamp == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuTexRefSetMipmapLevelClamp" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUtexref, float, float) except ?CUDA_ERROR_NOT_FOUND nogil> __cuTexRefSetMipmapLevelClamp)(hTexRef, minMipmapLevelClamp, maxMipmapLevelClamp)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__372, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 5965, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 5965, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":5964
 *     cuPythonInit()
 *     if __cuTexRefSetMipmapLevelClamp == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuTexRefSetMipmapLevelClamp" not found')
 *     err = (<CUresult (*)(CUtexref, float, float) except ?CUDA_ERROR_NOT_FOUND nogil> __cuTexRefSetMipmapLevelClamp)(hTexRef, minMipmapLevelClamp, maxMipmapLevelClamp)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":5963
 *     global __cuTexRefSetMipmapLevelClamp
 *     cuPythonInit()
 *     if __cuTexRefSetMipmapLevelClamp == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuTexRefSetMipmapLevelClamp" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":5966
 *         with gil:
 *             raise RuntimeError('Function "cuTexRefSetMipmapLevelClamp" not found')
 *     err = (<CUresult (*)(CUtexref, float, float) except ?CUDA_ERROR_NOT_FOUND nogil> __cuTexRefSetMipmapLevelClamp)(hTexRef, minMipmapLevelClamp, maxMipmapLevelClamp)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUtexref, float, float))__pyx_v_4cuda_5_cuda_5ccuda___cuTexRefSetMipmapLevelClamp)(__pyx_v_hTexRef, __pyx_v_minMipmapLevelClamp, __pyx_v_maxMipmapLevelClamp); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 5966, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":5967
 *             raise RuntimeError('Function "cuTexRefSetMipmapLevelClamp" not found')
 *     err = (<CUresult (*)(CUtexref, float, float) except ?CUDA_ERROR_NOT_FOUND nogil> __cuTexRefSetMipmapLevelClamp)(hTexRef, minMipmapLevelClamp, maxMipmapLevelClamp)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuTexRefSetMaxAnisotropy(CUtexref hTexRef, unsigned int maxAniso) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":5960
 *     return err
 * 
 * cdef CUresult _cuTexRefSetMipmapLevelClamp(CUtexref hTexRef, float minMipmapLevelClamp, float maxMipmapLevelClamp) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuTexRefSetMipmapLevelClamp
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuTexRefSetMipmapLevelClamp", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":5969
 *     return err
 * 
 * cdef CUresult _cuTexRefSetMaxAnisotropy(CUtexref hTexRef, unsigned int maxAniso) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuTexRefSetMaxAnisotropy
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuTexRefSetMaxAnisotropy(CUtexref __pyx_v_hTexRef, unsigned int __pyx_v_maxAniso) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuTexRefSetMaxAnisotropy", 1);
  __Pyx_TraceCall("_cuTexRefSetMaxAnisotropy", __pyx_f[0], 5969, 1, __PYX_ERR(0, 5969, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":5971
 * cdef CUresult _cuTexRefSetMaxAnisotropy(CUtexref hTexRef, unsigned int maxAniso) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuTexRefSetMaxAnisotropy
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuTexRefSetMaxAnisotropy == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 5971, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":5972
 *     global __cuTexRefSetMaxAnisotropy
 *     cuPythonInit()
 *     if __cuTexRefSetMaxAnisotropy == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuTexRefSetMaxAnisotropy" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuTexRefSetMaxAnisotropy == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":5973
 *     cuPythonInit()
 *     if __cuTexRefSetMaxAnisotropy == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuTexRefSetMaxAnisotropy" not found')
 *     err = (<CUresult (*)(CUtexref, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuTexRefSetMaxAnisotropy)(hTexRef, maxAniso)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":5974
 *     if __cuTexRefSetMaxAnisotropy == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuTexRefSetMaxAnisotropy" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUtexref, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuTexRefSetMaxAnisotropy)(hTexRef, maxAniso)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__373, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 5974, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 5974, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":5973
 *     cuPythonInit()
 *     if __cuTexRefSetMaxAnisotropy == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuTexRefSetMaxAnisotropy" not found')
 *     err = (<CUresult (*)(CUtexref, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuTexRefSetMaxAnisotropy)(hTexRef, maxAniso)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":5972
 *     global __cuTexRefSetMaxAnisotropy
 *     cuPythonInit()
 *     if __cuTexRefSetMaxAnisotropy == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuTexRefSetMaxAnisotropy" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":5975
 *         with gil:
 *             raise RuntimeError('Function "cuTexRefSetMaxAnisotropy" not found')
 *     err = (<CUresult (*)(CUtexref, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuTexRefSetMaxAnisotropy)(hTexRef, maxAniso)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUtexref, unsigned int))__pyx_v_4cuda_5_cuda_5ccuda___cuTexRefSetMaxAnisotropy)(__pyx_v_hTexRef, __pyx_v_maxAniso); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 5975, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":5976
 *             raise RuntimeError('Function "cuTexRefSetMaxAnisotropy" not found')
 *     err = (<CUresult (*)(CUtexref, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuTexRefSetMaxAnisotropy)(hTexRef, maxAniso)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuTexRefSetBorderColor(CUtexref hTexRef, float* pBorderColor) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":5969
 *     return err
 * 
 * cdef CUresult _cuTexRefSetMaxAnisotropy(CUtexref hTexRef, unsigned int maxAniso) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuTexRefSetMaxAnisotropy
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuTexRefSetMaxAnisotropy", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":5978
 *     return err
 * 
 * cdef CUresult _cuTexRefSetBorderColor(CUtexref hTexRef, float* pBorderColor) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuTexRefSetBorderColor
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuTexRefSetBorderColor(CUtexref __pyx_v_hTexRef, float *__pyx_v_pBorderColor) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuTexRefSetBorderColor", 1);
  __Pyx_TraceCall("_cuTexRefSetBorderColor", __pyx_f[0], 5978, 1, __PYX_ERR(0, 5978, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":5980
 * cdef CUresult _cuTexRefSetBorderColor(CUtexref hTexRef, float* pBorderColor) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuTexRefSetBorderColor
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuTexRefSetBorderColor == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 5980, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":5981
 *     global __cuTexRefSetBorderColor
 *     cuPythonInit()
 *     if __cuTexRefSetBorderColor == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuTexRefSetBorderColor" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuTexRefSetBorderColor == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":5982
 *     cuPythonInit()
 *     if __cuTexRefSetBorderColor == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuTexRefSetBorderColor" not found')
 *     err = (<CUresult (*)(CUtexref, float*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuTexRefSetBorderColor)(hTexRef, pBorderColor)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":5983
 *     if __cuTexRefSetBorderColor == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuTexRefSetBorderColor" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUtexref, float*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuTexRefSetBorderColor)(hTexRef, pBorderColor)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__374, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 5983, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 5983, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":5982
 *     cuPythonInit()
 *     if __cuTexRefSetBorderColor == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuTexRefSetBorderColor" not found')
 *     err = (<CUresult (*)(CUtexref, float*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuTexRefSetBorderColor)(hTexRef, pBorderColor)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":5981
 *     global __cuTexRefSetBorderColor
 *     cuPythonInit()
 *     if __cuTexRefSetBorderColor == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuTexRefSetBorderColor" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":5984
 *         with gil:
 *             raise RuntimeError('Function "cuTexRefSetBorderColor" not found')
 *     err = (<CUresult (*)(CUtexref, float*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuTexRefSetBorderColor)(hTexRef, pBorderColor)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUtexref, float *))__pyx_v_4cuda_5_cuda_5ccuda___cuTexRefSetBorderColor)(__pyx_v_hTexRef, __pyx_v_pBorderColor); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 5984, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":5985
 *             raise RuntimeError('Function "cuTexRefSetBorderColor" not found')
 *     err = (<CUresult (*)(CUtexref, float*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuTexRefSetBorderColor)(hTexRef, pBorderColor)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuTexRefSetFlags(CUtexref hTexRef, unsigned int Flags) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":5978
 *     return err
 * 
 * cdef CUresult _cuTexRefSetBorderColor(CUtexref hTexRef, float* pBorderColor) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuTexRefSetBorderColor
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuTexRefSetBorderColor", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":5987
 *     return err
 * 
 * cdef CUresult _cuTexRefSetFlags(CUtexref hTexRef, unsigned int Flags) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuTexRefSetFlags
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuTexRefSetFlags(CUtexref __pyx_v_hTexRef, unsigned int __pyx_v_Flags) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuTexRefSetFlags", 1);
  __Pyx_TraceCall("_cuTexRefSetFlags", __pyx_f[0], 5987, 1, __PYX_ERR(0, 5987, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":5989
 * cdef CUresult _cuTexRefSetFlags(CUtexref hTexRef, unsigned int Flags) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuTexRefSetFlags
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuTexRefSetFlags == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 5989, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":5990
 *     global __cuTexRefSetFlags
 *     cuPythonInit()
 *     if __cuTexRefSetFlags == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuTexRefSetFlags" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuTexRefSetFlags == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":5991
 *     cuPythonInit()
 *     if __cuTexRefSetFlags == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuTexRefSetFlags" not found')
 *     err = (<CUresult (*)(CUtexref, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuTexRefSetFlags)(hTexRef, Flags)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":5992
 *     if __cuTexRefSetFlags == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuTexRefSetFlags" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUtexref, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuTexRefSetFlags)(hTexRef, Flags)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__375, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 5992, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 5992, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":5991
 *     cuPythonInit()
 *     if __cuTexRefSetFlags == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuTexRefSetFlags" not found')
 *     err = (<CUresult (*)(CUtexref, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuTexRefSetFlags)(hTexRef, Flags)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":5990
 *     global __cuTexRefSetFlags
 *     cuPythonInit()
 *     if __cuTexRefSetFlags == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuTexRefSetFlags" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":5993
 *         with gil:
 *             raise RuntimeError('Function "cuTexRefSetFlags" not found')
 *     err = (<CUresult (*)(CUtexref, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuTexRefSetFlags)(hTexRef, Flags)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUtexref, unsigned int))__pyx_v_4cuda_5_cuda_5ccuda___cuTexRefSetFlags)(__pyx_v_hTexRef, __pyx_v_Flags); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 5993, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":5994
 *             raise RuntimeError('Function "cuTexRefSetFlags" not found')
 *     err = (<CUresult (*)(CUtexref, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuTexRefSetFlags)(hTexRef, Flags)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuTexRefGetAddress_v2(CUdeviceptr* pdptr, CUtexref hTexRef) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":5987
 *     return err
 * 
 * cdef CUresult _cuTexRefSetFlags(CUtexref hTexRef, unsigned int Flags) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuTexRefSetFlags
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuTexRefSetFlags", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":5996
 *     return err
 * 
 * cdef CUresult _cuTexRefGetAddress_v2(CUdeviceptr* pdptr, CUtexref hTexRef) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuTexRefGetAddress_v2
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuTexRefGetAddress_v2(CUdeviceptr *__pyx_v_pdptr, CUtexref __pyx_v_hTexRef) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuTexRefGetAddress_v2", 1);
  __Pyx_TraceCall("_cuTexRefGetAddress_v2", __pyx_f[0], 5996, 1, __PYX_ERR(0, 5996, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":5998
 * cdef CUresult _cuTexRefGetAddress_v2(CUdeviceptr* pdptr, CUtexref hTexRef) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuTexRefGetAddress_v2
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuTexRefGetAddress_v2 == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 5998, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":5999
 *     global __cuTexRefGetAddress_v2
 *     cuPythonInit()
 *     if __cuTexRefGetAddress_v2 == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuTexRefGetAddress_v2" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuTexRefGetAddress_v2 == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":6000
 *     cuPythonInit()
 *     if __cuTexRefGetAddress_v2 == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuTexRefGetAddress_v2" not found')
 *     err = (<CUresult (*)(CUdeviceptr*, CUtexref) except ?CUDA_ERROR_NOT_FOUND nogil> __cuTexRefGetAddress_v2)(pdptr, hTexRef)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":6001
 *     if __cuTexRefGetAddress_v2 == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuTexRefGetAddress_v2" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUdeviceptr*, CUtexref) except ?CUDA_ERROR_NOT_FOUND nogil> __cuTexRefGetAddress_v2)(pdptr, hTexRef)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__376, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 6001, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 6001, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":6000
 *     cuPythonInit()
 *     if __cuTexRefGetAddress_v2 == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuTexRefGetAddress_v2" not found')
 *     err = (<CUresult (*)(CUdeviceptr*, CUtexref) except ?CUDA_ERROR_NOT_FOUND nogil> __cuTexRefGetAddress_v2)(pdptr, hTexRef)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":5999
 *     global __cuTexRefGetAddress_v2
 *     cuPythonInit()
 *     if __cuTexRefGetAddress_v2 == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuTexRefGetAddress_v2" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":6002
 *         with gil:
 *             raise RuntimeError('Function "cuTexRefGetAddress_v2" not found')
 *     err = (<CUresult (*)(CUdeviceptr*, CUtexref) except ?CUDA_ERROR_NOT_FOUND nogil> __cuTexRefGetAddress_v2)(pdptr, hTexRef)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUdeviceptr *, CUtexref))__pyx_v_4cuda_5_cuda_5ccuda___cuTexRefGetAddress_v2)(__pyx_v_pdptr, __pyx_v_hTexRef); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 6002, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":6003
 *             raise RuntimeError('Function "cuTexRefGetAddress_v2" not found')
 *     err = (<CUresult (*)(CUdeviceptr*, CUtexref) except ?CUDA_ERROR_NOT_FOUND nogil> __cuTexRefGetAddress_v2)(pdptr, hTexRef)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuTexRefGetArray(CUarray* phArray, CUtexref hTexRef) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":5996
 *     return err
 * 
 * cdef CUresult _cuTexRefGetAddress_v2(CUdeviceptr* pdptr, CUtexref hTexRef) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuTexRefGetAddress_v2
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuTexRefGetAddress_v2", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":6005
 *     return err
 * 
 * cdef CUresult _cuTexRefGetArray(CUarray* phArray, CUtexref hTexRef) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuTexRefGetArray
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuTexRefGetArray(CUarray *__pyx_v_phArray, CUtexref __pyx_v_hTexRef) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuTexRefGetArray", 1);
  __Pyx_TraceCall("_cuTexRefGetArray", __pyx_f[0], 6005, 1, __PYX_ERR(0, 6005, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":6007
 * cdef CUresult _cuTexRefGetArray(CUarray* phArray, CUtexref hTexRef) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuTexRefGetArray
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuTexRefGetArray == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 6007, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":6008
 *     global __cuTexRefGetArray
 *     cuPythonInit()
 *     if __cuTexRefGetArray == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuTexRefGetArray" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuTexRefGetArray == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":6009
 *     cuPythonInit()
 *     if __cuTexRefGetArray == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuTexRefGetArray" not found')
 *     err = (<CUresult (*)(CUarray*, CUtexref) except ?CUDA_ERROR_NOT_FOUND nogil> __cuTexRefGetArray)(phArray, hTexRef)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":6010
 *     if __cuTexRefGetArray == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuTexRefGetArray" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUarray*, CUtexref) except ?CUDA_ERROR_NOT_FOUND nogil> __cuTexRefGetArray)(phArray, hTexRef)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__377, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 6010, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 6010, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":6009
 *     cuPythonInit()
 *     if __cuTexRefGetArray == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuTexRefGetArray" not found')
 *     err = (<CUresult (*)(CUarray*, CUtexref) except ?CUDA_ERROR_NOT_FOUND nogil> __cuTexRefGetArray)(phArray, hTexRef)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":6008
 *     global __cuTexRefGetArray
 *     cuPythonInit()
 *     if __cuTexRefGetArray == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuTexRefGetArray" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":6011
 *         with gil:
 *             raise RuntimeError('Function "cuTexRefGetArray" not found')
 *     err = (<CUresult (*)(CUarray*, CUtexref) except ?CUDA_ERROR_NOT_FOUND nogil> __cuTexRefGetArray)(phArray, hTexRef)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUarray *, CUtexref))__pyx_v_4cuda_5_cuda_5ccuda___cuTexRefGetArray)(__pyx_v_phArray, __pyx_v_hTexRef); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 6011, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":6012
 *             raise RuntimeError('Function "cuTexRefGetArray" not found')
 *     err = (<CUresult (*)(CUarray*, CUtexref) except ?CUDA_ERROR_NOT_FOUND nogil> __cuTexRefGetArray)(phArray, hTexRef)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuTexRefGetMipmappedArray(CUmipmappedArray* phMipmappedArray, CUtexref hTexRef) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":6005
 *     return err
 * 
 * cdef CUresult _cuTexRefGetArray(CUarray* phArray, CUtexref hTexRef) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuTexRefGetArray
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuTexRefGetArray", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":6014
 *     return err
 * 
 * cdef CUresult _cuTexRefGetMipmappedArray(CUmipmappedArray* phMipmappedArray, CUtexref hTexRef) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuTexRefGetMipmappedArray
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuTexRefGetMipmappedArray(CUmipmappedArray *__pyx_v_phMipmappedArray, CUtexref __pyx_v_hTexRef) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuTexRefGetMipmappedArray", 1);
  __Pyx_TraceCall("_cuTexRefGetMipmappedArray", __pyx_f[0], 6014, 1, __PYX_ERR(0, 6014, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":6016
 * cdef CUresult _cuTexRefGetMipmappedArray(CUmipmappedArray* phMipmappedArray, CUtexref hTexRef) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuTexRefGetMipmappedArray
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuTexRefGetMipmappedArray == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 6016, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":6017
 *     global __cuTexRefGetMipmappedArray
 *     cuPythonInit()
 *     if __cuTexRefGetMipmappedArray == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuTexRefGetMipmappedArray" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuTexRefGetMipmappedArray == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":6018
 *     cuPythonInit()
 *     if __cuTexRefGetMipmappedArray == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuTexRefGetMipmappedArray" not found')
 *     err = (<CUresult (*)(CUmipmappedArray*, CUtexref) except ?CUDA_ERROR_NOT_FOUND nogil> __cuTexRefGetMipmappedArray)(phMipmappedArray, hTexRef)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":6019
 *     if __cuTexRefGetMipmappedArray == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuTexRefGetMipmappedArray" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUmipmappedArray*, CUtexref) except ?CUDA_ERROR_NOT_FOUND nogil> __cuTexRefGetMipmappedArray)(phMipmappedArray, hTexRef)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__378, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 6019, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 6019, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":6018
 *     cuPythonInit()
 *     if __cuTexRefGetMipmappedArray == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuTexRefGetMipmappedArray" not found')
 *     err = (<CUresult (*)(CUmipmappedArray*, CUtexref) except ?CUDA_ERROR_NOT_FOUND nogil> __cuTexRefGetMipmappedArray)(phMipmappedArray, hTexRef)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":6017
 *     global __cuTexRefGetMipmappedArray
 *     cuPythonInit()
 *     if __cuTexRefGetMipmappedArray == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuTexRefGetMipmappedArray" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":6020
 *         with gil:
 *             raise RuntimeError('Function "cuTexRefGetMipmappedArray" not found')
 *     err = (<CUresult (*)(CUmipmappedArray*, CUtexref) except ?CUDA_ERROR_NOT_FOUND nogil> __cuTexRefGetMipmappedArray)(phMipmappedArray, hTexRef)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUmipmappedArray *, CUtexref))__pyx_v_4cuda_5_cuda_5ccuda___cuTexRefGetMipmappedArray)(__pyx_v_phMipmappedArray, __pyx_v_hTexRef); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 6020, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":6021
 *             raise RuntimeError('Function "cuTexRefGetMipmappedArray" not found')
 *     err = (<CUresult (*)(CUmipmappedArray*, CUtexref) except ?CUDA_ERROR_NOT_FOUND nogil> __cuTexRefGetMipmappedArray)(phMipmappedArray, hTexRef)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuTexRefGetAddressMode(CUaddress_mode* pam, CUtexref hTexRef, int dim) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":6014
 *     return err
 * 
 * cdef CUresult _cuTexRefGetMipmappedArray(CUmipmappedArray* phMipmappedArray, CUtexref hTexRef) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuTexRefGetMipmappedArray
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuTexRefGetMipmappedArray", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":6023
 *     return err
 * 
 * cdef CUresult _cuTexRefGetAddressMode(CUaddress_mode* pam, CUtexref hTexRef, int dim) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuTexRefGetAddressMode
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuTexRefGetAddressMode(CUaddress_mode *__pyx_v_pam, CUtexref __pyx_v_hTexRef, int __pyx_v_dim) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuTexRefGetAddressMode", 1);
  __Pyx_TraceCall("_cuTexRefGetAddressMode", __pyx_f[0], 6023, 1, __PYX_ERR(0, 6023, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":6025
 * cdef CUresult _cuTexRefGetAddressMode(CUaddress_mode* pam, CUtexref hTexRef, int dim) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuTexRefGetAddressMode
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuTexRefGetAddressMode == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 6025, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":6026
 *     global __cuTexRefGetAddressMode
 *     cuPythonInit()
 *     if __cuTexRefGetAddressMode == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuTexRefGetAddressMode" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuTexRefGetAddressMode == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":6027
 *     cuPythonInit()
 *     if __cuTexRefGetAddressMode == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuTexRefGetAddressMode" not found')
 *     err = (<CUresult (*)(CUaddress_mode*, CUtexref, int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuTexRefGetAddressMode)(pam, hTexRef, dim)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":6028
 *     if __cuTexRefGetAddressMode == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuTexRefGetAddressMode" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUaddress_mode*, CUtexref, int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuTexRefGetAddressMode)(pam, hTexRef, dim)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__379, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 6028, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 6028, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":6027
 *     cuPythonInit()
 *     if __cuTexRefGetAddressMode == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuTexRefGetAddressMode" not found')
 *     err = (<CUresult (*)(CUaddress_mode*, CUtexref, int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuTexRefGetAddressMode)(pam, hTexRef, dim)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":6026
 *     global __cuTexRefGetAddressMode
 *     cuPythonInit()
 *     if __cuTexRefGetAddressMode == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuTexRefGetAddressMode" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":6029
 *         with gil:
 *             raise RuntimeError('Function "cuTexRefGetAddressMode" not found')
 *     err = (<CUresult (*)(CUaddress_mode*, CUtexref, int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuTexRefGetAddressMode)(pam, hTexRef, dim)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUaddress_mode *, CUtexref, int))__pyx_v_4cuda_5_cuda_5ccuda___cuTexRefGetAddressMode)(__pyx_v_pam, __pyx_v_hTexRef, __pyx_v_dim); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 6029, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":6030
 *             raise RuntimeError('Function "cuTexRefGetAddressMode" not found')
 *     err = (<CUresult (*)(CUaddress_mode*, CUtexref, int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuTexRefGetAddressMode)(pam, hTexRef, dim)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuTexRefGetFilterMode(CUfilter_mode* pfm, CUtexref hTexRef) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":6023
 *     return err
 * 
 * cdef CUresult _cuTexRefGetAddressMode(CUaddress_mode* pam, CUtexref hTexRef, int dim) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuTexRefGetAddressMode
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuTexRefGetAddressMode", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":6032
 *     return err
 * 
 * cdef CUresult _cuTexRefGetFilterMode(CUfilter_mode* pfm, CUtexref hTexRef) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuTexRefGetFilterMode
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuTexRefGetFilterMode(CUfilter_mode *__pyx_v_pfm, CUtexref __pyx_v_hTexRef) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuTexRefGetFilterMode", 1);
  __Pyx_TraceCall("_cuTexRefGetFilterMode", __pyx_f[0], 6032, 1, __PYX_ERR(0, 6032, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":6034
 * cdef CUresult _cuTexRefGetFilterMode(CUfilter_mode* pfm, CUtexref hTexRef) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuTexRefGetFilterMode
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuTexRefGetFilterMode == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 6034, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":6035
 *     global __cuTexRefGetFilterMode
 *     cuPythonInit()
 *     if __cuTexRefGetFilterMode == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuTexRefGetFilterMode" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuTexRefGetFilterMode == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":6036
 *     cuPythonInit()
 *     if __cuTexRefGetFilterMode == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuTexRefGetFilterMode" not found')
 *     err = (<CUresult (*)(CUfilter_mode*, CUtexref) except ?CUDA_ERROR_NOT_FOUND nogil> __cuTexRefGetFilterMode)(pfm, hTexRef)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":6037
 *     if __cuTexRefGetFilterMode == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuTexRefGetFilterMode" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUfilter_mode*, CUtexref) except ?CUDA_ERROR_NOT_FOUND nogil> __cuTexRefGetFilterMode)(pfm, hTexRef)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__380, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 6037, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 6037, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":6036
 *     cuPythonInit()
 *     if __cuTexRefGetFilterMode == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuTexRefGetFilterMode" not found')
 *     err = (<CUresult (*)(CUfilter_mode*, CUtexref) except ?CUDA_ERROR_NOT_FOUND nogil> __cuTexRefGetFilterMode)(pfm, hTexRef)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":6035
 *     global __cuTexRefGetFilterMode
 *     cuPythonInit()
 *     if __cuTexRefGetFilterMode == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuTexRefGetFilterMode" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":6038
 *         with gil:
 *             raise RuntimeError('Function "cuTexRefGetFilterMode" not found')
 *     err = (<CUresult (*)(CUfilter_mode*, CUtexref) except ?CUDA_ERROR_NOT_FOUND nogil> __cuTexRefGetFilterMode)(pfm, hTexRef)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUfilter_mode *, CUtexref))__pyx_v_4cuda_5_cuda_5ccuda___cuTexRefGetFilterMode)(__pyx_v_pfm, __pyx_v_hTexRef); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 6038, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":6039
 *             raise RuntimeError('Function "cuTexRefGetFilterMode" not found')
 *     err = (<CUresult (*)(CUfilter_mode*, CUtexref) except ?CUDA_ERROR_NOT_FOUND nogil> __cuTexRefGetFilterMode)(pfm, hTexRef)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuTexRefGetFormat(CUarray_format* pFormat, int* pNumChannels, CUtexref hTexRef) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":6032
 *     return err
 * 
 * cdef CUresult _cuTexRefGetFilterMode(CUfilter_mode* pfm, CUtexref hTexRef) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuTexRefGetFilterMode
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuTexRefGetFilterMode", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":6041
 *     return err
 * 
 * cdef CUresult _cuTexRefGetFormat(CUarray_format* pFormat, int* pNumChannels, CUtexref hTexRef) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuTexRefGetFormat
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuTexRefGetFormat(CUarray_format *__pyx_v_pFormat, int *__pyx_v_pNumChannels, CUtexref __pyx_v_hTexRef) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuTexRefGetFormat", 1);
  __Pyx_TraceCall("_cuTexRefGetFormat", __pyx_f[0], 6041, 1, __PYX_ERR(0, 6041, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":6043
 * cdef CUresult _cuTexRefGetFormat(CUarray_format* pFormat, int* pNumChannels, CUtexref hTexRef) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuTexRefGetFormat
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuTexRefGetFormat == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 6043, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":6044
 *     global __cuTexRefGetFormat
 *     cuPythonInit()
 *     if __cuTexRefGetFormat == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuTexRefGetFormat" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuTexRefGetFormat == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":6045
 *     cuPythonInit()
 *     if __cuTexRefGetFormat == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuTexRefGetFormat" not found')
 *     err = (<CUresult (*)(CUarray_format*, int*, CUtexref) except ?CUDA_ERROR_NOT_FOUND nogil> __cuTexRefGetFormat)(pFormat, pNumChannels, hTexRef)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":6046
 *     if __cuTexRefGetFormat == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuTexRefGetFormat" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUarray_format*, int*, CUtexref) except ?CUDA_ERROR_NOT_FOUND nogil> __cuTexRefGetFormat)(pFormat, pNumChannels, hTexRef)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__381, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 6046, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 6046, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":6045
 *     cuPythonInit()
 *     if __cuTexRefGetFormat == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuTexRefGetFormat" not found')
 *     err = (<CUresult (*)(CUarray_format*, int*, CUtexref) except ?CUDA_ERROR_NOT_FOUND nogil> __cuTexRefGetFormat)(pFormat, pNumChannels, hTexRef)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":6044
 *     global __cuTexRefGetFormat
 *     cuPythonInit()
 *     if __cuTexRefGetFormat == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuTexRefGetFormat" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":6047
 *         with gil:
 *             raise RuntimeError('Function "cuTexRefGetFormat" not found')
 *     err = (<CUresult (*)(CUarray_format*, int*, CUtexref) except ?CUDA_ERROR_NOT_FOUND nogil> __cuTexRefGetFormat)(pFormat, pNumChannels, hTexRef)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUarray_format *, int *, CUtexref))__pyx_v_4cuda_5_cuda_5ccuda___cuTexRefGetFormat)(__pyx_v_pFormat, __pyx_v_pNumChannels, __pyx_v_hTexRef); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 6047, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":6048
 *             raise RuntimeError('Function "cuTexRefGetFormat" not found')
 *     err = (<CUresult (*)(CUarray_format*, int*, CUtexref) except ?CUDA_ERROR_NOT_FOUND nogil> __cuTexRefGetFormat)(pFormat, pNumChannels, hTexRef)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuTexRefGetMipmapFilterMode(CUfilter_mode* pfm, CUtexref hTexRef) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":6041
 *     return err
 * 
 * cdef CUresult _cuTexRefGetFormat(CUarray_format* pFormat, int* pNumChannels, CUtexref hTexRef) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuTexRefGetFormat
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuTexRefGetFormat", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":6050
 *     return err
 * 
 * cdef CUresult _cuTexRefGetMipmapFilterMode(CUfilter_mode* pfm, CUtexref hTexRef) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuTexRefGetMipmapFilterMode
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuTexRefGetMipmapFilterMode(CUfilter_mode *__pyx_v_pfm, CUtexref __pyx_v_hTexRef) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuTexRefGetMipmapFilterMode", 1);
  __Pyx_TraceCall("_cuTexRefGetMipmapFilterMode", __pyx_f[0], 6050, 1, __PYX_ERR(0, 6050, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":6052
 * cdef CUresult _cuTexRefGetMipmapFilterMode(CUfilter_mode* pfm, CUtexref hTexRef) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuTexRefGetMipmapFilterMode
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuTexRefGetMipmapFilterMode == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 6052, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":6053
 *     global __cuTexRefGetMipmapFilterMode
 *     cuPythonInit()
 *     if __cuTexRefGetMipmapFilterMode == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuTexRefGetMipmapFilterMode" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuTexRefGetMipmapFilterMode == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":6054
 *     cuPythonInit()
 *     if __cuTexRefGetMipmapFilterMode == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuTexRefGetMipmapFilterMode" not found')
 *     err = (<CUresult (*)(CUfilter_mode*, CUtexref) except ?CUDA_ERROR_NOT_FOUND nogil> __cuTexRefGetMipmapFilterMode)(pfm, hTexRef)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":6055
 *     if __cuTexRefGetMipmapFilterMode == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuTexRefGetMipmapFilterMode" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUfilter_mode*, CUtexref) except ?CUDA_ERROR_NOT_FOUND nogil> __cuTexRefGetMipmapFilterMode)(pfm, hTexRef)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__382, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 6055, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 6055, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":6054
 *     cuPythonInit()
 *     if __cuTexRefGetMipmapFilterMode == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuTexRefGetMipmapFilterMode" not found')
 *     err = (<CUresult (*)(CUfilter_mode*, CUtexref) except ?CUDA_ERROR_NOT_FOUND nogil> __cuTexRefGetMipmapFilterMode)(pfm, hTexRef)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":6053
 *     global __cuTexRefGetMipmapFilterMode
 *     cuPythonInit()
 *     if __cuTexRefGetMipmapFilterMode == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuTexRefGetMipmapFilterMode" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":6056
 *         with gil:
 *             raise RuntimeError('Function "cuTexRefGetMipmapFilterMode" not found')
 *     err = (<CUresult (*)(CUfilter_mode*, CUtexref) except ?CUDA_ERROR_NOT_FOUND nogil> __cuTexRefGetMipmapFilterMode)(pfm, hTexRef)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUfilter_mode *, CUtexref))__pyx_v_4cuda_5_cuda_5ccuda___cuTexRefGetMipmapFilterMode)(__pyx_v_pfm, __pyx_v_hTexRef); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 6056, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":6057
 *             raise RuntimeError('Function "cuTexRefGetMipmapFilterMode" not found')
 *     err = (<CUresult (*)(CUfilter_mode*, CUtexref) except ?CUDA_ERROR_NOT_FOUND nogil> __cuTexRefGetMipmapFilterMode)(pfm, hTexRef)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuTexRefGetMipmapLevelBias(float* pbias, CUtexref hTexRef) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":6050
 *     return err
 * 
 * cdef CUresult _cuTexRefGetMipmapFilterMode(CUfilter_mode* pfm, CUtexref hTexRef) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuTexRefGetMipmapFilterMode
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuTexRefGetMipmapFilterMode", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":6059
 *     return err
 * 
 * cdef CUresult _cuTexRefGetMipmapLevelBias(float* pbias, CUtexref hTexRef) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuTexRefGetMipmapLevelBias
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuTexRefGetMipmapLevelBias(float *__pyx_v_pbias, CUtexref __pyx_v_hTexRef) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuTexRefGetMipmapLevelBias", 1);
  __Pyx_TraceCall("_cuTexRefGetMipmapLevelBias", __pyx_f[0], 6059, 1, __PYX_ERR(0, 6059, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":6061
 * cdef CUresult _cuTexRefGetMipmapLevelBias(float* pbias, CUtexref hTexRef) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuTexRefGetMipmapLevelBias
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuTexRefGetMipmapLevelBias == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 6061, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":6062
 *     global __cuTexRefGetMipmapLevelBias
 *     cuPythonInit()
 *     if __cuTexRefGetMipmapLevelBias == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuTexRefGetMipmapLevelBias" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuTexRefGetMipmapLevelBias == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":6063
 *     cuPythonInit()
 *     if __cuTexRefGetMipmapLevelBias == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuTexRefGetMipmapLevelBias" not found')
 *     err = (<CUresult (*)(float*, CUtexref) except ?CUDA_ERROR_NOT_FOUND nogil> __cuTexRefGetMipmapLevelBias)(pbias, hTexRef)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":6064
 *     if __cuTexRefGetMipmapLevelBias == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuTexRefGetMipmapLevelBias" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(float*, CUtexref) except ?CUDA_ERROR_NOT_FOUND nogil> __cuTexRefGetMipmapLevelBias)(pbias, hTexRef)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__383, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 6064, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 6064, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":6063
 *     cuPythonInit()
 *     if __cuTexRefGetMipmapLevelBias == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuTexRefGetMipmapLevelBias" not found')
 *     err = (<CUresult (*)(float*, CUtexref) except ?CUDA_ERROR_NOT_FOUND nogil> __cuTexRefGetMipmapLevelBias)(pbias, hTexRef)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":6062
 *     global __cuTexRefGetMipmapLevelBias
 *     cuPythonInit()
 *     if __cuTexRefGetMipmapLevelBias == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuTexRefGetMipmapLevelBias" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":6065
 *         with gil:
 *             raise RuntimeError('Function "cuTexRefGetMipmapLevelBias" not found')
 *     err = (<CUresult (*)(float*, CUtexref) except ?CUDA_ERROR_NOT_FOUND nogil> __cuTexRefGetMipmapLevelBias)(pbias, hTexRef)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(float *, CUtexref))__pyx_v_4cuda_5_cuda_5ccuda___cuTexRefGetMipmapLevelBias)(__pyx_v_pbias, __pyx_v_hTexRef); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 6065, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":6066
 *             raise RuntimeError('Function "cuTexRefGetMipmapLevelBias" not found')
 *     err = (<CUresult (*)(float*, CUtexref) except ?CUDA_ERROR_NOT_FOUND nogil> __cuTexRefGetMipmapLevelBias)(pbias, hTexRef)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuTexRefGetMipmapLevelClamp(float* pminMipmapLevelClamp, float* pmaxMipmapLevelClamp, CUtexref hTexRef) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":6059
 *     return err
 * 
 * cdef CUresult _cuTexRefGetMipmapLevelBias(float* pbias, CUtexref hTexRef) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuTexRefGetMipmapLevelBias
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuTexRefGetMipmapLevelBias", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":6068
 *     return err
 * 
 * cdef CUresult _cuTexRefGetMipmapLevelClamp(float* pminMipmapLevelClamp, float* pmaxMipmapLevelClamp, CUtexref hTexRef) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuTexRefGetMipmapLevelClamp
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuTexRefGetMipmapLevelClamp(float *__pyx_v_pminMipmapLevelClamp, float *__pyx_v_pmaxMipmapLevelClamp, CUtexref __pyx_v_hTexRef) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuTexRefGetMipmapLevelClamp", 1);
  __Pyx_TraceCall("_cuTexRefGetMipmapLevelClamp", __pyx_f[0], 6068, 1, __PYX_ERR(0, 6068, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":6070
 * cdef CUresult _cuTexRefGetMipmapLevelClamp(float* pminMipmapLevelClamp, float* pmaxMipmapLevelClamp, CUtexref hTexRef) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuTexRefGetMipmapLevelClamp
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuTexRefGetMipmapLevelClamp == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 6070, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":6071
 *     global __cuTexRefGetMipmapLevelClamp
 *     cuPythonInit()
 *     if __cuTexRefGetMipmapLevelClamp == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuTexRefGetMipmapLevelClamp" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuTexRefGetMipmapLevelClamp == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":6072
 *     cuPythonInit()
 *     if __cuTexRefGetMipmapLevelClamp == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuTexRefGetMipmapLevelClamp" not found')
 *     err = (<CUresult (*)(float*, float*, CUtexref) except ?CUDA_ERROR_NOT_FOUND nogil> __cuTexRefGetMipmapLevelClamp)(pminMipmapLevelClamp, pmaxMipmapLevelClamp, hTexRef)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":6073
 *     if __cuTexRefGetMipmapLevelClamp == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuTexRefGetMipmapLevelClamp" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(float*, float*, CUtexref) except ?CUDA_ERROR_NOT_FOUND nogil> __cuTexRefGetMipmapLevelClamp)(pminMipmapLevelClamp, pmaxMipmapLevelClamp, hTexRef)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__384, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 6073, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 6073, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":6072
 *     cuPythonInit()
 *     if __cuTexRefGetMipmapLevelClamp == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuTexRefGetMipmapLevelClamp" not found')
 *     err = (<CUresult (*)(float*, float*, CUtexref) except ?CUDA_ERROR_NOT_FOUND nogil> __cuTexRefGetMipmapLevelClamp)(pminMipmapLevelClamp, pmaxMipmapLevelClamp, hTexRef)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":6071
 *     global __cuTexRefGetMipmapLevelClamp
 *     cuPythonInit()
 *     if __cuTexRefGetMipmapLevelClamp == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuTexRefGetMipmapLevelClamp" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":6074
 *         with gil:
 *             raise RuntimeError('Function "cuTexRefGetMipmapLevelClamp" not found')
 *     err = (<CUresult (*)(float*, float*, CUtexref) except ?CUDA_ERROR_NOT_FOUND nogil> __cuTexRefGetMipmapLevelClamp)(pminMipmapLevelClamp, pmaxMipmapLevelClamp, hTexRef)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(float *, float *, CUtexref))__pyx_v_4cuda_5_cuda_5ccuda___cuTexRefGetMipmapLevelClamp)(__pyx_v_pminMipmapLevelClamp, __pyx_v_pmaxMipmapLevelClamp, __pyx_v_hTexRef); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 6074, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":6075
 *             raise RuntimeError('Function "cuTexRefGetMipmapLevelClamp" not found')
 *     err = (<CUresult (*)(float*, float*, CUtexref) except ?CUDA_ERROR_NOT_FOUND nogil> __cuTexRefGetMipmapLevelClamp)(pminMipmapLevelClamp, pmaxMipmapLevelClamp, hTexRef)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuTexRefGetMaxAnisotropy(int* pmaxAniso, CUtexref hTexRef) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":6068
 *     return err
 * 
 * cdef CUresult _cuTexRefGetMipmapLevelClamp(float* pminMipmapLevelClamp, float* pmaxMipmapLevelClamp, CUtexref hTexRef) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuTexRefGetMipmapLevelClamp
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuTexRefGetMipmapLevelClamp", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":6077
 *     return err
 * 
 * cdef CUresult _cuTexRefGetMaxAnisotropy(int* pmaxAniso, CUtexref hTexRef) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuTexRefGetMaxAnisotropy
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuTexRefGetMaxAnisotropy(int *__pyx_v_pmaxAniso, CUtexref __pyx_v_hTexRef) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuTexRefGetMaxAnisotropy", 1);
  __Pyx_TraceCall("_cuTexRefGetMaxAnisotropy", __pyx_f[0], 6077, 1, __PYX_ERR(0, 6077, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":6079
 * cdef CUresult _cuTexRefGetMaxAnisotropy(int* pmaxAniso, CUtexref hTexRef) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuTexRefGetMaxAnisotropy
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuTexRefGetMaxAnisotropy == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 6079, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":6080
 *     global __cuTexRefGetMaxAnisotropy
 *     cuPythonInit()
 *     if __cuTexRefGetMaxAnisotropy == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuTexRefGetMaxAnisotropy" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuTexRefGetMaxAnisotropy == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":6081
 *     cuPythonInit()
 *     if __cuTexRefGetMaxAnisotropy == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuTexRefGetMaxAnisotropy" not found')
 *     err = (<CUresult (*)(int*, CUtexref) except ?CUDA_ERROR_NOT_FOUND nogil> __cuTexRefGetMaxAnisotropy)(pmaxAniso, hTexRef)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":6082
 *     if __cuTexRefGetMaxAnisotropy == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuTexRefGetMaxAnisotropy" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(int*, CUtexref) except ?CUDA_ERROR_NOT_FOUND nogil> __cuTexRefGetMaxAnisotropy)(pmaxAniso, hTexRef)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__385, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 6082, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 6082, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":6081
 *     cuPythonInit()
 *     if __cuTexRefGetMaxAnisotropy == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuTexRefGetMaxAnisotropy" not found')
 *     err = (<CUresult (*)(int*, CUtexref) except ?CUDA_ERROR_NOT_FOUND nogil> __cuTexRefGetMaxAnisotropy)(pmaxAniso, hTexRef)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":6080
 *     global __cuTexRefGetMaxAnisotropy
 *     cuPythonInit()
 *     if __cuTexRefGetMaxAnisotropy == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuTexRefGetMaxAnisotropy" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":6083
 *         with gil:
 *             raise RuntimeError('Function "cuTexRefGetMaxAnisotropy" not found')
 *     err = (<CUresult (*)(int*, CUtexref) except ?CUDA_ERROR_NOT_FOUND nogil> __cuTexRefGetMaxAnisotropy)(pmaxAniso, hTexRef)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(int *, CUtexref))__pyx_v_4cuda_5_cuda_5ccuda___cuTexRefGetMaxAnisotropy)(__pyx_v_pmaxAniso, __pyx_v_hTexRef); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 6083, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":6084
 *             raise RuntimeError('Function "cuTexRefGetMaxAnisotropy" not found')
 *     err = (<CUresult (*)(int*, CUtexref) except ?CUDA_ERROR_NOT_FOUND nogil> __cuTexRefGetMaxAnisotropy)(pmaxAniso, hTexRef)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuTexRefGetBorderColor(float* pBorderColor, CUtexref hTexRef) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":6077
 *     return err
 * 
 * cdef CUresult _cuTexRefGetMaxAnisotropy(int* pmaxAniso, CUtexref hTexRef) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuTexRefGetMaxAnisotropy
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuTexRefGetMaxAnisotropy", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":6086
 *     return err
 * 
 * cdef CUresult _cuTexRefGetBorderColor(float* pBorderColor, CUtexref hTexRef) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuTexRefGetBorderColor
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuTexRefGetBorderColor(float *__pyx_v_pBorderColor, CUtexref __pyx_v_hTexRef) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuTexRefGetBorderColor", 1);
  __Pyx_TraceCall("_cuTexRefGetBorderColor", __pyx_f[0], 6086, 1, __PYX_ERR(0, 6086, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":6088
 * cdef CUresult _cuTexRefGetBorderColor(float* pBorderColor, CUtexref hTexRef) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuTexRefGetBorderColor
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuTexRefGetBorderColor == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 6088, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":6089
 *     global __cuTexRefGetBorderColor
 *     cuPythonInit()
 *     if __cuTexRefGetBorderColor == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuTexRefGetBorderColor" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuTexRefGetBorderColor == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":6090
 *     cuPythonInit()
 *     if __cuTexRefGetBorderColor == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuTexRefGetBorderColor" not found')
 *     err = (<CUresult (*)(float*, CUtexref) except ?CUDA_ERROR_NOT_FOUND nogil> __cuTexRefGetBorderColor)(pBorderColor, hTexRef)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":6091
 *     if __cuTexRefGetBorderColor == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuTexRefGetBorderColor" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(float*, CUtexref) except ?CUDA_ERROR_NOT_FOUND nogil> __cuTexRefGetBorderColor)(pBorderColor, hTexRef)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__386, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 6091, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 6091, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":6090
 *     cuPythonInit()
 *     if __cuTexRefGetBorderColor == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuTexRefGetBorderColor" not found')
 *     err = (<CUresult (*)(float*, CUtexref) except ?CUDA_ERROR_NOT_FOUND nogil> __cuTexRefGetBorderColor)(pBorderColor, hTexRef)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":6089
 *     global __cuTexRefGetBorderColor
 *     cuPythonInit()
 *     if __cuTexRefGetBorderColor == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuTexRefGetBorderColor" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":6092
 *         with gil:
 *             raise RuntimeError('Function "cuTexRefGetBorderColor" not found')
 *     err = (<CUresult (*)(float*, CUtexref) except ?CUDA_ERROR_NOT_FOUND nogil> __cuTexRefGetBorderColor)(pBorderColor, hTexRef)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(float *, CUtexref))__pyx_v_4cuda_5_cuda_5ccuda___cuTexRefGetBorderColor)(__pyx_v_pBorderColor, __pyx_v_hTexRef); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 6092, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":6093
 *             raise RuntimeError('Function "cuTexRefGetBorderColor" not found')
 *     err = (<CUresult (*)(float*, CUtexref) except ?CUDA_ERROR_NOT_FOUND nogil> __cuTexRefGetBorderColor)(pBorderColor, hTexRef)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuTexRefGetFlags(unsigned int* pFlags, CUtexref hTexRef) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":6086
 *     return err
 * 
 * cdef CUresult _cuTexRefGetBorderColor(float* pBorderColor, CUtexref hTexRef) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuTexRefGetBorderColor
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuTexRefGetBorderColor", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":6095
 *     return err
 * 
 * cdef CUresult _cuTexRefGetFlags(unsigned int* pFlags, CUtexref hTexRef) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuTexRefGetFlags
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuTexRefGetFlags(unsigned int *__pyx_v_pFlags, CUtexref __pyx_v_hTexRef) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuTexRefGetFlags", 1);
  __Pyx_TraceCall("_cuTexRefGetFlags", __pyx_f[0], 6095, 1, __PYX_ERR(0, 6095, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":6097
 * cdef CUresult _cuTexRefGetFlags(unsigned int* pFlags, CUtexref hTexRef) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuTexRefGetFlags
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuTexRefGetFlags == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 6097, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":6098
 *     global __cuTexRefGetFlags
 *     cuPythonInit()
 *     if __cuTexRefGetFlags == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuTexRefGetFlags" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuTexRefGetFlags == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":6099
 *     cuPythonInit()
 *     if __cuTexRefGetFlags == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuTexRefGetFlags" not found')
 *     err = (<CUresult (*)(unsigned int*, CUtexref) except ?CUDA_ERROR_NOT_FOUND nogil> __cuTexRefGetFlags)(pFlags, hTexRef)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":6100
 *     if __cuTexRefGetFlags == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuTexRefGetFlags" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(unsigned int*, CUtexref) except ?CUDA_ERROR_NOT_FOUND nogil> __cuTexRefGetFlags)(pFlags, hTexRef)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__387, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 6100, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 6100, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":6099
 *     cuPythonInit()
 *     if __cuTexRefGetFlags == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuTexRefGetFlags" not found')
 *     err = (<CUresult (*)(unsigned int*, CUtexref) except ?CUDA_ERROR_NOT_FOUND nogil> __cuTexRefGetFlags)(pFlags, hTexRef)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":6098
 *     global __cuTexRefGetFlags
 *     cuPythonInit()
 *     if __cuTexRefGetFlags == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuTexRefGetFlags" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":6101
 *         with gil:
 *             raise RuntimeError('Function "cuTexRefGetFlags" not found')
 *     err = (<CUresult (*)(unsigned int*, CUtexref) except ?CUDA_ERROR_NOT_FOUND nogil> __cuTexRefGetFlags)(pFlags, hTexRef)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(unsigned int *, CUtexref))__pyx_v_4cuda_5_cuda_5ccuda___cuTexRefGetFlags)(__pyx_v_pFlags, __pyx_v_hTexRef); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 6101, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":6102
 *             raise RuntimeError('Function "cuTexRefGetFlags" not found')
 *     err = (<CUresult (*)(unsigned int*, CUtexref) except ?CUDA_ERROR_NOT_FOUND nogil> __cuTexRefGetFlags)(pFlags, hTexRef)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuTexRefCreate(CUtexref* pTexRef) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":6095
 *     return err
 * 
 * cdef CUresult _cuTexRefGetFlags(unsigned int* pFlags, CUtexref hTexRef) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuTexRefGetFlags
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuTexRefGetFlags", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":6104
 *     return err
 * 
 * cdef CUresult _cuTexRefCreate(CUtexref* pTexRef) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuTexRefCreate
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuTexRefCreate(CUtexref *__pyx_v_pTexRef) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuTexRefCreate", 1);
  __Pyx_TraceCall("_cuTexRefCreate", __pyx_f[0], 6104, 1, __PYX_ERR(0, 6104, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":6106
 * cdef CUresult _cuTexRefCreate(CUtexref* pTexRef) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuTexRefCreate
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuTexRefCreate == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 6106, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":6107
 *     global __cuTexRefCreate
 *     cuPythonInit()
 *     if __cuTexRefCreate == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuTexRefCreate" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuTexRefCreate == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":6108
 *     cuPythonInit()
 *     if __cuTexRefCreate == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuTexRefCreate" not found')
 *     err = (<CUresult (*)(CUtexref*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuTexRefCreate)(pTexRef)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":6109
 *     if __cuTexRefCreate == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuTexRefCreate" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUtexref*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuTexRefCreate)(pTexRef)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__388, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 6109, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 6109, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":6108
 *     cuPythonInit()
 *     if __cuTexRefCreate == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuTexRefCreate" not found')
 *     err = (<CUresult (*)(CUtexref*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuTexRefCreate)(pTexRef)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":6107
 *     global __cuTexRefCreate
 *     cuPythonInit()
 *     if __cuTexRefCreate == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuTexRefCreate" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":6110
 *         with gil:
 *             raise RuntimeError('Function "cuTexRefCreate" not found')
 *     err = (<CUresult (*)(CUtexref*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuTexRefCreate)(pTexRef)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUtexref *))__pyx_v_4cuda_5_cuda_5ccuda___cuTexRefCreate)(__pyx_v_pTexRef); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 6110, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":6111
 *             raise RuntimeError('Function "cuTexRefCreate" not found')
 *     err = (<CUresult (*)(CUtexref*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuTexRefCreate)(pTexRef)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuTexRefDestroy(CUtexref hTexRef) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":6104
 *     return err
 * 
 * cdef CUresult _cuTexRefCreate(CUtexref* pTexRef) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuTexRefCreate
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuTexRefCreate", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":6113
 *     return err
 * 
 * cdef CUresult _cuTexRefDestroy(CUtexref hTexRef) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuTexRefDestroy
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuTexRefDestroy(CUtexref __pyx_v_hTexRef) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuTexRefDestroy", 1);
  __Pyx_TraceCall("_cuTexRefDestroy", __pyx_f[0], 6113, 1, __PYX_ERR(0, 6113, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":6115
 * cdef CUresult _cuTexRefDestroy(CUtexref hTexRef) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuTexRefDestroy
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuTexRefDestroy == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 6115, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":6116
 *     global __cuTexRefDestroy
 *     cuPythonInit()
 *     if __cuTexRefDestroy == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuTexRefDestroy" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuTexRefDestroy == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":6117
 *     cuPythonInit()
 *     if __cuTexRefDestroy == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuTexRefDestroy" not found')
 *     err = (<CUresult (*)(CUtexref) except ?CUDA_ERROR_NOT_FOUND nogil> __cuTexRefDestroy)(hTexRef)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":6118
 *     if __cuTexRefDestroy == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuTexRefDestroy" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUtexref) except ?CUDA_ERROR_NOT_FOUND nogil> __cuTexRefDestroy)(hTexRef)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__389, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 6118, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 6118, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":6117
 *     cuPythonInit()
 *     if __cuTexRefDestroy == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuTexRefDestroy" not found')
 *     err = (<CUresult (*)(CUtexref) except ?CUDA_ERROR_NOT_FOUND nogil> __cuTexRefDestroy)(hTexRef)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":6116
 *     global __cuTexRefDestroy
 *     cuPythonInit()
 *     if __cuTexRefDestroy == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuTexRefDestroy" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":6119
 *         with gil:
 *             raise RuntimeError('Function "cuTexRefDestroy" not found')
 *     err = (<CUresult (*)(CUtexref) except ?CUDA_ERROR_NOT_FOUND nogil> __cuTexRefDestroy)(hTexRef)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUtexref))__pyx_v_4cuda_5_cuda_5ccuda___cuTexRefDestroy)(__pyx_v_hTexRef); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 6119, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":6120
 *             raise RuntimeError('Function "cuTexRefDestroy" not found')
 *     err = (<CUresult (*)(CUtexref) except ?CUDA_ERROR_NOT_FOUND nogil> __cuTexRefDestroy)(hTexRef)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuSurfRefSetArray(CUsurfref hSurfRef, CUarray hArray, unsigned int Flags) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":6113
 *     return err
 * 
 * cdef CUresult _cuTexRefDestroy(CUtexref hTexRef) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuTexRefDestroy
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuTexRefDestroy", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":6122
 *     return err
 * 
 * cdef CUresult _cuSurfRefSetArray(CUsurfref hSurfRef, CUarray hArray, unsigned int Flags) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuSurfRefSetArray
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuSurfRefSetArray(CUsurfref __pyx_v_hSurfRef, CUarray __pyx_v_hArray, unsigned int __pyx_v_Flags) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuSurfRefSetArray", 1);
  __Pyx_TraceCall("_cuSurfRefSetArray", __pyx_f[0], 6122, 1, __PYX_ERR(0, 6122, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":6124
 * cdef CUresult _cuSurfRefSetArray(CUsurfref hSurfRef, CUarray hArray, unsigned int Flags) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuSurfRefSetArray
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuSurfRefSetArray == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 6124, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":6125
 *     global __cuSurfRefSetArray
 *     cuPythonInit()
 *     if __cuSurfRefSetArray == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuSurfRefSetArray" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuSurfRefSetArray == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":6126
 *     cuPythonInit()
 *     if __cuSurfRefSetArray == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuSurfRefSetArray" not found')
 *     err = (<CUresult (*)(CUsurfref, CUarray, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuSurfRefSetArray)(hSurfRef, hArray, Flags)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":6127
 *     if __cuSurfRefSetArray == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuSurfRefSetArray" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUsurfref, CUarray, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuSurfRefSetArray)(hSurfRef, hArray, Flags)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__390, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 6127, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 6127, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":6126
 *     cuPythonInit()
 *     if __cuSurfRefSetArray == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuSurfRefSetArray" not found')
 *     err = (<CUresult (*)(CUsurfref, CUarray, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuSurfRefSetArray)(hSurfRef, hArray, Flags)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":6125
 *     global __cuSurfRefSetArray
 *     cuPythonInit()
 *     if __cuSurfRefSetArray == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuSurfRefSetArray" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":6128
 *         with gil:
 *             raise RuntimeError('Function "cuSurfRefSetArray" not found')
 *     err = (<CUresult (*)(CUsurfref, CUarray, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuSurfRefSetArray)(hSurfRef, hArray, Flags)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUsurfref, CUarray, unsigned int))__pyx_v_4cuda_5_cuda_5ccuda___cuSurfRefSetArray)(__pyx_v_hSurfRef, __pyx_v_hArray, __pyx_v_Flags); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 6128, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":6129
 *             raise RuntimeError('Function "cuSurfRefSetArray" not found')
 *     err = (<CUresult (*)(CUsurfref, CUarray, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuSurfRefSetArray)(hSurfRef, hArray, Flags)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuSurfRefGetArray(CUarray* phArray, CUsurfref hSurfRef) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":6122
 *     return err
 * 
 * cdef CUresult _cuSurfRefSetArray(CUsurfref hSurfRef, CUarray hArray, unsigned int Flags) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuSurfRefSetArray
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuSurfRefSetArray", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":6131
 *     return err
 * 
 * cdef CUresult _cuSurfRefGetArray(CUarray* phArray, CUsurfref hSurfRef) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuSurfRefGetArray
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuSurfRefGetArray(CUarray *__pyx_v_phArray, CUsurfref __pyx_v_hSurfRef) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuSurfRefGetArray", 1);
  __Pyx_TraceCall("_cuSurfRefGetArray", __pyx_f[0], 6131, 1, __PYX_ERR(0, 6131, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":6133
 * cdef CUresult _cuSurfRefGetArray(CUarray* phArray, CUsurfref hSurfRef) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuSurfRefGetArray
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuSurfRefGetArray == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 6133, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":6134
 *     global __cuSurfRefGetArray
 *     cuPythonInit()
 *     if __cuSurfRefGetArray == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuSurfRefGetArray" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuSurfRefGetArray == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":6135
 *     cuPythonInit()
 *     if __cuSurfRefGetArray == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuSurfRefGetArray" not found')
 *     err = (<CUresult (*)(CUarray*, CUsurfref) except ?CUDA_ERROR_NOT_FOUND nogil> __cuSurfRefGetArray)(phArray, hSurfRef)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":6136
 *     if __cuSurfRefGetArray == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuSurfRefGetArray" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUarray*, CUsurfref) except ?CUDA_ERROR_NOT_FOUND nogil> __cuSurfRefGetArray)(phArray, hSurfRef)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__391, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 6136, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 6136, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":6135
 *     cuPythonInit()
 *     if __cuSurfRefGetArray == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuSurfRefGetArray" not found')
 *     err = (<CUresult (*)(CUarray*, CUsurfref) except ?CUDA_ERROR_NOT_FOUND nogil> __cuSurfRefGetArray)(phArray, hSurfRef)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":6134
 *     global __cuSurfRefGetArray
 *     cuPythonInit()
 *     if __cuSurfRefGetArray == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuSurfRefGetArray" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":6137
 *         with gil:
 *             raise RuntimeError('Function "cuSurfRefGetArray" not found')
 *     err = (<CUresult (*)(CUarray*, CUsurfref) except ?CUDA_ERROR_NOT_FOUND nogil> __cuSurfRefGetArray)(phArray, hSurfRef)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUarray *, CUsurfref))__pyx_v_4cuda_5_cuda_5ccuda___cuSurfRefGetArray)(__pyx_v_phArray, __pyx_v_hSurfRef); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 6137, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":6138
 *             raise RuntimeError('Function "cuSurfRefGetArray" not found')
 *     err = (<CUresult (*)(CUarray*, CUsurfref) except ?CUDA_ERROR_NOT_FOUND nogil> __cuSurfRefGetArray)(phArray, hSurfRef)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuTexObjectCreate(CUtexObject* pTexObject, const CUDA_RESOURCE_DESC* pResDesc, const CUDA_TEXTURE_DESC* pTexDesc, const CUDA_RESOURCE_VIEW_DESC* pResViewDesc) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":6131
 *     return err
 * 
 * cdef CUresult _cuSurfRefGetArray(CUarray* phArray, CUsurfref hSurfRef) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuSurfRefGetArray
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuSurfRefGetArray", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":6140
 *     return err
 * 
 * cdef CUresult _cuTexObjectCreate(CUtexObject* pTexObject, const CUDA_RESOURCE_DESC* pResDesc, const CUDA_TEXTURE_DESC* pTexDesc, const CUDA_RESOURCE_VIEW_DESC* pResViewDesc) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuTexObjectCreate
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuTexObjectCreate(CUtexObject *__pyx_v_pTexObject, CUDA_RESOURCE_DESC const *__pyx_v_pResDesc, CUDA_TEXTURE_DESC const *__pyx_v_pTexDesc, CUDA_RESOURCE_VIEW_DESC const *__pyx_v_pResViewDesc) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuTexObjectCreate", 1);
  __Pyx_TraceCall("_cuTexObjectCreate", __pyx_f[0], 6140, 1, __PYX_ERR(0, 6140, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":6142
 * cdef CUresult _cuTexObjectCreate(CUtexObject* pTexObject, const CUDA_RESOURCE_DESC* pResDesc, const CUDA_TEXTURE_DESC* pTexDesc, const CUDA_RESOURCE_VIEW_DESC* pResViewDesc) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuTexObjectCreate
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuTexObjectCreate == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 6142, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":6143
 *     global __cuTexObjectCreate
 *     cuPythonInit()
 *     if __cuTexObjectCreate == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuTexObjectCreate" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuTexObjectCreate == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":6144
 *     cuPythonInit()
 *     if __cuTexObjectCreate == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuTexObjectCreate" not found')
 *     err = (<CUresult (*)(CUtexObject*, const CUDA_RESOURCE_DESC*, const CUDA_TEXTURE_DESC*, const CUDA_RESOURCE_VIEW_DESC*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuTexObjectCreate)(pTexObject, pResDesc, pTexDesc, pResViewDesc)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":6145
 *     if __cuTexObjectCreate == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuTexObjectCreate" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUtexObject*, const CUDA_RESOURCE_DESC*, const CUDA_TEXTURE_DESC*, const CUDA_RESOURCE_VIEW_DESC*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuTexObjectCreate)(pTexObject, pResDesc, pTexDesc, pResViewDesc)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__392, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 6145, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 6145, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":6144
 *     cuPythonInit()
 *     if __cuTexObjectCreate == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuTexObjectCreate" not found')
 *     err = (<CUresult (*)(CUtexObject*, const CUDA_RESOURCE_DESC*, const CUDA_TEXTURE_DESC*, const CUDA_RESOURCE_VIEW_DESC*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuTexObjectCreate)(pTexObject, pResDesc, pTexDesc, pResViewDesc)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":6143
 *     global __cuTexObjectCreate
 *     cuPythonInit()
 *     if __cuTexObjectCreate == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuTexObjectCreate" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":6146
 *         with gil:
 *             raise RuntimeError('Function "cuTexObjectCreate" not found')
 *     err = (<CUresult (*)(CUtexObject*, const CUDA_RESOURCE_DESC*, const CUDA_TEXTURE_DESC*, const CUDA_RESOURCE_VIEW_DESC*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuTexObjectCreate)(pTexObject, pResDesc, pTexDesc, pResViewDesc)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUtexObject *, CUDA_RESOURCE_DESC const *, CUDA_TEXTURE_DESC const *, CUDA_RESOURCE_VIEW_DESC const *))__pyx_v_4cuda_5_cuda_5ccuda___cuTexObjectCreate)(__pyx_v_pTexObject, __pyx_v_pResDesc, __pyx_v_pTexDesc, __pyx_v_pResViewDesc); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 6146, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":6147
 *             raise RuntimeError('Function "cuTexObjectCreate" not found')
 *     err = (<CUresult (*)(CUtexObject*, const CUDA_RESOURCE_DESC*, const CUDA_TEXTURE_DESC*, const CUDA_RESOURCE_VIEW_DESC*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuTexObjectCreate)(pTexObject, pResDesc, pTexDesc, pResViewDesc)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuTexObjectDestroy(CUtexObject texObject) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":6140
 *     return err
 * 
 * cdef CUresult _cuTexObjectCreate(CUtexObject* pTexObject, const CUDA_RESOURCE_DESC* pResDesc, const CUDA_TEXTURE_DESC* pTexDesc, const CUDA_RESOURCE_VIEW_DESC* pResViewDesc) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuTexObjectCreate
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuTexObjectCreate", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":6149
 *     return err
 * 
 * cdef CUresult _cuTexObjectDestroy(CUtexObject texObject) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuTexObjectDestroy
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuTexObjectDestroy(CUtexObject __pyx_v_texObject) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuTexObjectDestroy", 1);
  __Pyx_TraceCall("_cuTexObjectDestroy", __pyx_f[0], 6149, 1, __PYX_ERR(0, 6149, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":6151
 * cdef CUresult _cuTexObjectDestroy(CUtexObject texObject) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuTexObjectDestroy
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuTexObjectDestroy == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 6151, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":6152
 *     global __cuTexObjectDestroy
 *     cuPythonInit()
 *     if __cuTexObjectDestroy == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuTexObjectDestroy" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuTexObjectDestroy == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":6153
 *     cuPythonInit()
 *     if __cuTexObjectDestroy == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuTexObjectDestroy" not found')
 *     err = (<CUresult (*)(CUtexObject) except ?CUDA_ERROR_NOT_FOUND nogil> __cuTexObjectDestroy)(texObject)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":6154
 *     if __cuTexObjectDestroy == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuTexObjectDestroy" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUtexObject) except ?CUDA_ERROR_NOT_FOUND nogil> __cuTexObjectDestroy)(texObject)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__393, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 6154, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 6154, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":6153
 *     cuPythonInit()
 *     if __cuTexObjectDestroy == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuTexObjectDestroy" not found')
 *     err = (<CUresult (*)(CUtexObject) except ?CUDA_ERROR_NOT_FOUND nogil> __cuTexObjectDestroy)(texObject)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":6152
 *     global __cuTexObjectDestroy
 *     cuPythonInit()
 *     if __cuTexObjectDestroy == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuTexObjectDestroy" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":6155
 *         with gil:
 *             raise RuntimeError('Function "cuTexObjectDestroy" not found')
 *     err = (<CUresult (*)(CUtexObject) except ?CUDA_ERROR_NOT_FOUND nogil> __cuTexObjectDestroy)(texObject)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUtexObject))__pyx_v_4cuda_5_cuda_5ccuda___cuTexObjectDestroy)(__pyx_v_texObject); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 6155, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":6156
 *             raise RuntimeError('Function "cuTexObjectDestroy" not found')
 *     err = (<CUresult (*)(CUtexObject) except ?CUDA_ERROR_NOT_FOUND nogil> __cuTexObjectDestroy)(texObject)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuTexObjectGetResourceDesc(CUDA_RESOURCE_DESC* pResDesc, CUtexObject texObject) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":6149
 *     return err
 * 
 * cdef CUresult _cuTexObjectDestroy(CUtexObject texObject) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuTexObjectDestroy
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuTexObjectDestroy", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":6158
 *     return err
 * 
 * cdef CUresult _cuTexObjectGetResourceDesc(CUDA_RESOURCE_DESC* pResDesc, CUtexObject texObject) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuTexObjectGetResourceDesc
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuTexObjectGetResourceDesc(CUDA_RESOURCE_DESC *__pyx_v_pResDesc, CUtexObject __pyx_v_texObject) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuTexObjectGetResourceDesc", 1);
  __Pyx_TraceCall("_cuTexObjectGetResourceDesc", __pyx_f[0], 6158, 1, __PYX_ERR(0, 6158, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":6160
 * cdef CUresult _cuTexObjectGetResourceDesc(CUDA_RESOURCE_DESC* pResDesc, CUtexObject texObject) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuTexObjectGetResourceDesc
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuTexObjectGetResourceDesc == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 6160, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":6161
 *     global __cuTexObjectGetResourceDesc
 *     cuPythonInit()
 *     if __cuTexObjectGetResourceDesc == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuTexObjectGetResourceDesc" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuTexObjectGetResourceDesc == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":6162
 *     cuPythonInit()
 *     if __cuTexObjectGetResourceDesc == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuTexObjectGetResourceDesc" not found')
 *     err = (<CUresult (*)(CUDA_RESOURCE_DESC*, CUtexObject) except ?CUDA_ERROR_NOT_FOUND nogil> __cuTexObjectGetResourceDesc)(pResDesc, texObject)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":6163
 *     if __cuTexObjectGetResourceDesc == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuTexObjectGetResourceDesc" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUDA_RESOURCE_DESC*, CUtexObject) except ?CUDA_ERROR_NOT_FOUND nogil> __cuTexObjectGetResourceDesc)(pResDesc, texObject)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__394, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 6163, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 6163, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":6162
 *     cuPythonInit()
 *     if __cuTexObjectGetResourceDesc == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuTexObjectGetResourceDesc" not found')
 *     err = (<CUresult (*)(CUDA_RESOURCE_DESC*, CUtexObject) except ?CUDA_ERROR_NOT_FOUND nogil> __cuTexObjectGetResourceDesc)(pResDesc, texObject)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":6161
 *     global __cuTexObjectGetResourceDesc
 *     cuPythonInit()
 *     if __cuTexObjectGetResourceDesc == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuTexObjectGetResourceDesc" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":6164
 *         with gil:
 *             raise RuntimeError('Function "cuTexObjectGetResourceDesc" not found')
 *     err = (<CUresult (*)(CUDA_RESOURCE_DESC*, CUtexObject) except ?CUDA_ERROR_NOT_FOUND nogil> __cuTexObjectGetResourceDesc)(pResDesc, texObject)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUDA_RESOURCE_DESC *, CUtexObject))__pyx_v_4cuda_5_cuda_5ccuda___cuTexObjectGetResourceDesc)(__pyx_v_pResDesc, __pyx_v_texObject); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 6164, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":6165
 *             raise RuntimeError('Function "cuTexObjectGetResourceDesc" not found')
 *     err = (<CUresult (*)(CUDA_RESOURCE_DESC*, CUtexObject) except ?CUDA_ERROR_NOT_FOUND nogil> __cuTexObjectGetResourceDesc)(pResDesc, texObject)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuTexObjectGetTextureDesc(CUDA_TEXTURE_DESC* pTexDesc, CUtexObject texObject) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":6158
 *     return err
 * 
 * cdef CUresult _cuTexObjectGetResourceDesc(CUDA_RESOURCE_DESC* pResDesc, CUtexObject texObject) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuTexObjectGetResourceDesc
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuTexObjectGetResourceDesc", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":6167
 *     return err
 * 
 * cdef CUresult _cuTexObjectGetTextureDesc(CUDA_TEXTURE_DESC* pTexDesc, CUtexObject texObject) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuTexObjectGetTextureDesc
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuTexObjectGetTextureDesc(CUDA_TEXTURE_DESC *__pyx_v_pTexDesc, CUtexObject __pyx_v_texObject) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuTexObjectGetTextureDesc", 1);
  __Pyx_TraceCall("_cuTexObjectGetTextureDesc", __pyx_f[0], 6167, 1, __PYX_ERR(0, 6167, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":6169
 * cdef CUresult _cuTexObjectGetTextureDesc(CUDA_TEXTURE_DESC* pTexDesc, CUtexObject texObject) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuTexObjectGetTextureDesc
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuTexObjectGetTextureDesc == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 6169, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":6170
 *     global __cuTexObjectGetTextureDesc
 *     cuPythonInit()
 *     if __cuTexObjectGetTextureDesc == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuTexObjectGetTextureDesc" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuTexObjectGetTextureDesc == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":6171
 *     cuPythonInit()
 *     if __cuTexObjectGetTextureDesc == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuTexObjectGetTextureDesc" not found')
 *     err = (<CUresult (*)(CUDA_TEXTURE_DESC*, CUtexObject) except ?CUDA_ERROR_NOT_FOUND nogil> __cuTexObjectGetTextureDesc)(pTexDesc, texObject)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":6172
 *     if __cuTexObjectGetTextureDesc == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuTexObjectGetTextureDesc" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUDA_TEXTURE_DESC*, CUtexObject) except ?CUDA_ERROR_NOT_FOUND nogil> __cuTexObjectGetTextureDesc)(pTexDesc, texObject)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__395, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 6172, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 6172, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":6171
 *     cuPythonInit()
 *     if __cuTexObjectGetTextureDesc == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuTexObjectGetTextureDesc" not found')
 *     err = (<CUresult (*)(CUDA_TEXTURE_DESC*, CUtexObject) except ?CUDA_ERROR_NOT_FOUND nogil> __cuTexObjectGetTextureDesc)(pTexDesc, texObject)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":6170
 *     global __cuTexObjectGetTextureDesc
 *     cuPythonInit()
 *     if __cuTexObjectGetTextureDesc == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuTexObjectGetTextureDesc" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":6173
 *         with gil:
 *             raise RuntimeError('Function "cuTexObjectGetTextureDesc" not found')
 *     err = (<CUresult (*)(CUDA_TEXTURE_DESC*, CUtexObject) except ?CUDA_ERROR_NOT_FOUND nogil> __cuTexObjectGetTextureDesc)(pTexDesc, texObject)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUDA_TEXTURE_DESC *, CUtexObject))__pyx_v_4cuda_5_cuda_5ccuda___cuTexObjectGetTextureDesc)(__pyx_v_pTexDesc, __pyx_v_texObject); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 6173, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":6174
 *             raise RuntimeError('Function "cuTexObjectGetTextureDesc" not found')
 *     err = (<CUresult (*)(CUDA_TEXTURE_DESC*, CUtexObject) except ?CUDA_ERROR_NOT_FOUND nogil> __cuTexObjectGetTextureDesc)(pTexDesc, texObject)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuTexObjectGetResourceViewDesc(CUDA_RESOURCE_VIEW_DESC* pResViewDesc, CUtexObject texObject) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":6167
 *     return err
 * 
 * cdef CUresult _cuTexObjectGetTextureDesc(CUDA_TEXTURE_DESC* pTexDesc, CUtexObject texObject) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuTexObjectGetTextureDesc
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuTexObjectGetTextureDesc", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":6176
 *     return err
 * 
 * cdef CUresult _cuTexObjectGetResourceViewDesc(CUDA_RESOURCE_VIEW_DESC* pResViewDesc, CUtexObject texObject) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuTexObjectGetResourceViewDesc
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuTexObjectGetResourceViewDesc(CUDA_RESOURCE_VIEW_DESC *__pyx_v_pResViewDesc, CUtexObject __pyx_v_texObject) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuTexObjectGetResourceViewDesc", 1);
  __Pyx_TraceCall("_cuTexObjectGetResourceViewDesc", __pyx_f[0], 6176, 1, __PYX_ERR(0, 6176, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":6178
 * cdef CUresult _cuTexObjectGetResourceViewDesc(CUDA_RESOURCE_VIEW_DESC* pResViewDesc, CUtexObject texObject) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuTexObjectGetResourceViewDesc
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuTexObjectGetResourceViewDesc == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 6178, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":6179
 *     global __cuTexObjectGetResourceViewDesc
 *     cuPythonInit()
 *     if __cuTexObjectGetResourceViewDesc == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuTexObjectGetResourceViewDesc" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuTexObjectGetResourceViewDesc == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":6180
 *     cuPythonInit()
 *     if __cuTexObjectGetResourceViewDesc == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuTexObjectGetResourceViewDesc" not found')
 *     err = (<CUresult (*)(CUDA_RESOURCE_VIEW_DESC*, CUtexObject) except ?CUDA_ERROR_NOT_FOUND nogil> __cuTexObjectGetResourceViewDesc)(pResViewDesc, texObject)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":6181
 *     if __cuTexObjectGetResourceViewDesc == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuTexObjectGetResourceViewDesc" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUDA_RESOURCE_VIEW_DESC*, CUtexObject) except ?CUDA_ERROR_NOT_FOUND nogil> __cuTexObjectGetResourceViewDesc)(pResViewDesc, texObject)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__396, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 6181, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 6181, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":6180
 *     cuPythonInit()
 *     if __cuTexObjectGetResourceViewDesc == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuTexObjectGetResourceViewDesc" not found')
 *     err = (<CUresult (*)(CUDA_RESOURCE_VIEW_DESC*, CUtexObject) except ?CUDA_ERROR_NOT_FOUND nogil> __cuTexObjectGetResourceViewDesc)(pResViewDesc, texObject)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":6179
 *     global __cuTexObjectGetResourceViewDesc
 *     cuPythonInit()
 *     if __cuTexObjectGetResourceViewDesc == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuTexObjectGetResourceViewDesc" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":6182
 *         with gil:
 *             raise RuntimeError('Function "cuTexObjectGetResourceViewDesc" not found')
 *     err = (<CUresult (*)(CUDA_RESOURCE_VIEW_DESC*, CUtexObject) except ?CUDA_ERROR_NOT_FOUND nogil> __cuTexObjectGetResourceViewDesc)(pResViewDesc, texObject)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUDA_RESOURCE_VIEW_DESC *, CUtexObject))__pyx_v_4cuda_5_cuda_5ccuda___cuTexObjectGetResourceViewDesc)(__pyx_v_pResViewDesc, __pyx_v_texObject); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 6182, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":6183
 *             raise RuntimeError('Function "cuTexObjectGetResourceViewDesc" not found')
 *     err = (<CUresult (*)(CUDA_RESOURCE_VIEW_DESC*, CUtexObject) except ?CUDA_ERROR_NOT_FOUND nogil> __cuTexObjectGetResourceViewDesc)(pResViewDesc, texObject)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuSurfObjectCreate(CUsurfObject* pSurfObject, const CUDA_RESOURCE_DESC* pResDesc) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":6176
 *     return err
 * 
 * cdef CUresult _cuTexObjectGetResourceViewDesc(CUDA_RESOURCE_VIEW_DESC* pResViewDesc, CUtexObject texObject) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuTexObjectGetResourceViewDesc
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuTexObjectGetResourceViewDesc", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":6185
 *     return err
 * 
 * cdef CUresult _cuSurfObjectCreate(CUsurfObject* pSurfObject, const CUDA_RESOURCE_DESC* pResDesc) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuSurfObjectCreate
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuSurfObjectCreate(CUsurfObject *__pyx_v_pSurfObject, CUDA_RESOURCE_DESC const *__pyx_v_pResDesc) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuSurfObjectCreate", 1);
  __Pyx_TraceCall("_cuSurfObjectCreate", __pyx_f[0], 6185, 1, __PYX_ERR(0, 6185, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":6187
 * cdef CUresult _cuSurfObjectCreate(CUsurfObject* pSurfObject, const CUDA_RESOURCE_DESC* pResDesc) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuSurfObjectCreate
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuSurfObjectCreate == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 6187, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":6188
 *     global __cuSurfObjectCreate
 *     cuPythonInit()
 *     if __cuSurfObjectCreate == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuSurfObjectCreate" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuSurfObjectCreate == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":6189
 *     cuPythonInit()
 *     if __cuSurfObjectCreate == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuSurfObjectCreate" not found')
 *     err = (<CUresult (*)(CUsurfObject*, const CUDA_RESOURCE_DESC*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuSurfObjectCreate)(pSurfObject, pResDesc)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":6190
 *     if __cuSurfObjectCreate == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuSurfObjectCreate" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUsurfObject*, const CUDA_RESOURCE_DESC*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuSurfObjectCreate)(pSurfObject, pResDesc)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__397, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 6190, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 6190, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":6189
 *     cuPythonInit()
 *     if __cuSurfObjectCreate == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuSurfObjectCreate" not found')
 *     err = (<CUresult (*)(CUsurfObject*, const CUDA_RESOURCE_DESC*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuSurfObjectCreate)(pSurfObject, pResDesc)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":6188
 *     global __cuSurfObjectCreate
 *     cuPythonInit()
 *     if __cuSurfObjectCreate == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuSurfObjectCreate" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":6191
 *         with gil:
 *             raise RuntimeError('Function "cuSurfObjectCreate" not found')
 *     err = (<CUresult (*)(CUsurfObject*, const CUDA_RESOURCE_DESC*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuSurfObjectCreate)(pSurfObject, pResDesc)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUsurfObject *, CUDA_RESOURCE_DESC const *))__pyx_v_4cuda_5_cuda_5ccuda___cuSurfObjectCreate)(__pyx_v_pSurfObject, __pyx_v_pResDesc); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 6191, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":6192
 *             raise RuntimeError('Function "cuSurfObjectCreate" not found')
 *     err = (<CUresult (*)(CUsurfObject*, const CUDA_RESOURCE_DESC*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuSurfObjectCreate)(pSurfObject, pResDesc)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuSurfObjectDestroy(CUsurfObject surfObject) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":6185
 *     return err
 * 
 * cdef CUresult _cuSurfObjectCreate(CUsurfObject* pSurfObject, const CUDA_RESOURCE_DESC* pResDesc) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuSurfObjectCreate
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuSurfObjectCreate", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":6194
 *     return err
 * 
 * cdef CUresult _cuSurfObjectDestroy(CUsurfObject surfObject) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuSurfObjectDestroy
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuSurfObjectDestroy(CUsurfObject __pyx_v_surfObject) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuSurfObjectDestroy", 1);
  __Pyx_TraceCall("_cuSurfObjectDestroy", __pyx_f[0], 6194, 1, __PYX_ERR(0, 6194, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":6196
 * cdef CUresult _cuSurfObjectDestroy(CUsurfObject surfObject) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuSurfObjectDestroy
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuSurfObjectDestroy == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 6196, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":6197
 *     global __cuSurfObjectDestroy
 *     cuPythonInit()
 *     if __cuSurfObjectDestroy == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuSurfObjectDestroy" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuSurfObjectDestroy == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":6198
 *     cuPythonInit()
 *     if __cuSurfObjectDestroy == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuSurfObjectDestroy" not found')
 *     err = (<CUresult (*)(CUsurfObject) except ?CUDA_ERROR_NOT_FOUND nogil> __cuSurfObjectDestroy)(surfObject)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":6199
 *     if __cuSurfObjectDestroy == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuSurfObjectDestroy" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUsurfObject) except ?CUDA_ERROR_NOT_FOUND nogil> __cuSurfObjectDestroy)(surfObject)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__398, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 6199, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 6199, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":6198
 *     cuPythonInit()
 *     if __cuSurfObjectDestroy == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuSurfObjectDestroy" not found')
 *     err = (<CUresult (*)(CUsurfObject) except ?CUDA_ERROR_NOT_FOUND nogil> __cuSurfObjectDestroy)(surfObject)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":6197
 *     global __cuSurfObjectDestroy
 *     cuPythonInit()
 *     if __cuSurfObjectDestroy == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuSurfObjectDestroy" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":6200
 *         with gil:
 *             raise RuntimeError('Function "cuSurfObjectDestroy" not found')
 *     err = (<CUresult (*)(CUsurfObject) except ?CUDA_ERROR_NOT_FOUND nogil> __cuSurfObjectDestroy)(surfObject)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUsurfObject))__pyx_v_4cuda_5_cuda_5ccuda___cuSurfObjectDestroy)(__pyx_v_surfObject); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 6200, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":6201
 *             raise RuntimeError('Function "cuSurfObjectDestroy" not found')
 *     err = (<CUresult (*)(CUsurfObject) except ?CUDA_ERROR_NOT_FOUND nogil> __cuSurfObjectDestroy)(surfObject)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuSurfObjectGetResourceDesc(CUDA_RESOURCE_DESC* pResDesc, CUsurfObject surfObject) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":6194
 *     return err
 * 
 * cdef CUresult _cuSurfObjectDestroy(CUsurfObject surfObject) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuSurfObjectDestroy
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuSurfObjectDestroy", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":6203
 *     return err
 * 
 * cdef CUresult _cuSurfObjectGetResourceDesc(CUDA_RESOURCE_DESC* pResDesc, CUsurfObject surfObject) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuSurfObjectGetResourceDesc
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuSurfObjectGetResourceDesc(CUDA_RESOURCE_DESC *__pyx_v_pResDesc, CUsurfObject __pyx_v_surfObject) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuSurfObjectGetResourceDesc", 1);
  __Pyx_TraceCall("_cuSurfObjectGetResourceDesc", __pyx_f[0], 6203, 1, __PYX_ERR(0, 6203, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":6205
 * cdef CUresult _cuSurfObjectGetResourceDesc(CUDA_RESOURCE_DESC* pResDesc, CUsurfObject surfObject) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuSurfObjectGetResourceDesc
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuSurfObjectGetResourceDesc == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 6205, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":6206
 *     global __cuSurfObjectGetResourceDesc
 *     cuPythonInit()
 *     if __cuSurfObjectGetResourceDesc == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuSurfObjectGetResourceDesc" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuSurfObjectGetResourceDesc == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":6207
 *     cuPythonInit()
 *     if __cuSurfObjectGetResourceDesc == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuSurfObjectGetResourceDesc" not found')
 *     err = (<CUresult (*)(CUDA_RESOURCE_DESC*, CUsurfObject) except ?CUDA_ERROR_NOT_FOUND nogil> __cuSurfObjectGetResourceDesc)(pResDesc, surfObject)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":6208
 *     if __cuSurfObjectGetResourceDesc == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuSurfObjectGetResourceDesc" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUDA_RESOURCE_DESC*, CUsurfObject) except ?CUDA_ERROR_NOT_FOUND nogil> __cuSurfObjectGetResourceDesc)(pResDesc, surfObject)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__399, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 6208, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 6208, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":6207
 *     cuPythonInit()
 *     if __cuSurfObjectGetResourceDesc == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuSurfObjectGetResourceDesc" not found')
 *     err = (<CUresult (*)(CUDA_RESOURCE_DESC*, CUsurfObject) except ?CUDA_ERROR_NOT_FOUND nogil> __cuSurfObjectGetResourceDesc)(pResDesc, surfObject)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":6206
 *     global __cuSurfObjectGetResourceDesc
 *     cuPythonInit()
 *     if __cuSurfObjectGetResourceDesc == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuSurfObjectGetResourceDesc" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":6209
 *         with gil:
 *             raise RuntimeError('Function "cuSurfObjectGetResourceDesc" not found')
 *     err = (<CUresult (*)(CUDA_RESOURCE_DESC*, CUsurfObject) except ?CUDA_ERROR_NOT_FOUND nogil> __cuSurfObjectGetResourceDesc)(pResDesc, surfObject)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUDA_RESOURCE_DESC *, CUsurfObject))__pyx_v_4cuda_5_cuda_5ccuda___cuSurfObjectGetResourceDesc)(__pyx_v_pResDesc, __pyx_v_surfObject); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 6209, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":6210
 *             raise RuntimeError('Function "cuSurfObjectGetResourceDesc" not found')
 *     err = (<CUresult (*)(CUDA_RESOURCE_DESC*, CUsurfObject) except ?CUDA_ERROR_NOT_FOUND nogil> __cuSurfObjectGetResourceDesc)(pResDesc, surfObject)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuTensorMapEncodeTiled(CUtensorMap* tensorMap, CUtensorMapDataType tensorDataType, cuuint32_t tensorRank, void* globalAddress, const cuuint64_t* globalDim, const cuuint64_t* globalStrides, const cuuint32_t* boxDim, const cuuint32_t* elementStrides, CUtensorMapInterleave interleave, CUtensorMapSwizzle swizzle, CUtensorMapL2promotion l2Promotion, CUtensorMapFloatOOBfill oobFill) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":6203
 *     return err
 * 
 * cdef CUresult _cuSurfObjectGetResourceDesc(CUDA_RESOURCE_DESC* pResDesc, CUsurfObject surfObject) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuSurfObjectGetResourceDesc
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuSurfObjectGetResourceDesc", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":6212
 *     return err
 * 
 * cdef CUresult _cuTensorMapEncodeTiled(CUtensorMap* tensorMap, CUtensorMapDataType tensorDataType, cuuint32_t tensorRank, void* globalAddress, const cuuint64_t* globalDim, const cuuint64_t* globalStrides, const cuuint32_t* boxDim, const cuuint32_t* elementStrides, CUtensorMapInterleave interleave, CUtensorMapSwizzle swizzle, CUtensorMapL2promotion l2Promotion, CUtensorMapFloatOOBfill oobFill) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuTensorMapEncodeTiled
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuTensorMapEncodeTiled(CUtensorMap *__pyx_v_tensorMap, CUtensorMapDataType __pyx_v_tensorDataType, cuuint32_t __pyx_v_tensorRank, void *__pyx_v_globalAddress, cuuint64_t const *__pyx_v_globalDim, cuuint64_t const *__pyx_v_globalStrides, cuuint32_t const *__pyx_v_boxDim, cuuint32_t const *__pyx_v_elementStrides, CUtensorMapInterleave __pyx_v_interleave, CUtensorMapSwizzle __pyx_v_swizzle, CUtensorMapL2promotion __pyx_v_l2Promotion, CUtensorMapFloatOOBfill __pyx_v_oobFill) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuTensorMapEncodeTiled", 1);
  __Pyx_TraceCall("_cuTensorMapEncodeTiled", __pyx_f[0], 6212, 1, __PYX_ERR(0, 6212, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":6214
 * cdef CUresult _cuTensorMapEncodeTiled(CUtensorMap* tensorMap, CUtensorMapDataType tensorDataType, cuuint32_t tensorRank, void* globalAddress, const cuuint64_t* globalDim, const cuuint64_t* globalStrides, const cuuint32_t* boxDim, const cuuint32_t* elementStrides, CUtensorMapInterleave interleave, CUtensorMapSwizzle swizzle, CUtensorMapL2promotion l2Promotion, CUtensorMapFloatOOBfill oobFill) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuTensorMapEncodeTiled
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuTensorMapEncodeTiled == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 6214, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":6215
 *     global __cuTensorMapEncodeTiled
 *     cuPythonInit()
 *     if __cuTensorMapEncodeTiled == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuTensorMapEncodeTiled" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuTensorMapEncodeTiled == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":6216
 *     cuPythonInit()
 *     if __cuTensorMapEncodeTiled == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuTensorMapEncodeTiled" not found')
 *     err = (<CUresult (*)(CUtensorMap*, CUtensorMapDataType, cuuint32_t, void*, const cuuint64_t*, const cuuint64_t*, const cuuint32_t*, const cuuint32_t*, CUtensorMapInterleave, CUtensorMapSwizzle, CUtensorMapL2promotion, CUtensorMapFloatOOBfill) except ?CUDA_ERROR_NOT_FOUND nogil> __cuTensorMapEncodeTiled)(tensorMap, tensorDataType, tensorRank, globalAddress, globalDim, globalStrides, boxDim, elementStrides, interleave, swizzle, l2Promotion, oobFill)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":6217
 *     if __cuTensorMapEncodeTiled == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuTensorMapEncodeTiled" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUtensorMap*, CUtensorMapDataType, cuuint32_t, void*, const cuuint64_t*, const cuuint64_t*, const cuuint32_t*, const cuuint32_t*, CUtensorMapInterleave, CUtensorMapSwizzle, CUtensorMapL2promotion, CUtensorMapFloatOOBfill) except ?CUDA_ERROR_NOT_FOUND nogil> __cuTensorMapEncodeTiled)(tensorMap, tensorDataType, tensorRank, globalAddress, globalDim, globalStrides, boxDim, elementStrides, interleave, swizzle, l2Promotion, oobFill)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__400, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 6217, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 6217, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":6216
 *     cuPythonInit()
 *     if __cuTensorMapEncodeTiled == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuTensorMapEncodeTiled" not found')
 *     err = (<CUresult (*)(CUtensorMap*, CUtensorMapDataType, cuuint32_t, void*, const cuuint64_t*, const cuuint64_t*, const cuuint32_t*, const cuuint32_t*, CUtensorMapInterleave, CUtensorMapSwizzle, CUtensorMapL2promotion, CUtensorMapFloatOOBfill) except ?CUDA_ERROR_NOT_FOUND nogil> __cuTensorMapEncodeTiled)(tensorMap, tensorDataType, tensorRank, globalAddress, globalDim, globalStrides, boxDim, elementStrides, interleave, swizzle, l2Promotion, oobFill)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":6215
 *     global __cuTensorMapEncodeTiled
 *     cuPythonInit()
 *     if __cuTensorMapEncodeTiled == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuTensorMapEncodeTiled" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":6218
 *         with gil:
 *             raise RuntimeError('Function "cuTensorMapEncodeTiled" not found')
 *     err = (<CUresult (*)(CUtensorMap*, CUtensorMapDataType, cuuint32_t, void*, const cuuint64_t*, const cuuint64_t*, const cuuint32_t*, const cuuint32_t*, CUtensorMapInterleave, CUtensorMapSwizzle, CUtensorMapL2promotion, CUtensorMapFloatOOBfill) except ?CUDA_ERROR_NOT_FOUND nogil> __cuTensorMapEncodeTiled)(tensorMap, tensorDataType, tensorRank, globalAddress, globalDim, globalStrides, boxDim, elementStrides, interleave, swizzle, l2Promotion, oobFill)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUtensorMap *, CUtensorMapDataType, cuuint32_t, void *, cuuint64_t const *, cuuint64_t const *, cuuint32_t const *, cuuint32_t const *, CUtensorMapInterleave, CUtensorMapSwizzle, CUtensorMapL2promotion, CUtensorMapFloatOOBfill))__pyx_v_4cuda_5_cuda_5ccuda___cuTensorMapEncodeTiled)(__pyx_v_tensorMap, __pyx_v_tensorDataType, __pyx_v_tensorRank, __pyx_v_globalAddress, __pyx_v_globalDim, __pyx_v_globalStrides, __pyx_v_boxDim, __pyx_v_elementStrides, __pyx_v_interleave, __pyx_v_swizzle, __pyx_v_l2Promotion, __pyx_v_oobFill); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 6218, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":6219
 *             raise RuntimeError('Function "cuTensorMapEncodeTiled" not found')
 *     err = (<CUresult (*)(CUtensorMap*, CUtensorMapDataType, cuuint32_t, void*, const cuuint64_t*, const cuuint64_t*, const cuuint32_t*, const cuuint32_t*, CUtensorMapInterleave, CUtensorMapSwizzle, CUtensorMapL2promotion, CUtensorMapFloatOOBfill) except ?CUDA_ERROR_NOT_FOUND nogil> __cuTensorMapEncodeTiled)(tensorMap, tensorDataType, tensorRank, globalAddress, globalDim, globalStrides, boxDim, elementStrides, interleave, swizzle, l2Promotion, oobFill)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuTensorMapEncodeIm2col(CUtensorMap* tensorMap, CUtensorMapDataType tensorDataType, cuuint32_t tensorRank, void* globalAddress, const cuuint64_t* globalDim, const cuuint64_t* globalStrides, const int* pixelBoxLowerCorner, const int* pixelBoxUpperCorner, cuuint32_t channelsPerPixel, cuuint32_t pixelsPerColumn, const cuuint32_t* elementStrides, CUtensorMapInterleave interleave, CUtensorMapSwizzle swizzle, CUtensorMapL2promotion l2Promotion, CUtensorMapFloatOOBfill oobFill) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":6212
 *     return err
 * 
 * cdef CUresult _cuTensorMapEncodeTiled(CUtensorMap* tensorMap, CUtensorMapDataType tensorDataType, cuuint32_t tensorRank, void* globalAddress, const cuuint64_t* globalDim, const cuuint64_t* globalStrides, const cuuint32_t* boxDim, const cuuint32_t* elementStrides, CUtensorMapInterleave interleave, CUtensorMapSwizzle swizzle, CUtensorMapL2promotion l2Promotion, CUtensorMapFloatOOBfill oobFill) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuTensorMapEncodeTiled
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuTensorMapEncodeTiled", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":6221
 *     return err
 * 
 * cdef CUresult _cuTensorMapEncodeIm2col(CUtensorMap* tensorMap, CUtensorMapDataType tensorDataType, cuuint32_t tensorRank, void* globalAddress, const cuuint64_t* globalDim, const cuuint64_t* globalStrides, const int* pixelBoxLowerCorner, const int* pixelBoxUpperCorner, cuuint32_t channelsPerPixel, cuuint32_t pixelsPerColumn, const cuuint32_t* elementStrides, CUtensorMapInterleave interleave, CUtensorMapSwizzle swizzle, CUtensorMapL2promotion l2Promotion, CUtensorMapFloatOOBfill oobFill) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuTensorMapEncodeIm2col
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuTensorMapEncodeIm2col(CUtensorMap *__pyx_v_tensorMap, CUtensorMapDataType __pyx_v_tensorDataType, cuuint32_t __pyx_v_tensorRank, void *__pyx_v_globalAddress, cuuint64_t const *__pyx_v_globalDim, cuuint64_t const *__pyx_v_globalStrides, int const *__pyx_v_pixelBoxLowerCorner, int const *__pyx_v_pixelBoxUpperCorner, cuuint32_t __pyx_v_channelsPerPixel, cuuint32_t __pyx_v_pixelsPerColumn, cuuint32_t const *__pyx_v_elementStrides, CUtensorMapInterleave __pyx_v_interleave, CUtensorMapSwizzle __pyx_v_swizzle, CUtensorMapL2promotion __pyx_v_l2Promotion, CUtensorMapFloatOOBfill __pyx_v_oobFill) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuTensorMapEncodeIm2col", 1);
  __Pyx_TraceCall("_cuTensorMapEncodeIm2col", __pyx_f[0], 6221, 1, __PYX_ERR(0, 6221, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":6223
 * cdef CUresult _cuTensorMapEncodeIm2col(CUtensorMap* tensorMap, CUtensorMapDataType tensorDataType, cuuint32_t tensorRank, void* globalAddress, const cuuint64_t* globalDim, const cuuint64_t* globalStrides, const int* pixelBoxLowerCorner, const int* pixelBoxUpperCorner, cuuint32_t channelsPerPixel, cuuint32_t pixelsPerColumn, const cuuint32_t* elementStrides, CUtensorMapInterleave interleave, CUtensorMapSwizzle swizzle, CUtensorMapL2promotion l2Promotion, CUtensorMapFloatOOBfill oobFill) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuTensorMapEncodeIm2col
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuTensorMapEncodeIm2col == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 6223, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":6224
 *     global __cuTensorMapEncodeIm2col
 *     cuPythonInit()
 *     if __cuTensorMapEncodeIm2col == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuTensorMapEncodeIm2col" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuTensorMapEncodeIm2col == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":6225
 *     cuPythonInit()
 *     if __cuTensorMapEncodeIm2col == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuTensorMapEncodeIm2col" not found')
 *     err = (<CUresult (*)(CUtensorMap*, CUtensorMapDataType, cuuint32_t, void*, const cuuint64_t*, const cuuint64_t*, const int*, const int*, cuuint32_t, cuuint32_t, const cuuint32_t*, CUtensorMapInterleave, CUtensorMapSwizzle, CUtensorMapL2promotion, CUtensorMapFloatOOBfill) except ?CUDA_ERROR_NOT_FOUND nogil> __cuTensorMapEncodeIm2col)(tensorMap, tensorDataType, tensorRank, globalAddress, globalDim, globalStrides, pixelBoxLowerCorner, pixelBoxUpperCorner, channelsPerPixel, pixelsPerColumn, elementStrides, interleave, swizzle, l2Promotion, oobFill)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":6226
 *     if __cuTensorMapEncodeIm2col == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuTensorMapEncodeIm2col" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUtensorMap*, CUtensorMapDataType, cuuint32_t, void*, const cuuint64_t*, const cuuint64_t*, const int*, const int*, cuuint32_t, cuuint32_t, const cuuint32_t*, CUtensorMapInterleave, CUtensorMapSwizzle, CUtensorMapL2promotion, CUtensorMapFloatOOBfill) except ?CUDA_ERROR_NOT_FOUND nogil> __cuTensorMapEncodeIm2col)(tensorMap, tensorDataType, tensorRank, globalAddress, globalDim, globalStrides, pixelBoxLowerCorner, pixelBoxUpperCorner, channelsPerPixel, pixelsPerColumn, elementStrides, interleave, swizzle, l2Promotion, oobFill)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__401, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 6226, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 6226, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":6225
 *     cuPythonInit()
 *     if __cuTensorMapEncodeIm2col == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuTensorMapEncodeIm2col" not found')
 *     err = (<CUresult (*)(CUtensorMap*, CUtensorMapDataType, cuuint32_t, void*, const cuuint64_t*, const cuuint64_t*, const int*, const int*, cuuint32_t, cuuint32_t, const cuuint32_t*, CUtensorMapInterleave, CUtensorMapSwizzle, CUtensorMapL2promotion, CUtensorMapFloatOOBfill) except ?CUDA_ERROR_NOT_FOUND nogil> __cuTensorMapEncodeIm2col)(tensorMap, tensorDataType, tensorRank, globalAddress, globalDim, globalStrides, pixelBoxLowerCorner, pixelBoxUpperCorner, channelsPerPixel, pixelsPerColumn, elementStrides, interleave, swizzle, l2Promotion, oobFill)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":6224
 *     global __cuTensorMapEncodeIm2col
 *     cuPythonInit()
 *     if __cuTensorMapEncodeIm2col == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuTensorMapEncodeIm2col" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":6227
 *         with gil:
 *             raise RuntimeError('Function "cuTensorMapEncodeIm2col" not found')
 *     err = (<CUresult (*)(CUtensorMap*, CUtensorMapDataType, cuuint32_t, void*, const cuuint64_t*, const cuuint64_t*, const int*, const int*, cuuint32_t, cuuint32_t, const cuuint32_t*, CUtensorMapInterleave, CUtensorMapSwizzle, CUtensorMapL2promotion, CUtensorMapFloatOOBfill) except ?CUDA_ERROR_NOT_FOUND nogil> __cuTensorMapEncodeIm2col)(tensorMap, tensorDataType, tensorRank, globalAddress, globalDim, globalStrides, pixelBoxLowerCorner, pixelBoxUpperCorner, channelsPerPixel, pixelsPerColumn, elementStrides, interleave, swizzle, l2Promotion, oobFill)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUtensorMap *, CUtensorMapDataType, cuuint32_t, void *, cuuint64_t const *, cuuint64_t const *, int const *, int const *, cuuint32_t, cuuint32_t, cuuint32_t const *, CUtensorMapInterleave, CUtensorMapSwizzle, CUtensorMapL2promotion, CUtensorMapFloatOOBfill))__pyx_v_4cuda_5_cuda_5ccuda___cuTensorMapEncodeIm2col)(__pyx_v_tensorMap, __pyx_v_tensorDataType, __pyx_v_tensorRank, __pyx_v_globalAddress, __pyx_v_globalDim, __pyx_v_globalStrides, __pyx_v_pixelBoxLowerCorner, __pyx_v_pixelBoxUpperCorner, __pyx_v_channelsPerPixel, __pyx_v_pixelsPerColumn, __pyx_v_elementStrides, __pyx_v_interleave, __pyx_v_swizzle, __pyx_v_l2Promotion, __pyx_v_oobFill); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 6227, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":6228
 *             raise RuntimeError('Function "cuTensorMapEncodeIm2col" not found')
 *     err = (<CUresult (*)(CUtensorMap*, CUtensorMapDataType, cuuint32_t, void*, const cuuint64_t*, const cuuint64_t*, const int*, const int*, cuuint32_t, cuuint32_t, const cuuint32_t*, CUtensorMapInterleave, CUtensorMapSwizzle, CUtensorMapL2promotion, CUtensorMapFloatOOBfill) except ?CUDA_ERROR_NOT_FOUND nogil> __cuTensorMapEncodeIm2col)(tensorMap, tensorDataType, tensorRank, globalAddress, globalDim, globalStrides, pixelBoxLowerCorner, pixelBoxUpperCorner, channelsPerPixel, pixelsPerColumn, elementStrides, interleave, swizzle, l2Promotion, oobFill)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuTensorMapReplaceAddress(CUtensorMap* tensorMap, void* globalAddress) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":6221
 *     return err
 * 
 * cdef CUresult _cuTensorMapEncodeIm2col(CUtensorMap* tensorMap, CUtensorMapDataType tensorDataType, cuuint32_t tensorRank, void* globalAddress, const cuuint64_t* globalDim, const cuuint64_t* globalStrides, const int* pixelBoxLowerCorner, const int* pixelBoxUpperCorner, cuuint32_t channelsPerPixel, cuuint32_t pixelsPerColumn, const cuuint32_t* elementStrides, CUtensorMapInterleave interleave, CUtensorMapSwizzle swizzle, CUtensorMapL2promotion l2Promotion, CUtensorMapFloatOOBfill oobFill) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuTensorMapEncodeIm2col
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuTensorMapEncodeIm2col", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":6230
 *     return err
 * 
 * cdef CUresult _cuTensorMapReplaceAddress(CUtensorMap* tensorMap, void* globalAddress) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuTensorMapReplaceAddress
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuTensorMapReplaceAddress(CUtensorMap *__pyx_v_tensorMap, void *__pyx_v_globalAddress) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuTensorMapReplaceAddress", 1);
  __Pyx_TraceCall("_cuTensorMapReplaceAddress", __pyx_f[0], 6230, 1, __PYX_ERR(0, 6230, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":6232
 * cdef CUresult _cuTensorMapReplaceAddress(CUtensorMap* tensorMap, void* globalAddress) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuTensorMapReplaceAddress
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuTensorMapReplaceAddress == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 6232, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":6233
 *     global __cuTensorMapReplaceAddress
 *     cuPythonInit()
 *     if __cuTensorMapReplaceAddress == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuTensorMapReplaceAddress" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuTensorMapReplaceAddress == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":6234
 *     cuPythonInit()
 *     if __cuTensorMapReplaceAddress == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuTensorMapReplaceAddress" not found')
 *     err = (<CUresult (*)(CUtensorMap*, void*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuTensorMapReplaceAddress)(tensorMap, globalAddress)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":6235
 *     if __cuTensorMapReplaceAddress == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuTensorMapReplaceAddress" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUtensorMap*, void*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuTensorMapReplaceAddress)(tensorMap, globalAddress)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__402, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 6235, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 6235, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":6234
 *     cuPythonInit()
 *     if __cuTensorMapReplaceAddress == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuTensorMapReplaceAddress" not found')
 *     err = (<CUresult (*)(CUtensorMap*, void*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuTensorMapReplaceAddress)(tensorMap, globalAddress)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":6233
 *     global __cuTensorMapReplaceAddress
 *     cuPythonInit()
 *     if __cuTensorMapReplaceAddress == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuTensorMapReplaceAddress" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":6236
 *         with gil:
 *             raise RuntimeError('Function "cuTensorMapReplaceAddress" not found')
 *     err = (<CUresult (*)(CUtensorMap*, void*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuTensorMapReplaceAddress)(tensorMap, globalAddress)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUtensorMap *, void *))__pyx_v_4cuda_5_cuda_5ccuda___cuTensorMapReplaceAddress)(__pyx_v_tensorMap, __pyx_v_globalAddress); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 6236, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":6237
 *             raise RuntimeError('Function "cuTensorMapReplaceAddress" not found')
 *     err = (<CUresult (*)(CUtensorMap*, void*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuTensorMapReplaceAddress)(tensorMap, globalAddress)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuDeviceCanAccessPeer(int* canAccessPeer, CUdevice dev, CUdevice peerDev) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":6230
 *     return err
 * 
 * cdef CUresult _cuTensorMapReplaceAddress(CUtensorMap* tensorMap, void* globalAddress) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuTensorMapReplaceAddress
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuTensorMapReplaceAddress", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":6239
 *     return err
 * 
 * cdef CUresult _cuDeviceCanAccessPeer(int* canAccessPeer, CUdevice dev, CUdevice peerDev) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuDeviceCanAccessPeer
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuDeviceCanAccessPeer(int *__pyx_v_canAccessPeer, CUdevice __pyx_v_dev, CUdevice __pyx_v_peerDev) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuDeviceCanAccessPeer", 1);
  __Pyx_TraceCall("_cuDeviceCanAccessPeer", __pyx_f[0], 6239, 1, __PYX_ERR(0, 6239, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":6241
 * cdef CUresult _cuDeviceCanAccessPeer(int* canAccessPeer, CUdevice dev, CUdevice peerDev) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuDeviceCanAccessPeer
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuDeviceCanAccessPeer == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 6241, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":6242
 *     global __cuDeviceCanAccessPeer
 *     cuPythonInit()
 *     if __cuDeviceCanAccessPeer == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuDeviceCanAccessPeer" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuDeviceCanAccessPeer == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":6243
 *     cuPythonInit()
 *     if __cuDeviceCanAccessPeer == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuDeviceCanAccessPeer" not found')
 *     err = (<CUresult (*)(int*, CUdevice, CUdevice) except ?CUDA_ERROR_NOT_FOUND nogil> __cuDeviceCanAccessPeer)(canAccessPeer, dev, peerDev)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":6244
 *     if __cuDeviceCanAccessPeer == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuDeviceCanAccessPeer" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(int*, CUdevice, CUdevice) except ?CUDA_ERROR_NOT_FOUND nogil> __cuDeviceCanAccessPeer)(canAccessPeer, dev, peerDev)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__403, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 6244, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 6244, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":6243
 *     cuPythonInit()
 *     if __cuDeviceCanAccessPeer == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuDeviceCanAccessPeer" not found')
 *     err = (<CUresult (*)(int*, CUdevice, CUdevice) except ?CUDA_ERROR_NOT_FOUND nogil> __cuDeviceCanAccessPeer)(canAccessPeer, dev, peerDev)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":6242
 *     global __cuDeviceCanAccessPeer
 *     cuPythonInit()
 *     if __cuDeviceCanAccessPeer == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuDeviceCanAccessPeer" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":6245
 *         with gil:
 *             raise RuntimeError('Function "cuDeviceCanAccessPeer" not found')
 *     err = (<CUresult (*)(int*, CUdevice, CUdevice) except ?CUDA_ERROR_NOT_FOUND nogil> __cuDeviceCanAccessPeer)(canAccessPeer, dev, peerDev)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(int *, CUdevice, CUdevice))__pyx_v_4cuda_5_cuda_5ccuda___cuDeviceCanAccessPeer)(__pyx_v_canAccessPeer, __pyx_v_dev, __pyx_v_peerDev); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 6245, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":6246
 *             raise RuntimeError('Function "cuDeviceCanAccessPeer" not found')
 *     err = (<CUresult (*)(int*, CUdevice, CUdevice) except ?CUDA_ERROR_NOT_FOUND nogil> __cuDeviceCanAccessPeer)(canAccessPeer, dev, peerDev)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuCtxEnablePeerAccess(CUcontext peerContext, unsigned int Flags) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":6239
 *     return err
 * 
 * cdef CUresult _cuDeviceCanAccessPeer(int* canAccessPeer, CUdevice dev, CUdevice peerDev) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuDeviceCanAccessPeer
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuDeviceCanAccessPeer", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":6248
 *     return err
 * 
 * cdef CUresult _cuCtxEnablePeerAccess(CUcontext peerContext, unsigned int Flags) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuCtxEnablePeerAccess
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuCtxEnablePeerAccess(CUcontext __pyx_v_peerContext, unsigned int __pyx_v_Flags) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuCtxEnablePeerAccess", 1);
  __Pyx_TraceCall("_cuCtxEnablePeerAccess", __pyx_f[0], 6248, 1, __PYX_ERR(0, 6248, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":6250
 * cdef CUresult _cuCtxEnablePeerAccess(CUcontext peerContext, unsigned int Flags) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuCtxEnablePeerAccess
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuCtxEnablePeerAccess == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 6250, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":6251
 *     global __cuCtxEnablePeerAccess
 *     cuPythonInit()
 *     if __cuCtxEnablePeerAccess == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuCtxEnablePeerAccess" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuCtxEnablePeerAccess == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":6252
 *     cuPythonInit()
 *     if __cuCtxEnablePeerAccess == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuCtxEnablePeerAccess" not found')
 *     err = (<CUresult (*)(CUcontext, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuCtxEnablePeerAccess)(peerContext, Flags)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":6253
 *     if __cuCtxEnablePeerAccess == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuCtxEnablePeerAccess" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUcontext, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuCtxEnablePeerAccess)(peerContext, Flags)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__404, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 6253, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 6253, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":6252
 *     cuPythonInit()
 *     if __cuCtxEnablePeerAccess == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuCtxEnablePeerAccess" not found')
 *     err = (<CUresult (*)(CUcontext, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuCtxEnablePeerAccess)(peerContext, Flags)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":6251
 *     global __cuCtxEnablePeerAccess
 *     cuPythonInit()
 *     if __cuCtxEnablePeerAccess == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuCtxEnablePeerAccess" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":6254
 *         with gil:
 *             raise RuntimeError('Function "cuCtxEnablePeerAccess" not found')
 *     err = (<CUresult (*)(CUcontext, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuCtxEnablePeerAccess)(peerContext, Flags)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUcontext, unsigned int))__pyx_v_4cuda_5_cuda_5ccuda___cuCtxEnablePeerAccess)(__pyx_v_peerContext, __pyx_v_Flags); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 6254, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":6255
 *             raise RuntimeError('Function "cuCtxEnablePeerAccess" not found')
 *     err = (<CUresult (*)(CUcontext, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuCtxEnablePeerAccess)(peerContext, Flags)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuCtxDisablePeerAccess(CUcontext peerContext) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":6248
 *     return err
 * 
 * cdef CUresult _cuCtxEnablePeerAccess(CUcontext peerContext, unsigned int Flags) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuCtxEnablePeerAccess
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuCtxEnablePeerAccess", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":6257
 *     return err
 * 
 * cdef CUresult _cuCtxDisablePeerAccess(CUcontext peerContext) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuCtxDisablePeerAccess
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuCtxDisablePeerAccess(CUcontext __pyx_v_peerContext) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuCtxDisablePeerAccess", 1);
  __Pyx_TraceCall("_cuCtxDisablePeerAccess", __pyx_f[0], 6257, 1, __PYX_ERR(0, 6257, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":6259
 * cdef CUresult _cuCtxDisablePeerAccess(CUcontext peerContext) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuCtxDisablePeerAccess
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuCtxDisablePeerAccess == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 6259, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":6260
 *     global __cuCtxDisablePeerAccess
 *     cuPythonInit()
 *     if __cuCtxDisablePeerAccess == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuCtxDisablePeerAccess" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuCtxDisablePeerAccess == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":6261
 *     cuPythonInit()
 *     if __cuCtxDisablePeerAccess == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuCtxDisablePeerAccess" not found')
 *     err = (<CUresult (*)(CUcontext) except ?CUDA_ERROR_NOT_FOUND nogil> __cuCtxDisablePeerAccess)(peerContext)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":6262
 *     if __cuCtxDisablePeerAccess == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuCtxDisablePeerAccess" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUcontext) except ?CUDA_ERROR_NOT_FOUND nogil> __cuCtxDisablePeerAccess)(peerContext)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__405, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 6262, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 6262, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":6261
 *     cuPythonInit()
 *     if __cuCtxDisablePeerAccess == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuCtxDisablePeerAccess" not found')
 *     err = (<CUresult (*)(CUcontext) except ?CUDA_ERROR_NOT_FOUND nogil> __cuCtxDisablePeerAccess)(peerContext)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":6260
 *     global __cuCtxDisablePeerAccess
 *     cuPythonInit()
 *     if __cuCtxDisablePeerAccess == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuCtxDisablePeerAccess" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":6263
 *         with gil:
 *             raise RuntimeError('Function "cuCtxDisablePeerAccess" not found')
 *     err = (<CUresult (*)(CUcontext) except ?CUDA_ERROR_NOT_FOUND nogil> __cuCtxDisablePeerAccess)(peerContext)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUcontext))__pyx_v_4cuda_5_cuda_5ccuda___cuCtxDisablePeerAccess)(__pyx_v_peerContext); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 6263, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":6264
 *             raise RuntimeError('Function "cuCtxDisablePeerAccess" not found')
 *     err = (<CUresult (*)(CUcontext) except ?CUDA_ERROR_NOT_FOUND nogil> __cuCtxDisablePeerAccess)(peerContext)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuDeviceGetP2PAttribute(int* value, CUdevice_P2PAttribute attrib, CUdevice srcDevice, CUdevice dstDevice) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":6257
 *     return err
 * 
 * cdef CUresult _cuCtxDisablePeerAccess(CUcontext peerContext) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuCtxDisablePeerAccess
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuCtxDisablePeerAccess", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":6266
 *     return err
 * 
 * cdef CUresult _cuDeviceGetP2PAttribute(int* value, CUdevice_P2PAttribute attrib, CUdevice srcDevice, CUdevice dstDevice) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuDeviceGetP2PAttribute
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuDeviceGetP2PAttribute(int *__pyx_v_value, CUdevice_P2PAttribute __pyx_v_attrib, CUdevice __pyx_v_srcDevice, CUdevice __pyx_v_dstDevice) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuDeviceGetP2PAttribute", 1);
  __Pyx_TraceCall("_cuDeviceGetP2PAttribute", __pyx_f[0], 6266, 1, __PYX_ERR(0, 6266, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":6268
 * cdef CUresult _cuDeviceGetP2PAttribute(int* value, CUdevice_P2PAttribute attrib, CUdevice srcDevice, CUdevice dstDevice) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuDeviceGetP2PAttribute
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuDeviceGetP2PAttribute == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 6268, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":6269
 *     global __cuDeviceGetP2PAttribute
 *     cuPythonInit()
 *     if __cuDeviceGetP2PAttribute == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuDeviceGetP2PAttribute" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuDeviceGetP2PAttribute == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":6270
 *     cuPythonInit()
 *     if __cuDeviceGetP2PAttribute == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuDeviceGetP2PAttribute" not found')
 *     err = (<CUresult (*)(int*, CUdevice_P2PAttribute, CUdevice, CUdevice) except ?CUDA_ERROR_NOT_FOUND nogil> __cuDeviceGetP2PAttribute)(value, attrib, srcDevice, dstDevice)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":6271
 *     if __cuDeviceGetP2PAttribute == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuDeviceGetP2PAttribute" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(int*, CUdevice_P2PAttribute, CUdevice, CUdevice) except ?CUDA_ERROR_NOT_FOUND nogil> __cuDeviceGetP2PAttribute)(value, attrib, srcDevice, dstDevice)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__406, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 6271, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 6271, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":6270
 *     cuPythonInit()
 *     if __cuDeviceGetP2PAttribute == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuDeviceGetP2PAttribute" not found')
 *     err = (<CUresult (*)(int*, CUdevice_P2PAttribute, CUdevice, CUdevice) except ?CUDA_ERROR_NOT_FOUND nogil> __cuDeviceGetP2PAttribute)(value, attrib, srcDevice, dstDevice)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":6269
 *     global __cuDeviceGetP2PAttribute
 *     cuPythonInit()
 *     if __cuDeviceGetP2PAttribute == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuDeviceGetP2PAttribute" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":6272
 *         with gil:
 *             raise RuntimeError('Function "cuDeviceGetP2PAttribute" not found')
 *     err = (<CUresult (*)(int*, CUdevice_P2PAttribute, CUdevice, CUdevice) except ?CUDA_ERROR_NOT_FOUND nogil> __cuDeviceGetP2PAttribute)(value, attrib, srcDevice, dstDevice)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(int *, CUdevice_P2PAttribute, CUdevice, CUdevice))__pyx_v_4cuda_5_cuda_5ccuda___cuDeviceGetP2PAttribute)(__pyx_v_value, __pyx_v_attrib, __pyx_v_srcDevice, __pyx_v_dstDevice); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 6272, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":6273
 *             raise RuntimeError('Function "cuDeviceGetP2PAttribute" not found')
 *     err = (<CUresult (*)(int*, CUdevice_P2PAttribute, CUdevice, CUdevice) except ?CUDA_ERROR_NOT_FOUND nogil> __cuDeviceGetP2PAttribute)(value, attrib, srcDevice, dstDevice)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuGraphicsUnregisterResource(CUgraphicsResource resource) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":6266
 *     return err
 * 
 * cdef CUresult _cuDeviceGetP2PAttribute(int* value, CUdevice_P2PAttribute attrib, CUdevice srcDevice, CUdevice dstDevice) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuDeviceGetP2PAttribute
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuDeviceGetP2PAttribute", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":6275
 *     return err
 * 
 * cdef CUresult _cuGraphicsUnregisterResource(CUgraphicsResource resource) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuGraphicsUnregisterResource
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuGraphicsUnregisterResource(CUgraphicsResource __pyx_v_resource) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuGraphicsUnregisterResource", 1);
  __Pyx_TraceCall("_cuGraphicsUnregisterResource", __pyx_f[0], 6275, 1, __PYX_ERR(0, 6275, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":6277
 * cdef CUresult _cuGraphicsUnregisterResource(CUgraphicsResource resource) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuGraphicsUnregisterResource
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuGraphicsUnregisterResource == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 6277, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":6278
 *     global __cuGraphicsUnregisterResource
 *     cuPythonInit()
 *     if __cuGraphicsUnregisterResource == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuGraphicsUnregisterResource" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuGraphicsUnregisterResource == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":6279
 *     cuPythonInit()
 *     if __cuGraphicsUnregisterResource == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuGraphicsUnregisterResource" not found')
 *     err = (<CUresult (*)(CUgraphicsResource) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphicsUnregisterResource)(resource)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":6280
 *     if __cuGraphicsUnregisterResource == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuGraphicsUnregisterResource" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUgraphicsResource) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphicsUnregisterResource)(resource)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__407, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 6280, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 6280, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":6279
 *     cuPythonInit()
 *     if __cuGraphicsUnregisterResource == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuGraphicsUnregisterResource" not found')
 *     err = (<CUresult (*)(CUgraphicsResource) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphicsUnregisterResource)(resource)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":6278
 *     global __cuGraphicsUnregisterResource
 *     cuPythonInit()
 *     if __cuGraphicsUnregisterResource == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuGraphicsUnregisterResource" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":6281
 *         with gil:
 *             raise RuntimeError('Function "cuGraphicsUnregisterResource" not found')
 *     err = (<CUresult (*)(CUgraphicsResource) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphicsUnregisterResource)(resource)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUgraphicsResource))__pyx_v_4cuda_5_cuda_5ccuda___cuGraphicsUnregisterResource)(__pyx_v_resource); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 6281, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":6282
 *             raise RuntimeError('Function "cuGraphicsUnregisterResource" not found')
 *     err = (<CUresult (*)(CUgraphicsResource) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphicsUnregisterResource)(resource)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuGraphicsSubResourceGetMappedArray(CUarray* pArray, CUgraphicsResource resource, unsigned int arrayIndex, unsigned int mipLevel) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":6275
 *     return err
 * 
 * cdef CUresult _cuGraphicsUnregisterResource(CUgraphicsResource resource) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuGraphicsUnregisterResource
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuGraphicsUnregisterResource", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":6284
 *     return err
 * 
 * cdef CUresult _cuGraphicsSubResourceGetMappedArray(CUarray* pArray, CUgraphicsResource resource, unsigned int arrayIndex, unsigned int mipLevel) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuGraphicsSubResourceGetMappedArray
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuGraphicsSubResourceGetMappedArray(CUarray *__pyx_v_pArray, CUgraphicsResource __pyx_v_resource, unsigned int __pyx_v_arrayIndex, unsigned int __pyx_v_mipLevel) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuGraphicsSubResourceGetMappedArray", 1);
  __Pyx_TraceCall("_cuGraphicsSubResourceGetMappedArray", __pyx_f[0], 6284, 1, __PYX_ERR(0, 6284, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":6286
 * cdef CUresult _cuGraphicsSubResourceGetMappedArray(CUarray* pArray, CUgraphicsResource resource, unsigned int arrayIndex, unsigned int mipLevel) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuGraphicsSubResourceGetMappedArray
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuGraphicsSubResourceGetMappedArray == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 6286, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":6287
 *     global __cuGraphicsSubResourceGetMappedArray
 *     cuPythonInit()
 *     if __cuGraphicsSubResourceGetMappedArray == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuGraphicsSubResourceGetMappedArray" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuGraphicsSubResourceGetMappedArray == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":6288
 *     cuPythonInit()
 *     if __cuGraphicsSubResourceGetMappedArray == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuGraphicsSubResourceGetMappedArray" not found')
 *     err = (<CUresult (*)(CUarray*, CUgraphicsResource, unsigned int, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphicsSubResourceGetMappedArray)(pArray, resource, arrayIndex, mipLevel)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":6289
 *     if __cuGraphicsSubResourceGetMappedArray == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuGraphicsSubResourceGetMappedArray" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUarray*, CUgraphicsResource, unsigned int, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphicsSubResourceGetMappedArray)(pArray, resource, arrayIndex, mipLevel)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__408, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 6289, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 6289, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":6288
 *     cuPythonInit()
 *     if __cuGraphicsSubResourceGetMappedArray == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuGraphicsSubResourceGetMappedArray" not found')
 *     err = (<CUresult (*)(CUarray*, CUgraphicsResource, unsigned int, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphicsSubResourceGetMappedArray)(pArray, resource, arrayIndex, mipLevel)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":6287
 *     global __cuGraphicsSubResourceGetMappedArray
 *     cuPythonInit()
 *     if __cuGraphicsSubResourceGetMappedArray == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuGraphicsSubResourceGetMappedArray" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":6290
 *         with gil:
 *             raise RuntimeError('Function "cuGraphicsSubResourceGetMappedArray" not found')
 *     err = (<CUresult (*)(CUarray*, CUgraphicsResource, unsigned int, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphicsSubResourceGetMappedArray)(pArray, resource, arrayIndex, mipLevel)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUarray *, CUgraphicsResource, unsigned int, unsigned int))__pyx_v_4cuda_5_cuda_5ccuda___cuGraphicsSubResourceGetMappedArray)(__pyx_v_pArray, __pyx_v_resource, __pyx_v_arrayIndex, __pyx_v_mipLevel); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 6290, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":6291
 *             raise RuntimeError('Function "cuGraphicsSubResourceGetMappedArray" not found')
 *     err = (<CUresult (*)(CUarray*, CUgraphicsResource, unsigned int, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphicsSubResourceGetMappedArray)(pArray, resource, arrayIndex, mipLevel)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuGraphicsResourceGetMappedMipmappedArray(CUmipmappedArray* pMipmappedArray, CUgraphicsResource resource) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":6284
 *     return err
 * 
 * cdef CUresult _cuGraphicsSubResourceGetMappedArray(CUarray* pArray, CUgraphicsResource resource, unsigned int arrayIndex, unsigned int mipLevel) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuGraphicsSubResourceGetMappedArray
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuGraphicsSubResourceGetMappedArray", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":6293
 *     return err
 * 
 * cdef CUresult _cuGraphicsResourceGetMappedMipmappedArray(CUmipmappedArray* pMipmappedArray, CUgraphicsResource resource) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuGraphicsResourceGetMappedMipmappedArray
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuGraphicsResourceGetMappedMipmappedArray(CUmipmappedArray *__pyx_v_pMipmappedArray, CUgraphicsResource __pyx_v_resource) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuGraphicsResourceGetMappedMipmappedArray", 1);
  __Pyx_TraceCall("_cuGraphicsResourceGetMappedMipmappedArray", __pyx_f[0], 6293, 1, __PYX_ERR(0, 6293, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":6295
 * cdef CUresult _cuGraphicsResourceGetMappedMipmappedArray(CUmipmappedArray* pMipmappedArray, CUgraphicsResource resource) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuGraphicsResourceGetMappedMipmappedArray
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuGraphicsResourceGetMappedMipmappedArray == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 6295, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":6296
 *     global __cuGraphicsResourceGetMappedMipmappedArray
 *     cuPythonInit()
 *     if __cuGraphicsResourceGetMappedMipmappedArray == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuGraphicsResourceGetMappedMipmappedArray" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuGraphicsResourceGetMappedMipmappedArray == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":6297
 *     cuPythonInit()
 *     if __cuGraphicsResourceGetMappedMipmappedArray == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuGraphicsResourceGetMappedMipmappedArray" not found')
 *     err = (<CUresult (*)(CUmipmappedArray*, CUgraphicsResource) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphicsResourceGetMappedMipmappedArray)(pMipmappedArray, resource)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":6298
 *     if __cuGraphicsResourceGetMappedMipmappedArray == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuGraphicsResourceGetMappedMipmappedArray" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUmipmappedArray*, CUgraphicsResource) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphicsResourceGetMappedMipmappedArray)(pMipmappedArray, resource)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__409, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 6298, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 6298, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":6297
 *     cuPythonInit()
 *     if __cuGraphicsResourceGetMappedMipmappedArray == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuGraphicsResourceGetMappedMipmappedArray" not found')
 *     err = (<CUresult (*)(CUmipmappedArray*, CUgraphicsResource) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphicsResourceGetMappedMipmappedArray)(pMipmappedArray, resource)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":6296
 *     global __cuGraphicsResourceGetMappedMipmappedArray
 *     cuPythonInit()
 *     if __cuGraphicsResourceGetMappedMipmappedArray == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuGraphicsResourceGetMappedMipmappedArray" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":6299
 *         with gil:
 *             raise RuntimeError('Function "cuGraphicsResourceGetMappedMipmappedArray" not found')
 *     err = (<CUresult (*)(CUmipmappedArray*, CUgraphicsResource) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphicsResourceGetMappedMipmappedArray)(pMipmappedArray, resource)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUmipmappedArray *, CUgraphicsResource))__pyx_v_4cuda_5_cuda_5ccuda___cuGraphicsResourceGetMappedMipmappedArray)(__pyx_v_pMipmappedArray, __pyx_v_resource); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 6299, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":6300
 *             raise RuntimeError('Function "cuGraphicsResourceGetMappedMipmappedArray" not found')
 *     err = (<CUresult (*)(CUmipmappedArray*, CUgraphicsResource) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphicsResourceGetMappedMipmappedArray)(pMipmappedArray, resource)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuGraphicsResourceGetMappedPointer_v2(CUdeviceptr* pDevPtr, size_t* pSize, CUgraphicsResource resource) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":6293
 *     return err
 * 
 * cdef CUresult _cuGraphicsResourceGetMappedMipmappedArray(CUmipmappedArray* pMipmappedArray, CUgraphicsResource resource) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuGraphicsResourceGetMappedMipmappedArray
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuGraphicsResourceGetMappedMipmappedArray", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":6302
 *     return err
 * 
 * cdef CUresult _cuGraphicsResourceGetMappedPointer_v2(CUdeviceptr* pDevPtr, size_t* pSize, CUgraphicsResource resource) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuGraphicsResourceGetMappedPointer_v2
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuGraphicsResourceGetMappedPointer_v2(CUdeviceptr *__pyx_v_pDevPtr, size_t *__pyx_v_pSize, CUgraphicsResource __pyx_v_resource) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuGraphicsResourceGetMappedPointer_v2", 1);
  __Pyx_TraceCall("_cuGraphicsResourceGetMappedPointer_v2", __pyx_f[0], 6302, 1, __PYX_ERR(0, 6302, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":6304
 * cdef CUresult _cuGraphicsResourceGetMappedPointer_v2(CUdeviceptr* pDevPtr, size_t* pSize, CUgraphicsResource resource) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuGraphicsResourceGetMappedPointer_v2
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuGraphicsResourceGetMappedPointer_v2 == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 6304, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":6305
 *     global __cuGraphicsResourceGetMappedPointer_v2
 *     cuPythonInit()
 *     if __cuGraphicsResourceGetMappedPointer_v2 == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuGraphicsResourceGetMappedPointer_v2" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuGraphicsResourceGetMappedPointer_v2 == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":6306
 *     cuPythonInit()
 *     if __cuGraphicsResourceGetMappedPointer_v2 == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuGraphicsResourceGetMappedPointer_v2" not found')
 *     err = (<CUresult (*)(CUdeviceptr*, size_t*, CUgraphicsResource) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphicsResourceGetMappedPointer_v2)(pDevPtr, pSize, resource)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":6307
 *     if __cuGraphicsResourceGetMappedPointer_v2 == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuGraphicsResourceGetMappedPointer_v2" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUdeviceptr*, size_t*, CUgraphicsResource) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphicsResourceGetMappedPointer_v2)(pDevPtr, pSize, resource)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__410, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 6307, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 6307, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":6306
 *     cuPythonInit()
 *     if __cuGraphicsResourceGetMappedPointer_v2 == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuGraphicsResourceGetMappedPointer_v2" not found')
 *     err = (<CUresult (*)(CUdeviceptr*, size_t*, CUgraphicsResource) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphicsResourceGetMappedPointer_v2)(pDevPtr, pSize, resource)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":6305
 *     global __cuGraphicsResourceGetMappedPointer_v2
 *     cuPythonInit()
 *     if __cuGraphicsResourceGetMappedPointer_v2 == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuGraphicsResourceGetMappedPointer_v2" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":6308
 *         with gil:
 *             raise RuntimeError('Function "cuGraphicsResourceGetMappedPointer_v2" not found')
 *     err = (<CUresult (*)(CUdeviceptr*, size_t*, CUgraphicsResource) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphicsResourceGetMappedPointer_v2)(pDevPtr, pSize, resource)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUdeviceptr *, size_t *, CUgraphicsResource))__pyx_v_4cuda_5_cuda_5ccuda___cuGraphicsResourceGetMappedPointer_v2)(__pyx_v_pDevPtr, __pyx_v_pSize, __pyx_v_resource); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 6308, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":6309
 *             raise RuntimeError('Function "cuGraphicsResourceGetMappedPointer_v2" not found')
 *     err = (<CUresult (*)(CUdeviceptr*, size_t*, CUgraphicsResource) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphicsResourceGetMappedPointer_v2)(pDevPtr, pSize, resource)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuGraphicsResourceSetMapFlags_v2(CUgraphicsResource resource, unsigned int flags) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":6302
 *     return err
 * 
 * cdef CUresult _cuGraphicsResourceGetMappedPointer_v2(CUdeviceptr* pDevPtr, size_t* pSize, CUgraphicsResource resource) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuGraphicsResourceGetMappedPointer_v2
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuGraphicsResourceGetMappedPointer_v2", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":6311
 *     return err
 * 
 * cdef CUresult _cuGraphicsResourceSetMapFlags_v2(CUgraphicsResource resource, unsigned int flags) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuGraphicsResourceSetMapFlags_v2
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuGraphicsResourceSetMapFlags_v2(CUgraphicsResource __pyx_v_resource, unsigned int __pyx_v_flags) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuGraphicsResourceSetMapFlags_v2", 1);
  __Pyx_TraceCall("_cuGraphicsResourceSetMapFlags_v2", __pyx_f[0], 6311, 1, __PYX_ERR(0, 6311, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":6313
 * cdef CUresult _cuGraphicsResourceSetMapFlags_v2(CUgraphicsResource resource, unsigned int flags) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuGraphicsResourceSetMapFlags_v2
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuGraphicsResourceSetMapFlags_v2 == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 6313, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":6314
 *     global __cuGraphicsResourceSetMapFlags_v2
 *     cuPythonInit()
 *     if __cuGraphicsResourceSetMapFlags_v2 == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuGraphicsResourceSetMapFlags_v2" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuGraphicsResourceSetMapFlags_v2 == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":6315
 *     cuPythonInit()
 *     if __cuGraphicsResourceSetMapFlags_v2 == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuGraphicsResourceSetMapFlags_v2" not found')
 *     err = (<CUresult (*)(CUgraphicsResource, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphicsResourceSetMapFlags_v2)(resource, flags)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":6316
 *     if __cuGraphicsResourceSetMapFlags_v2 == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuGraphicsResourceSetMapFlags_v2" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUgraphicsResource, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphicsResourceSetMapFlags_v2)(resource, flags)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__411, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 6316, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 6316, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":6315
 *     cuPythonInit()
 *     if __cuGraphicsResourceSetMapFlags_v2 == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuGraphicsResourceSetMapFlags_v2" not found')
 *     err = (<CUresult (*)(CUgraphicsResource, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphicsResourceSetMapFlags_v2)(resource, flags)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":6314
 *     global __cuGraphicsResourceSetMapFlags_v2
 *     cuPythonInit()
 *     if __cuGraphicsResourceSetMapFlags_v2 == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuGraphicsResourceSetMapFlags_v2" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":6317
 *         with gil:
 *             raise RuntimeError('Function "cuGraphicsResourceSetMapFlags_v2" not found')
 *     err = (<CUresult (*)(CUgraphicsResource, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphicsResourceSetMapFlags_v2)(resource, flags)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUgraphicsResource, unsigned int))__pyx_v_4cuda_5_cuda_5ccuda___cuGraphicsResourceSetMapFlags_v2)(__pyx_v_resource, __pyx_v_flags); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 6317, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":6318
 *             raise RuntimeError('Function "cuGraphicsResourceSetMapFlags_v2" not found')
 *     err = (<CUresult (*)(CUgraphicsResource, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphicsResourceSetMapFlags_v2)(resource, flags)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuGraphicsMapResources(unsigned int count, CUgraphicsResource* resources, CUstream hStream) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":6311
 *     return err
 * 
 * cdef CUresult _cuGraphicsResourceSetMapFlags_v2(CUgraphicsResource resource, unsigned int flags) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuGraphicsResourceSetMapFlags_v2
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuGraphicsResourceSetMapFlags_v2", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":6320
 *     return err
 * 
 * cdef CUresult _cuGraphicsMapResources(unsigned int count, CUgraphicsResource* resources, CUstream hStream) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuGraphicsMapResources
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuGraphicsMapResources(unsigned int __pyx_v_count, CUgraphicsResource *__pyx_v_resources, CUstream __pyx_v_hStream) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuGraphicsMapResources", 1);
  __Pyx_TraceCall("_cuGraphicsMapResources", __pyx_f[0], 6320, 1, __PYX_ERR(0, 6320, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":6322
 * cdef CUresult _cuGraphicsMapResources(unsigned int count, CUgraphicsResource* resources, CUstream hStream) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuGraphicsMapResources
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuGraphicsMapResources == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 6322, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":6323
 *     global __cuGraphicsMapResources
 *     cuPythonInit()
 *     if __cuGraphicsMapResources == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuGraphicsMapResources" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuGraphicsMapResources == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":6324
 *     cuPythonInit()
 *     if __cuGraphicsMapResources == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuGraphicsMapResources" not found')
 *     err = (<CUresult (*)(unsigned int, CUgraphicsResource*, CUstream) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphicsMapResources)(count, resources, hStream)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":6325
 *     if __cuGraphicsMapResources == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuGraphicsMapResources" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(unsigned int, CUgraphicsResource*, CUstream) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphicsMapResources)(count, resources, hStream)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__412, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 6325, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 6325, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":6324
 *     cuPythonInit()
 *     if __cuGraphicsMapResources == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuGraphicsMapResources" not found')
 *     err = (<CUresult (*)(unsigned int, CUgraphicsResource*, CUstream) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphicsMapResources)(count, resources, hStream)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":6323
 *     global __cuGraphicsMapResources
 *     cuPythonInit()
 *     if __cuGraphicsMapResources == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuGraphicsMapResources" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":6326
 *         with gil:
 *             raise RuntimeError('Function "cuGraphicsMapResources" not found')
 *     err = (<CUresult (*)(unsigned int, CUgraphicsResource*, CUstream) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphicsMapResources)(count, resources, hStream)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(unsigned int, CUgraphicsResource *, CUstream))__pyx_v_4cuda_5_cuda_5ccuda___cuGraphicsMapResources)(__pyx_v_count, __pyx_v_resources, __pyx_v_hStream); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 6326, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":6327
 *             raise RuntimeError('Function "cuGraphicsMapResources" not found')
 *     err = (<CUresult (*)(unsigned int, CUgraphicsResource*, CUstream) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphicsMapResources)(count, resources, hStream)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuGraphicsUnmapResources(unsigned int count, CUgraphicsResource* resources, CUstream hStream) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":6320
 *     return err
 * 
 * cdef CUresult _cuGraphicsMapResources(unsigned int count, CUgraphicsResource* resources, CUstream hStream) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuGraphicsMapResources
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuGraphicsMapResources", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":6329
 *     return err
 * 
 * cdef CUresult _cuGraphicsUnmapResources(unsigned int count, CUgraphicsResource* resources, CUstream hStream) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuGraphicsUnmapResources
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuGraphicsUnmapResources(unsigned int __pyx_v_count, CUgraphicsResource *__pyx_v_resources, CUstream __pyx_v_hStream) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuGraphicsUnmapResources", 1);
  __Pyx_TraceCall("_cuGraphicsUnmapResources", __pyx_f[0], 6329, 1, __PYX_ERR(0, 6329, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":6331
 * cdef CUresult _cuGraphicsUnmapResources(unsigned int count, CUgraphicsResource* resources, CUstream hStream) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuGraphicsUnmapResources
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuGraphicsUnmapResources == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 6331, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":6332
 *     global __cuGraphicsUnmapResources
 *     cuPythonInit()
 *     if __cuGraphicsUnmapResources == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuGraphicsUnmapResources" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuGraphicsUnmapResources == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":6333
 *     cuPythonInit()
 *     if __cuGraphicsUnmapResources == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuGraphicsUnmapResources" not found')
 *     err = (<CUresult (*)(unsigned int, CUgraphicsResource*, CUstream) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphicsUnmapResources)(count, resources, hStream)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":6334
 *     if __cuGraphicsUnmapResources == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuGraphicsUnmapResources" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(unsigned int, CUgraphicsResource*, CUstream) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphicsUnmapResources)(count, resources, hStream)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__413, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 6334, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 6334, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":6333
 *     cuPythonInit()
 *     if __cuGraphicsUnmapResources == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuGraphicsUnmapResources" not found')
 *     err = (<CUresult (*)(unsigned int, CUgraphicsResource*, CUstream) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphicsUnmapResources)(count, resources, hStream)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":6332
 *     global __cuGraphicsUnmapResources
 *     cuPythonInit()
 *     if __cuGraphicsUnmapResources == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuGraphicsUnmapResources" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":6335
 *         with gil:
 *             raise RuntimeError('Function "cuGraphicsUnmapResources" not found')
 *     err = (<CUresult (*)(unsigned int, CUgraphicsResource*, CUstream) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphicsUnmapResources)(count, resources, hStream)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(unsigned int, CUgraphicsResource *, CUstream))__pyx_v_4cuda_5_cuda_5ccuda___cuGraphicsUnmapResources)(__pyx_v_count, __pyx_v_resources, __pyx_v_hStream); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 6335, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":6336
 *             raise RuntimeError('Function "cuGraphicsUnmapResources" not found')
 *     err = (<CUresult (*)(unsigned int, CUgraphicsResource*, CUstream) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphicsUnmapResources)(count, resources, hStream)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuGetProcAddress_v2(const char* symbol, void** pfn, int cudaVersion, cuuint64_t flags, CUdriverProcAddressQueryResult* symbolStatus) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":6329
 *     return err
 * 
 * cdef CUresult _cuGraphicsUnmapResources(unsigned int count, CUgraphicsResource* resources, CUstream hStream) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuGraphicsUnmapResources
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuGraphicsUnmapResources", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":6338
 *     return err
 * 
 * cdef CUresult _cuGetProcAddress_v2(const char* symbol, void** pfn, int cudaVersion, cuuint64_t flags, CUdriverProcAddressQueryResult* symbolStatus) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuGetProcAddress_v2
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuGetProcAddress_v2(char const *__pyx_v_symbol, void **__pyx_v_pfn, int __pyx_v_cudaVersion, cuuint64_t __pyx_v_flags, CUdriverProcAddressQueryResult *__pyx_v_symbolStatus) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuGetProcAddress_v2", 1);
  __Pyx_TraceCall("_cuGetProcAddress_v2", __pyx_f[0], 6338, 1, __PYX_ERR(0, 6338, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":6340
 * cdef CUresult _cuGetProcAddress_v2(const char* symbol, void** pfn, int cudaVersion, cuuint64_t flags, CUdriverProcAddressQueryResult* symbolStatus) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuGetProcAddress_v2
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuGetProcAddress_v2 == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 6340, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":6341
 *     global __cuGetProcAddress_v2
 *     cuPythonInit()
 *     if __cuGetProcAddress_v2 == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuGetProcAddress_v2" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuGetProcAddress_v2 == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":6342
 *     cuPythonInit()
 *     if __cuGetProcAddress_v2 == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuGetProcAddress_v2" not found')
 *     err = (<CUresult (*)(const char*, void**, int, cuuint64_t, CUdriverProcAddressQueryResult*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGetProcAddress_v2)(symbol, pfn, cudaVersion, flags, symbolStatus)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":6343
 *     if __cuGetProcAddress_v2 == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuGetProcAddress_v2" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(const char*, void**, int, cuuint64_t, CUdriverProcAddressQueryResult*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGetProcAddress_v2)(symbol, pfn, cudaVersion, flags, symbolStatus)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__414, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 6343, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 6343, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":6342
 *     cuPythonInit()
 *     if __cuGetProcAddress_v2 == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuGetProcAddress_v2" not found')
 *     err = (<CUresult (*)(const char*, void**, int, cuuint64_t, CUdriverProcAddressQueryResult*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGetProcAddress_v2)(symbol, pfn, cudaVersion, flags, symbolStatus)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":6341
 *     global __cuGetProcAddress_v2
 *     cuPythonInit()
 *     if __cuGetProcAddress_v2 == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuGetProcAddress_v2" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":6344
 *         with gil:
 *             raise RuntimeError('Function "cuGetProcAddress_v2" not found')
 *     err = (<CUresult (*)(const char*, void**, int, cuuint64_t, CUdriverProcAddressQueryResult*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGetProcAddress_v2)(symbol, pfn, cudaVersion, flags, symbolStatus)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(char const *, void **, int, cuuint64_t, CUdriverProcAddressQueryResult *))__pyx_v_4cuda_5_cuda_5ccuda___cuGetProcAddress_v2)(__pyx_v_symbol, __pyx_v_pfn, __pyx_v_cudaVersion, __pyx_v_flags, __pyx_v_symbolStatus); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 6344, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":6345
 *             raise RuntimeError('Function "cuGetProcAddress_v2" not found')
 *     err = (<CUresult (*)(const char*, void**, int, cuuint64_t, CUdriverProcAddressQueryResult*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGetProcAddress_v2)(symbol, pfn, cudaVersion, flags, symbolStatus)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuCoredumpGetAttribute(CUcoredumpSettings attrib, void* value, size_t* size) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":6338
 *     return err
 * 
 * cdef CUresult _cuGetProcAddress_v2(const char* symbol, void** pfn, int cudaVersion, cuuint64_t flags, CUdriverProcAddressQueryResult* symbolStatus) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuGetProcAddress_v2
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuGetProcAddress_v2", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":6347
 *     return err
 * 
 * cdef CUresult _cuCoredumpGetAttribute(CUcoredumpSettings attrib, void* value, size_t* size) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuCoredumpGetAttribute
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuCoredumpGetAttribute(CUcoredumpSettings __pyx_v_attrib, void *__pyx_v_value, size_t *__pyx_v_size) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuCoredumpGetAttribute", 1);
  __Pyx_TraceCall("_cuCoredumpGetAttribute", __pyx_f[0], 6347, 1, __PYX_ERR(0, 6347, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":6349
 * cdef CUresult _cuCoredumpGetAttribute(CUcoredumpSettings attrib, void* value, size_t* size) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuCoredumpGetAttribute
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuCoredumpGetAttribute == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 6349, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":6350
 *     global __cuCoredumpGetAttribute
 *     cuPythonInit()
 *     if __cuCoredumpGetAttribute == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuCoredumpGetAttribute" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuCoredumpGetAttribute == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":6351
 *     cuPythonInit()
 *     if __cuCoredumpGetAttribute == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuCoredumpGetAttribute" not found')
 *     err = (<CUresult (*)(CUcoredumpSettings, void*, size_t*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuCoredumpGetAttribute)(attrib, value, size)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":6352
 *     if __cuCoredumpGetAttribute == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuCoredumpGetAttribute" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUcoredumpSettings, void*, size_t*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuCoredumpGetAttribute)(attrib, value, size)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__415, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 6352, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 6352, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":6351
 *     cuPythonInit()
 *     if __cuCoredumpGetAttribute == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuCoredumpGetAttribute" not found')
 *     err = (<CUresult (*)(CUcoredumpSettings, void*, size_t*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuCoredumpGetAttribute)(attrib, value, size)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":6350
 *     global __cuCoredumpGetAttribute
 *     cuPythonInit()
 *     if __cuCoredumpGetAttribute == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuCoredumpGetAttribute" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":6353
 *         with gil:
 *             raise RuntimeError('Function "cuCoredumpGetAttribute" not found')
 *     err = (<CUresult (*)(CUcoredumpSettings, void*, size_t*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuCoredumpGetAttribute)(attrib, value, size)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUcoredumpSettings, void *, size_t *))__pyx_v_4cuda_5_cuda_5ccuda___cuCoredumpGetAttribute)(__pyx_v_attrib, __pyx_v_value, __pyx_v_size); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 6353, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":6354
 *             raise RuntimeError('Function "cuCoredumpGetAttribute" not found')
 *     err = (<CUresult (*)(CUcoredumpSettings, void*, size_t*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuCoredumpGetAttribute)(attrib, value, size)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuCoredumpGetAttributeGlobal(CUcoredumpSettings attrib, void* value, size_t* size) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":6347
 *     return err
 * 
 * cdef CUresult _cuCoredumpGetAttribute(CUcoredumpSettings attrib, void* value, size_t* size) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuCoredumpGetAttribute
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuCoredumpGetAttribute", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":6356
 *     return err
 * 
 * cdef CUresult _cuCoredumpGetAttributeGlobal(CUcoredumpSettings attrib, void* value, size_t* size) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuCoredumpGetAttributeGlobal
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuCoredumpGetAttributeGlobal(CUcoredumpSettings __pyx_v_attrib, void *__pyx_v_value, size_t *__pyx_v_size) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuCoredumpGetAttributeGlobal", 1);
  __Pyx_TraceCall("_cuCoredumpGetAttributeGlobal", __pyx_f[0], 6356, 1, __PYX_ERR(0, 6356, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":6358
 * cdef CUresult _cuCoredumpGetAttributeGlobal(CUcoredumpSettings attrib, void* value, size_t* size) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuCoredumpGetAttributeGlobal
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuCoredumpGetAttributeGlobal == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 6358, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":6359
 *     global __cuCoredumpGetAttributeGlobal
 *     cuPythonInit()
 *     if __cuCoredumpGetAttributeGlobal == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuCoredumpGetAttributeGlobal" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuCoredumpGetAttributeGlobal == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":6360
 *     cuPythonInit()
 *     if __cuCoredumpGetAttributeGlobal == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuCoredumpGetAttributeGlobal" not found')
 *     err = (<CUresult (*)(CUcoredumpSettings, void*, size_t*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuCoredumpGetAttributeGlobal)(attrib, value, size)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":6361
 *     if __cuCoredumpGetAttributeGlobal == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuCoredumpGetAttributeGlobal" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUcoredumpSettings, void*, size_t*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuCoredumpGetAttributeGlobal)(attrib, value, size)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__416, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 6361, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 6361, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":6360
 *     cuPythonInit()
 *     if __cuCoredumpGetAttributeGlobal == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuCoredumpGetAttributeGlobal" not found')
 *     err = (<CUresult (*)(CUcoredumpSettings, void*, size_t*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuCoredumpGetAttributeGlobal)(attrib, value, size)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":6359
 *     global __cuCoredumpGetAttributeGlobal
 *     cuPythonInit()
 *     if __cuCoredumpGetAttributeGlobal == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuCoredumpGetAttributeGlobal" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":6362
 *         with gil:
 *             raise RuntimeError('Function "cuCoredumpGetAttributeGlobal" not found')
 *     err = (<CUresult (*)(CUcoredumpSettings, void*, size_t*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuCoredumpGetAttributeGlobal)(attrib, value, size)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUcoredumpSettings, void *, size_t *))__pyx_v_4cuda_5_cuda_5ccuda___cuCoredumpGetAttributeGlobal)(__pyx_v_attrib, __pyx_v_value, __pyx_v_size); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 6362, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":6363
 *             raise RuntimeError('Function "cuCoredumpGetAttributeGlobal" not found')
 *     err = (<CUresult (*)(CUcoredumpSettings, void*, size_t*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuCoredumpGetAttributeGlobal)(attrib, value, size)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuCoredumpSetAttribute(CUcoredumpSettings attrib, void* value, size_t* size) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":6356
 *     return err
 * 
 * cdef CUresult _cuCoredumpGetAttributeGlobal(CUcoredumpSettings attrib, void* value, size_t* size) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuCoredumpGetAttributeGlobal
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuCoredumpGetAttributeGlobal", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":6365
 *     return err
 * 
 * cdef CUresult _cuCoredumpSetAttribute(CUcoredumpSettings attrib, void* value, size_t* size) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuCoredumpSetAttribute
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuCoredumpSetAttribute(CUcoredumpSettings __pyx_v_attrib, void *__pyx_v_value, size_t *__pyx_v_size) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuCoredumpSetAttribute", 1);
  __Pyx_TraceCall("_cuCoredumpSetAttribute", __pyx_f[0], 6365, 1, __PYX_ERR(0, 6365, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":6367
 * cdef CUresult _cuCoredumpSetAttribute(CUcoredumpSettings attrib, void* value, size_t* size) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuCoredumpSetAttribute
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuCoredumpSetAttribute == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 6367, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":6368
 *     global __cuCoredumpSetAttribute
 *     cuPythonInit()
 *     if __cuCoredumpSetAttribute == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuCoredumpSetAttribute" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuCoredumpSetAttribute == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":6369
 *     cuPythonInit()
 *     if __cuCoredumpSetAttribute == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuCoredumpSetAttribute" not found')
 *     err = (<CUresult (*)(CUcoredumpSettings, void*, size_t*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuCoredumpSetAttribute)(attrib, value, size)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":6370
 *     if __cuCoredumpSetAttribute == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuCoredumpSetAttribute" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUcoredumpSettings, void*, size_t*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuCoredumpSetAttribute)(attrib, value, size)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__417, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 6370, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 6370, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":6369
 *     cuPythonInit()
 *     if __cuCoredumpSetAttribute == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuCoredumpSetAttribute" not found')
 *     err = (<CUresult (*)(CUcoredumpSettings, void*, size_t*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuCoredumpSetAttribute)(attrib, value, size)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":6368
 *     global __cuCoredumpSetAttribute
 *     cuPythonInit()
 *     if __cuCoredumpSetAttribute == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuCoredumpSetAttribute" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":6371
 *         with gil:
 *             raise RuntimeError('Function "cuCoredumpSetAttribute" not found')
 *     err = (<CUresult (*)(CUcoredumpSettings, void*, size_t*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuCoredumpSetAttribute)(attrib, value, size)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUcoredumpSettings, void *, size_t *))__pyx_v_4cuda_5_cuda_5ccuda___cuCoredumpSetAttribute)(__pyx_v_attrib, __pyx_v_value, __pyx_v_size); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 6371, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":6372
 *             raise RuntimeError('Function "cuCoredumpSetAttribute" not found')
 *     err = (<CUresult (*)(CUcoredumpSettings, void*, size_t*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuCoredumpSetAttribute)(attrib, value, size)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuCoredumpSetAttributeGlobal(CUcoredumpSettings attrib, void* value, size_t* size) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":6365
 *     return err
 * 
 * cdef CUresult _cuCoredumpSetAttribute(CUcoredumpSettings attrib, void* value, size_t* size) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuCoredumpSetAttribute
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuCoredumpSetAttribute", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":6374
 *     return err
 * 
 * cdef CUresult _cuCoredumpSetAttributeGlobal(CUcoredumpSettings attrib, void* value, size_t* size) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuCoredumpSetAttributeGlobal
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuCoredumpSetAttributeGlobal(CUcoredumpSettings __pyx_v_attrib, void *__pyx_v_value, size_t *__pyx_v_size) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuCoredumpSetAttributeGlobal", 1);
  __Pyx_TraceCall("_cuCoredumpSetAttributeGlobal", __pyx_f[0], 6374, 1, __PYX_ERR(0, 6374, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":6376
 * cdef CUresult _cuCoredumpSetAttributeGlobal(CUcoredumpSettings attrib, void* value, size_t* size) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuCoredumpSetAttributeGlobal
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuCoredumpSetAttributeGlobal == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 6376, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":6377
 *     global __cuCoredumpSetAttributeGlobal
 *     cuPythonInit()
 *     if __cuCoredumpSetAttributeGlobal == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuCoredumpSetAttributeGlobal" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuCoredumpSetAttributeGlobal == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":6378
 *     cuPythonInit()
 *     if __cuCoredumpSetAttributeGlobal == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuCoredumpSetAttributeGlobal" not found')
 *     err = (<CUresult (*)(CUcoredumpSettings, void*, size_t*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuCoredumpSetAttributeGlobal)(attrib, value, size)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":6379
 *     if __cuCoredumpSetAttributeGlobal == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuCoredumpSetAttributeGlobal" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUcoredumpSettings, void*, size_t*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuCoredumpSetAttributeGlobal)(attrib, value, size)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__418, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 6379, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 6379, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":6378
 *     cuPythonInit()
 *     if __cuCoredumpSetAttributeGlobal == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuCoredumpSetAttributeGlobal" not found')
 *     err = (<CUresult (*)(CUcoredumpSettings, void*, size_t*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuCoredumpSetAttributeGlobal)(attrib, value, size)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":6377
 *     global __cuCoredumpSetAttributeGlobal
 *     cuPythonInit()
 *     if __cuCoredumpSetAttributeGlobal == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuCoredumpSetAttributeGlobal" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":6380
 *         with gil:
 *             raise RuntimeError('Function "cuCoredumpSetAttributeGlobal" not found')
 *     err = (<CUresult (*)(CUcoredumpSettings, void*, size_t*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuCoredumpSetAttributeGlobal)(attrib, value, size)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUcoredumpSettings, void *, size_t *))__pyx_v_4cuda_5_cuda_5ccuda___cuCoredumpSetAttributeGlobal)(__pyx_v_attrib, __pyx_v_value, __pyx_v_size); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 6380, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":6381
 *             raise RuntimeError('Function "cuCoredumpSetAttributeGlobal" not found')
 *     err = (<CUresult (*)(CUcoredumpSettings, void*, size_t*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuCoredumpSetAttributeGlobal)(attrib, value, size)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuGetExportTable(const void** ppExportTable, const CUuuid* pExportTableId) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":6374
 *     return err
 * 
 * cdef CUresult _cuCoredumpSetAttributeGlobal(CUcoredumpSettings attrib, void* value, size_t* size) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuCoredumpSetAttributeGlobal
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuCoredumpSetAttributeGlobal", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":6383
 *     return err
 * 
 * cdef CUresult _cuGetExportTable(const void** ppExportTable, const CUuuid* pExportTableId) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuGetExportTable
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuGetExportTable(void const **__pyx_v_ppExportTable, CUuuid const *__pyx_v_pExportTableId) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuGetExportTable", 1);
  __Pyx_TraceCall("_cuGetExportTable", __pyx_f[0], 6383, 1, __PYX_ERR(0, 6383, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":6385
 * cdef CUresult _cuGetExportTable(const void** ppExportTable, const CUuuid* pExportTableId) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuGetExportTable
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuGetExportTable == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 6385, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":6386
 *     global __cuGetExportTable
 *     cuPythonInit()
 *     if __cuGetExportTable == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuGetExportTable" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuGetExportTable == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":6387
 *     cuPythonInit()
 *     if __cuGetExportTable == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuGetExportTable" not found')
 *     err = (<CUresult (*)(const void**, const CUuuid*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGetExportTable)(ppExportTable, pExportTableId)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":6388
 *     if __cuGetExportTable == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuGetExportTable" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(const void**, const CUuuid*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGetExportTable)(ppExportTable, pExportTableId)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__419, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 6388, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 6388, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":6387
 *     cuPythonInit()
 *     if __cuGetExportTable == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuGetExportTable" not found')
 *     err = (<CUresult (*)(const void**, const CUuuid*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGetExportTable)(ppExportTable, pExportTableId)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":6386
 *     global __cuGetExportTable
 *     cuPythonInit()
 *     if __cuGetExportTable == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuGetExportTable" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":6389
 *         with gil:
 *             raise RuntimeError('Function "cuGetExportTable" not found')
 *     err = (<CUresult (*)(const void**, const CUuuid*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGetExportTable)(ppExportTable, pExportTableId)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(void const **, CUuuid const *))__pyx_v_4cuda_5_cuda_5ccuda___cuGetExportTable)(__pyx_v_ppExportTable, __pyx_v_pExportTableId); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 6389, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":6390
 *             raise RuntimeError('Function "cuGetExportTable" not found')
 *     err = (<CUresult (*)(const void**, const CUuuid*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGetExportTable)(ppExportTable, pExportTableId)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuGreenCtxCreate(CUgreenCtx* phCtx, CUdevResourceDesc desc, CUdevice dev, unsigned int flags) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":6383
 *     return err
 * 
 * cdef CUresult _cuGetExportTable(const void** ppExportTable, const CUuuid* pExportTableId) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuGetExportTable
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuGetExportTable", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":6392
 *     return err
 * 
 * cdef CUresult _cuGreenCtxCreate(CUgreenCtx* phCtx, CUdevResourceDesc desc, CUdevice dev, unsigned int flags) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuGreenCtxCreate
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuGreenCtxCreate(CUgreenCtx *__pyx_v_phCtx, CUdevResourceDesc __pyx_v_desc, CUdevice __pyx_v_dev, unsigned int __pyx_v_flags) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuGreenCtxCreate", 1);
  __Pyx_TraceCall("_cuGreenCtxCreate", __pyx_f[0], 6392, 1, __PYX_ERR(0, 6392, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":6394
 * cdef CUresult _cuGreenCtxCreate(CUgreenCtx* phCtx, CUdevResourceDesc desc, CUdevice dev, unsigned int flags) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuGreenCtxCreate
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuGreenCtxCreate == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 6394, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":6395
 *     global __cuGreenCtxCreate
 *     cuPythonInit()
 *     if __cuGreenCtxCreate == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuGreenCtxCreate" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuGreenCtxCreate == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":6396
 *     cuPythonInit()
 *     if __cuGreenCtxCreate == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuGreenCtxCreate" not found')
 *     err = (<CUresult (*)(CUgreenCtx*, CUdevResourceDesc, CUdevice, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGreenCtxCreate)(phCtx, desc, dev, flags)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":6397
 *     if __cuGreenCtxCreate == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuGreenCtxCreate" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUgreenCtx*, CUdevResourceDesc, CUdevice, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGreenCtxCreate)(phCtx, desc, dev, flags)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__420, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 6397, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 6397, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":6396
 *     cuPythonInit()
 *     if __cuGreenCtxCreate == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuGreenCtxCreate" not found')
 *     err = (<CUresult (*)(CUgreenCtx*, CUdevResourceDesc, CUdevice, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGreenCtxCreate)(phCtx, desc, dev, flags)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":6395
 *     global __cuGreenCtxCreate
 *     cuPythonInit()
 *     if __cuGreenCtxCreate == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuGreenCtxCreate" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":6398
 *         with gil:
 *             raise RuntimeError('Function "cuGreenCtxCreate" not found')
 *     err = (<CUresult (*)(CUgreenCtx*, CUdevResourceDesc, CUdevice, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGreenCtxCreate)(phCtx, desc, dev, flags)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUgreenCtx *, CUdevResourceDesc, CUdevice, unsigned int))__pyx_v_4cuda_5_cuda_5ccuda___cuGreenCtxCreate)(__pyx_v_phCtx, __pyx_v_desc, __pyx_v_dev, __pyx_v_flags); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 6398, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":6399
 *             raise RuntimeError('Function "cuGreenCtxCreate" not found')
 *     err = (<CUresult (*)(CUgreenCtx*, CUdevResourceDesc, CUdevice, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGreenCtxCreate)(phCtx, desc, dev, flags)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuGreenCtxDestroy(CUgreenCtx hCtx) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":6392
 *     return err
 * 
 * cdef CUresult _cuGreenCtxCreate(CUgreenCtx* phCtx, CUdevResourceDesc desc, CUdevice dev, unsigned int flags) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuGreenCtxCreate
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuGreenCtxCreate", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":6401
 *     return err
 * 
 * cdef CUresult _cuGreenCtxDestroy(CUgreenCtx hCtx) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuGreenCtxDestroy
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuGreenCtxDestroy(CUgreenCtx __pyx_v_hCtx) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuGreenCtxDestroy", 1);
  __Pyx_TraceCall("_cuGreenCtxDestroy", __pyx_f[0], 6401, 1, __PYX_ERR(0, 6401, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":6403
 * cdef CUresult _cuGreenCtxDestroy(CUgreenCtx hCtx) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuGreenCtxDestroy
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuGreenCtxDestroy == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 6403, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":6404
 *     global __cuGreenCtxDestroy
 *     cuPythonInit()
 *     if __cuGreenCtxDestroy == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuGreenCtxDestroy" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuGreenCtxDestroy == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":6405
 *     cuPythonInit()
 *     if __cuGreenCtxDestroy == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuGreenCtxDestroy" not found')
 *     err = (<CUresult (*)(CUgreenCtx) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGreenCtxDestroy)(hCtx)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":6406
 *     if __cuGreenCtxDestroy == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuGreenCtxDestroy" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUgreenCtx) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGreenCtxDestroy)(hCtx)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__421, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 6406, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 6406, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":6405
 *     cuPythonInit()
 *     if __cuGreenCtxDestroy == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuGreenCtxDestroy" not found')
 *     err = (<CUresult (*)(CUgreenCtx) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGreenCtxDestroy)(hCtx)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":6404
 *     global __cuGreenCtxDestroy
 *     cuPythonInit()
 *     if __cuGreenCtxDestroy == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuGreenCtxDestroy" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":6407
 *         with gil:
 *             raise RuntimeError('Function "cuGreenCtxDestroy" not found')
 *     err = (<CUresult (*)(CUgreenCtx) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGreenCtxDestroy)(hCtx)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUgreenCtx))__pyx_v_4cuda_5_cuda_5ccuda___cuGreenCtxDestroy)(__pyx_v_hCtx); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 6407, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":6408
 *             raise RuntimeError('Function "cuGreenCtxDestroy" not found')
 *     err = (<CUresult (*)(CUgreenCtx) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGreenCtxDestroy)(hCtx)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuCtxFromGreenCtx(CUcontext* pContext, CUgreenCtx hCtx) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":6401
 *     return err
 * 
 * cdef CUresult _cuGreenCtxDestroy(CUgreenCtx hCtx) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuGreenCtxDestroy
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuGreenCtxDestroy", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":6410
 *     return err
 * 
 * cdef CUresult _cuCtxFromGreenCtx(CUcontext* pContext, CUgreenCtx hCtx) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuCtxFromGreenCtx
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuCtxFromGreenCtx(CUcontext *__pyx_v_pContext, CUgreenCtx __pyx_v_hCtx) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuCtxFromGreenCtx", 1);
  __Pyx_TraceCall("_cuCtxFromGreenCtx", __pyx_f[0], 6410, 1, __PYX_ERR(0, 6410, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":6412
 * cdef CUresult _cuCtxFromGreenCtx(CUcontext* pContext, CUgreenCtx hCtx) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuCtxFromGreenCtx
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuCtxFromGreenCtx == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 6412, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":6413
 *     global __cuCtxFromGreenCtx
 *     cuPythonInit()
 *     if __cuCtxFromGreenCtx == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuCtxFromGreenCtx" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuCtxFromGreenCtx == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":6414
 *     cuPythonInit()
 *     if __cuCtxFromGreenCtx == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuCtxFromGreenCtx" not found')
 *     err = (<CUresult (*)(CUcontext*, CUgreenCtx) except ?CUDA_ERROR_NOT_FOUND nogil> __cuCtxFromGreenCtx)(pContext, hCtx)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":6415
 *     if __cuCtxFromGreenCtx == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuCtxFromGreenCtx" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUcontext*, CUgreenCtx) except ?CUDA_ERROR_NOT_FOUND nogil> __cuCtxFromGreenCtx)(pContext, hCtx)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__422, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 6415, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 6415, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":6414
 *     cuPythonInit()
 *     if __cuCtxFromGreenCtx == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuCtxFromGreenCtx" not found')
 *     err = (<CUresult (*)(CUcontext*, CUgreenCtx) except ?CUDA_ERROR_NOT_FOUND nogil> __cuCtxFromGreenCtx)(pContext, hCtx)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":6413
 *     global __cuCtxFromGreenCtx
 *     cuPythonInit()
 *     if __cuCtxFromGreenCtx == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuCtxFromGreenCtx" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":6416
 *         with gil:
 *             raise RuntimeError('Function "cuCtxFromGreenCtx" not found')
 *     err = (<CUresult (*)(CUcontext*, CUgreenCtx) except ?CUDA_ERROR_NOT_FOUND nogil> __cuCtxFromGreenCtx)(pContext, hCtx)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUcontext *, CUgreenCtx))__pyx_v_4cuda_5_cuda_5ccuda___cuCtxFromGreenCtx)(__pyx_v_pContext, __pyx_v_hCtx); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 6416, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":6417
 *             raise RuntimeError('Function "cuCtxFromGreenCtx" not found')
 *     err = (<CUresult (*)(CUcontext*, CUgreenCtx) except ?CUDA_ERROR_NOT_FOUND nogil> __cuCtxFromGreenCtx)(pContext, hCtx)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuDeviceGetDevResource(CUdevice device, CUdevResource* resource, CUdevResourceType typename) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":6410
 *     return err
 * 
 * cdef CUresult _cuCtxFromGreenCtx(CUcontext* pContext, CUgreenCtx hCtx) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuCtxFromGreenCtx
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuCtxFromGreenCtx", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":6419
 *     return err
 * 
 * cdef CUresult _cuDeviceGetDevResource(CUdevice device, CUdevResource* resource, CUdevResourceType typename) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuDeviceGetDevResource
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuDeviceGetDevResource(CUdevice __pyx_v_device, CUdevResource *__pyx_v_resource, CUdevResourceType __pyx_v_typename) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuDeviceGetDevResource", 1);
  __Pyx_TraceCall("_cuDeviceGetDevResource", __pyx_f[0], 6419, 1, __PYX_ERR(0, 6419, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":6421
 * cdef CUresult _cuDeviceGetDevResource(CUdevice device, CUdevResource* resource, CUdevResourceType typename) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuDeviceGetDevResource
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuDeviceGetDevResource == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 6421, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":6422
 *     global __cuDeviceGetDevResource
 *     cuPythonInit()
 *     if __cuDeviceGetDevResource == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuDeviceGetDevResource" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuDeviceGetDevResource == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":6423
 *     cuPythonInit()
 *     if __cuDeviceGetDevResource == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuDeviceGetDevResource" not found')
 *     err = (<CUresult (*)(CUdevice, CUdevResource*, CUdevResourceType) except ?CUDA_ERROR_NOT_FOUND nogil> __cuDeviceGetDevResource)(device, resource, typename)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":6424
 *     if __cuDeviceGetDevResource == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuDeviceGetDevResource" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUdevice, CUdevResource*, CUdevResourceType) except ?CUDA_ERROR_NOT_FOUND nogil> __cuDeviceGetDevResource)(device, resource, typename)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__423, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 6424, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 6424, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":6423
 *     cuPythonInit()
 *     if __cuDeviceGetDevResource == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuDeviceGetDevResource" not found')
 *     err = (<CUresult (*)(CUdevice, CUdevResource*, CUdevResourceType) except ?CUDA_ERROR_NOT_FOUND nogil> __cuDeviceGetDevResource)(device, resource, typename)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":6422
 *     global __cuDeviceGetDevResource
 *     cuPythonInit()
 *     if __cuDeviceGetDevResource == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuDeviceGetDevResource" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":6425
 *         with gil:
 *             raise RuntimeError('Function "cuDeviceGetDevResource" not found')
 *     err = (<CUresult (*)(CUdevice, CUdevResource*, CUdevResourceType) except ?CUDA_ERROR_NOT_FOUND nogil> __cuDeviceGetDevResource)(device, resource, typename)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUdevice, CUdevResource *, CUdevResourceType))__pyx_v_4cuda_5_cuda_5ccuda___cuDeviceGetDevResource)(__pyx_v_device, __pyx_v_resource, __pyx_v_typename); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 6425, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":6426
 *             raise RuntimeError('Function "cuDeviceGetDevResource" not found')
 *     err = (<CUresult (*)(CUdevice, CUdevResource*, CUdevResourceType) except ?CUDA_ERROR_NOT_FOUND nogil> __cuDeviceGetDevResource)(device, resource, typename)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuCtxGetDevResource(CUcontext hCtx, CUdevResource* resource, CUdevResourceType typename) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":6419
 *     return err
 * 
 * cdef CUresult _cuDeviceGetDevResource(CUdevice device, CUdevResource* resource, CUdevResourceType typename) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuDeviceGetDevResource
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuDeviceGetDevResource", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":6428
 *     return err
 * 
 * cdef CUresult _cuCtxGetDevResource(CUcontext hCtx, CUdevResource* resource, CUdevResourceType typename) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuCtxGetDevResource
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuCtxGetDevResource(CUcontext __pyx_v_hCtx, CUdevResource *__pyx_v_resource, CUdevResourceType __pyx_v_typename) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuCtxGetDevResource", 1);
  __Pyx_TraceCall("_cuCtxGetDevResource", __pyx_f[0], 6428, 1, __PYX_ERR(0, 6428, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":6430
 * cdef CUresult _cuCtxGetDevResource(CUcontext hCtx, CUdevResource* resource, CUdevResourceType typename) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuCtxGetDevResource
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuCtxGetDevResource == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 6430, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":6431
 *     global __cuCtxGetDevResource
 *     cuPythonInit()
 *     if __cuCtxGetDevResource == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuCtxGetDevResource" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuCtxGetDevResource == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":6432
 *     cuPythonInit()
 *     if __cuCtxGetDevResource == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuCtxGetDevResource" not found')
 *     err = (<CUresult (*)(CUcontext, CUdevResource*, CUdevResourceType) except ?CUDA_ERROR_NOT_FOUND nogil> __cuCtxGetDevResource)(hCtx, resource, typename)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":6433
 *     if __cuCtxGetDevResource == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuCtxGetDevResource" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUcontext, CUdevResource*, CUdevResourceType) except ?CUDA_ERROR_NOT_FOUND nogil> __cuCtxGetDevResource)(hCtx, resource, typename)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__424, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 6433, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 6433, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":6432
 *     cuPythonInit()
 *     if __cuCtxGetDevResource == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuCtxGetDevResource" not found')
 *     err = (<CUresult (*)(CUcontext, CUdevResource*, CUdevResourceType) except ?CUDA_ERROR_NOT_FOUND nogil> __cuCtxGetDevResource)(hCtx, resource, typename)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":6431
 *     global __cuCtxGetDevResource
 *     cuPythonInit()
 *     if __cuCtxGetDevResource == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuCtxGetDevResource" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":6434
 *         with gil:
 *             raise RuntimeError('Function "cuCtxGetDevResource" not found')
 *     err = (<CUresult (*)(CUcontext, CUdevResource*, CUdevResourceType) except ?CUDA_ERROR_NOT_FOUND nogil> __cuCtxGetDevResource)(hCtx, resource, typename)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUcontext, CUdevResource *, CUdevResourceType))__pyx_v_4cuda_5_cuda_5ccuda___cuCtxGetDevResource)(__pyx_v_hCtx, __pyx_v_resource, __pyx_v_typename); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 6434, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":6435
 *             raise RuntimeError('Function "cuCtxGetDevResource" not found')
 *     err = (<CUresult (*)(CUcontext, CUdevResource*, CUdevResourceType) except ?CUDA_ERROR_NOT_FOUND nogil> __cuCtxGetDevResource)(hCtx, resource, typename)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuGreenCtxGetDevResource(CUgreenCtx hCtx, CUdevResource* resource, CUdevResourceType typename) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":6428
 *     return err
 * 
 * cdef CUresult _cuCtxGetDevResource(CUcontext hCtx, CUdevResource* resource, CUdevResourceType typename) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuCtxGetDevResource
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuCtxGetDevResource", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":6437
 *     return err
 * 
 * cdef CUresult _cuGreenCtxGetDevResource(CUgreenCtx hCtx, CUdevResource* resource, CUdevResourceType typename) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuGreenCtxGetDevResource
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuGreenCtxGetDevResource(CUgreenCtx __pyx_v_hCtx, CUdevResource *__pyx_v_resource, CUdevResourceType __pyx_v_typename) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuGreenCtxGetDevResource", 1);
  __Pyx_TraceCall("_cuGreenCtxGetDevResource", __pyx_f[0], 6437, 1, __PYX_ERR(0, 6437, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":6439
 * cdef CUresult _cuGreenCtxGetDevResource(CUgreenCtx hCtx, CUdevResource* resource, CUdevResourceType typename) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuGreenCtxGetDevResource
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuGreenCtxGetDevResource == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 6439, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":6440
 *     global __cuGreenCtxGetDevResource
 *     cuPythonInit()
 *     if __cuGreenCtxGetDevResource == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuGreenCtxGetDevResource" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuGreenCtxGetDevResource == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":6441
 *     cuPythonInit()
 *     if __cuGreenCtxGetDevResource == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuGreenCtxGetDevResource" not found')
 *     err = (<CUresult (*)(CUgreenCtx, CUdevResource*, CUdevResourceType) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGreenCtxGetDevResource)(hCtx, resource, typename)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":6442
 *     if __cuGreenCtxGetDevResource == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuGreenCtxGetDevResource" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUgreenCtx, CUdevResource*, CUdevResourceType) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGreenCtxGetDevResource)(hCtx, resource, typename)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__425, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 6442, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 6442, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":6441
 *     cuPythonInit()
 *     if __cuGreenCtxGetDevResource == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuGreenCtxGetDevResource" not found')
 *     err = (<CUresult (*)(CUgreenCtx, CUdevResource*, CUdevResourceType) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGreenCtxGetDevResource)(hCtx, resource, typename)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":6440
 *     global __cuGreenCtxGetDevResource
 *     cuPythonInit()
 *     if __cuGreenCtxGetDevResource == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuGreenCtxGetDevResource" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":6443
 *         with gil:
 *             raise RuntimeError('Function "cuGreenCtxGetDevResource" not found')
 *     err = (<CUresult (*)(CUgreenCtx, CUdevResource*, CUdevResourceType) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGreenCtxGetDevResource)(hCtx, resource, typename)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUgreenCtx, CUdevResource *, CUdevResourceType))__pyx_v_4cuda_5_cuda_5ccuda___cuGreenCtxGetDevResource)(__pyx_v_hCtx, __pyx_v_resource, __pyx_v_typename); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 6443, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":6444
 *             raise RuntimeError('Function "cuGreenCtxGetDevResource" not found')
 *     err = (<CUresult (*)(CUgreenCtx, CUdevResource*, CUdevResourceType) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGreenCtxGetDevResource)(hCtx, resource, typename)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuDevSmResourceSplitByCount(CUdevResource* result, unsigned int* nbGroups, const CUdevResource* input, CUdevResource* remaining, unsigned int useFlags, unsigned int minCount) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":6437
 *     return err
 * 
 * cdef CUresult _cuGreenCtxGetDevResource(CUgreenCtx hCtx, CUdevResource* resource, CUdevResourceType typename) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuGreenCtxGetDevResource
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuGreenCtxGetDevResource", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":6446
 *     return err
 * 
 * cdef CUresult _cuDevSmResourceSplitByCount(CUdevResource* result, unsigned int* nbGroups, const CUdevResource* input, CUdevResource* remaining, unsigned int useFlags, unsigned int minCount) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuDevSmResourceSplitByCount
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuDevSmResourceSplitByCount(CUdevResource *__pyx_v_result, unsigned int *__pyx_v_nbGroups, CUdevResource const *__pyx_v_input, CUdevResource *__pyx_v_remaining, unsigned int __pyx_v_useFlags, unsigned int __pyx_v_minCount) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuDevSmResourceSplitByCount", 1);
  __Pyx_TraceCall("_cuDevSmResourceSplitByCount", __pyx_f[0], 6446, 1, __PYX_ERR(0, 6446, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":6448
 * cdef CUresult _cuDevSmResourceSplitByCount(CUdevResource* result, unsigned int* nbGroups, const CUdevResource* input, CUdevResource* remaining, unsigned int useFlags, unsigned int minCount) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuDevSmResourceSplitByCount
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuDevSmResourceSplitByCount == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 6448, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":6449
 *     global __cuDevSmResourceSplitByCount
 *     cuPythonInit()
 *     if __cuDevSmResourceSplitByCount == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuDevSmResourceSplitByCount" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuDevSmResourceSplitByCount == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":6450
 *     cuPythonInit()
 *     if __cuDevSmResourceSplitByCount == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuDevSmResourceSplitByCount" not found')
 *     err = (<CUresult (*)(CUdevResource*, unsigned int*, const CUdevResource*, CUdevResource*, unsigned int, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuDevSmResourceSplitByCount)(result, nbGroups, input, remaining, useFlags, minCount)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":6451
 *     if __cuDevSmResourceSplitByCount == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuDevSmResourceSplitByCount" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUdevResource*, unsigned int*, const CUdevResource*, CUdevResource*, unsigned int, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuDevSmResourceSplitByCount)(result, nbGroups, input, remaining, useFlags, minCount)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__426, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 6451, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 6451, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":6450
 *     cuPythonInit()
 *     if __cuDevSmResourceSplitByCount == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuDevSmResourceSplitByCount" not found')
 *     err = (<CUresult (*)(CUdevResource*, unsigned int*, const CUdevResource*, CUdevResource*, unsigned int, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuDevSmResourceSplitByCount)(result, nbGroups, input, remaining, useFlags, minCount)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":6449
 *     global __cuDevSmResourceSplitByCount
 *     cuPythonInit()
 *     if __cuDevSmResourceSplitByCount == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuDevSmResourceSplitByCount" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":6452
 *         with gil:
 *             raise RuntimeError('Function "cuDevSmResourceSplitByCount" not found')
 *     err = (<CUresult (*)(CUdevResource*, unsigned int*, const CUdevResource*, CUdevResource*, unsigned int, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuDevSmResourceSplitByCount)(result, nbGroups, input, remaining, useFlags, minCount)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUdevResource *, unsigned int *, CUdevResource const *, CUdevResource *, unsigned int, unsigned int))__pyx_v_4cuda_5_cuda_5ccuda___cuDevSmResourceSplitByCount)(__pyx_v_result, __pyx_v_nbGroups, __pyx_v_input, __pyx_v_remaining, __pyx_v_useFlags, __pyx_v_minCount); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 6452, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":6453
 *             raise RuntimeError('Function "cuDevSmResourceSplitByCount" not found')
 *     err = (<CUresult (*)(CUdevResource*, unsigned int*, const CUdevResource*, CUdevResource*, unsigned int, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuDevSmResourceSplitByCount)(result, nbGroups, input, remaining, useFlags, minCount)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuDevResourceGenerateDesc(CUdevResourceDesc* phDesc, CUdevResource* resources, unsigned int nbResources) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":6446
 *     return err
 * 
 * cdef CUresult _cuDevSmResourceSplitByCount(CUdevResource* result, unsigned int* nbGroups, const CUdevResource* input, CUdevResource* remaining, unsigned int useFlags, unsigned int minCount) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuDevSmResourceSplitByCount
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuDevSmResourceSplitByCount", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":6455
 *     return err
 * 
 * cdef CUresult _cuDevResourceGenerateDesc(CUdevResourceDesc* phDesc, CUdevResource* resources, unsigned int nbResources) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuDevResourceGenerateDesc
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuDevResourceGenerateDesc(CUdevResourceDesc *__pyx_v_phDesc, CUdevResource *__pyx_v_resources, unsigned int __pyx_v_nbResources) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuDevResourceGenerateDesc", 1);
  __Pyx_TraceCall("_cuDevResourceGenerateDesc", __pyx_f[0], 6455, 1, __PYX_ERR(0, 6455, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":6457
 * cdef CUresult _cuDevResourceGenerateDesc(CUdevResourceDesc* phDesc, CUdevResource* resources, unsigned int nbResources) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuDevResourceGenerateDesc
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuDevResourceGenerateDesc == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 6457, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":6458
 *     global __cuDevResourceGenerateDesc
 *     cuPythonInit()
 *     if __cuDevResourceGenerateDesc == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuDevResourceGenerateDesc" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuDevResourceGenerateDesc == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":6459
 *     cuPythonInit()
 *     if __cuDevResourceGenerateDesc == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuDevResourceGenerateDesc" not found')
 *     err = (<CUresult (*)(CUdevResourceDesc*, CUdevResource*, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuDevResourceGenerateDesc)(phDesc, resources, nbResources)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":6460
 *     if __cuDevResourceGenerateDesc == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuDevResourceGenerateDesc" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUdevResourceDesc*, CUdevResource*, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuDevResourceGenerateDesc)(phDesc, resources, nbResources)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__427, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 6460, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 6460, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":6459
 *     cuPythonInit()
 *     if __cuDevResourceGenerateDesc == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuDevResourceGenerateDesc" not found')
 *     err = (<CUresult (*)(CUdevResourceDesc*, CUdevResource*, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuDevResourceGenerateDesc)(phDesc, resources, nbResources)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":6458
 *     global __cuDevResourceGenerateDesc
 *     cuPythonInit()
 *     if __cuDevResourceGenerateDesc == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuDevResourceGenerateDesc" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":6461
 *         with gil:
 *             raise RuntimeError('Function "cuDevResourceGenerateDesc" not found')
 *     err = (<CUresult (*)(CUdevResourceDesc*, CUdevResource*, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuDevResourceGenerateDesc)(phDesc, resources, nbResources)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUdevResourceDesc *, CUdevResource *, unsigned int))__pyx_v_4cuda_5_cuda_5ccuda___cuDevResourceGenerateDesc)(__pyx_v_phDesc, __pyx_v_resources, __pyx_v_nbResources); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 6461, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":6462
 *             raise RuntimeError('Function "cuDevResourceGenerateDesc" not found')
 *     err = (<CUresult (*)(CUdevResourceDesc*, CUdevResource*, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuDevResourceGenerateDesc)(phDesc, resources, nbResources)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuGreenCtxRecordEvent(CUgreenCtx hCtx, CUevent hEvent) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":6455
 *     return err
 * 
 * cdef CUresult _cuDevResourceGenerateDesc(CUdevResourceDesc* phDesc, CUdevResource* resources, unsigned int nbResources) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuDevResourceGenerateDesc
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuDevResourceGenerateDesc", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":6464
 *     return err
 * 
 * cdef CUresult _cuGreenCtxRecordEvent(CUgreenCtx hCtx, CUevent hEvent) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuGreenCtxRecordEvent
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuGreenCtxRecordEvent(CUgreenCtx __pyx_v_hCtx, CUevent __pyx_v_hEvent) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuGreenCtxRecordEvent", 1);
  __Pyx_TraceCall("_cuGreenCtxRecordEvent", __pyx_f[0], 6464, 1, __PYX_ERR(0, 6464, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":6466
 * cdef CUresult _cuGreenCtxRecordEvent(CUgreenCtx hCtx, CUevent hEvent) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuGreenCtxRecordEvent
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuGreenCtxRecordEvent == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 6466, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":6467
 *     global __cuGreenCtxRecordEvent
 *     cuPythonInit()
 *     if __cuGreenCtxRecordEvent == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuGreenCtxRecordEvent" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuGreenCtxRecordEvent == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":6468
 *     cuPythonInit()
 *     if __cuGreenCtxRecordEvent == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuGreenCtxRecordEvent" not found')
 *     err = (<CUresult (*)(CUgreenCtx, CUevent) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGreenCtxRecordEvent)(hCtx, hEvent)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":6469
 *     if __cuGreenCtxRecordEvent == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuGreenCtxRecordEvent" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUgreenCtx, CUevent) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGreenCtxRecordEvent)(hCtx, hEvent)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__428, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 6469, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 6469, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":6468
 *     cuPythonInit()
 *     if __cuGreenCtxRecordEvent == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuGreenCtxRecordEvent" not found')
 *     err = (<CUresult (*)(CUgreenCtx, CUevent) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGreenCtxRecordEvent)(hCtx, hEvent)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":6467
 *     global __cuGreenCtxRecordEvent
 *     cuPythonInit()
 *     if __cuGreenCtxRecordEvent == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuGreenCtxRecordEvent" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":6470
 *         with gil:
 *             raise RuntimeError('Function "cuGreenCtxRecordEvent" not found')
 *     err = (<CUresult (*)(CUgreenCtx, CUevent) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGreenCtxRecordEvent)(hCtx, hEvent)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUgreenCtx, CUevent))__pyx_v_4cuda_5_cuda_5ccuda___cuGreenCtxRecordEvent)(__pyx_v_hCtx, __pyx_v_hEvent); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 6470, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":6471
 *             raise RuntimeError('Function "cuGreenCtxRecordEvent" not found')
 *     err = (<CUresult (*)(CUgreenCtx, CUevent) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGreenCtxRecordEvent)(hCtx, hEvent)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuGreenCtxWaitEvent(CUgreenCtx hCtx, CUevent hEvent) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":6464
 *     return err
 * 
 * cdef CUresult _cuGreenCtxRecordEvent(CUgreenCtx hCtx, CUevent hEvent) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuGreenCtxRecordEvent
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuGreenCtxRecordEvent", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":6473
 *     return err
 * 
 * cdef CUresult _cuGreenCtxWaitEvent(CUgreenCtx hCtx, CUevent hEvent) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuGreenCtxWaitEvent
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuGreenCtxWaitEvent(CUgreenCtx __pyx_v_hCtx, CUevent __pyx_v_hEvent) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuGreenCtxWaitEvent", 1);
  __Pyx_TraceCall("_cuGreenCtxWaitEvent", __pyx_f[0], 6473, 1, __PYX_ERR(0, 6473, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":6475
 * cdef CUresult _cuGreenCtxWaitEvent(CUgreenCtx hCtx, CUevent hEvent) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuGreenCtxWaitEvent
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuGreenCtxWaitEvent == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 6475, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":6476
 *     global __cuGreenCtxWaitEvent
 *     cuPythonInit()
 *     if __cuGreenCtxWaitEvent == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuGreenCtxWaitEvent" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuGreenCtxWaitEvent == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":6477
 *     cuPythonInit()
 *     if __cuGreenCtxWaitEvent == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuGreenCtxWaitEvent" not found')
 *     err = (<CUresult (*)(CUgreenCtx, CUevent) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGreenCtxWaitEvent)(hCtx, hEvent)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":6478
 *     if __cuGreenCtxWaitEvent == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuGreenCtxWaitEvent" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUgreenCtx, CUevent) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGreenCtxWaitEvent)(hCtx, hEvent)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__429, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 6478, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 6478, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":6477
 *     cuPythonInit()
 *     if __cuGreenCtxWaitEvent == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuGreenCtxWaitEvent" not found')
 *     err = (<CUresult (*)(CUgreenCtx, CUevent) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGreenCtxWaitEvent)(hCtx, hEvent)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":6476
 *     global __cuGreenCtxWaitEvent
 *     cuPythonInit()
 *     if __cuGreenCtxWaitEvent == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuGreenCtxWaitEvent" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":6479
 *         with gil:
 *             raise RuntimeError('Function "cuGreenCtxWaitEvent" not found')
 *     err = (<CUresult (*)(CUgreenCtx, CUevent) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGreenCtxWaitEvent)(hCtx, hEvent)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUgreenCtx, CUevent))__pyx_v_4cuda_5_cuda_5ccuda___cuGreenCtxWaitEvent)(__pyx_v_hCtx, __pyx_v_hEvent); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 6479, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":6480
 *             raise RuntimeError('Function "cuGreenCtxWaitEvent" not found')
 *     err = (<CUresult (*)(CUgreenCtx, CUevent) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGreenCtxWaitEvent)(hCtx, hEvent)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuStreamGetGreenCtx(CUstream hStream, CUgreenCtx* phCtx) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":6473
 *     return err
 * 
 * cdef CUresult _cuGreenCtxWaitEvent(CUgreenCtx hCtx, CUevent hEvent) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuGreenCtxWaitEvent
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuGreenCtxWaitEvent", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":6482
 *     return err
 * 
 * cdef CUresult _cuStreamGetGreenCtx(CUstream hStream, CUgreenCtx* phCtx) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuStreamGetGreenCtx
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuStreamGetGreenCtx(CUstream __pyx_v_hStream, CUgreenCtx *__pyx_v_phCtx) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuStreamGetGreenCtx", 1);
  __Pyx_TraceCall("_cuStreamGetGreenCtx", __pyx_f[0], 6482, 1, __PYX_ERR(0, 6482, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":6484
 * cdef CUresult _cuStreamGetGreenCtx(CUstream hStream, CUgreenCtx* phCtx) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuStreamGetGreenCtx
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuStreamGetGreenCtx == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 6484, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":6485
 *     global __cuStreamGetGreenCtx
 *     cuPythonInit()
 *     if __cuStreamGetGreenCtx == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuStreamGetGreenCtx" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuStreamGetGreenCtx == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":6486
 *     cuPythonInit()
 *     if __cuStreamGetGreenCtx == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuStreamGetGreenCtx" not found')
 *     err = (<CUresult (*)(CUstream, CUgreenCtx*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuStreamGetGreenCtx)(hStream, phCtx)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":6487
 *     if __cuStreamGetGreenCtx == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuStreamGetGreenCtx" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUstream, CUgreenCtx*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuStreamGetGreenCtx)(hStream, phCtx)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__430, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 6487, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 6487, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":6486
 *     cuPythonInit()
 *     if __cuStreamGetGreenCtx == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuStreamGetGreenCtx" not found')
 *     err = (<CUresult (*)(CUstream, CUgreenCtx*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuStreamGetGreenCtx)(hStream, phCtx)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":6485
 *     global __cuStreamGetGreenCtx
 *     cuPythonInit()
 *     if __cuStreamGetGreenCtx == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuStreamGetGreenCtx" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":6488
 *         with gil:
 *             raise RuntimeError('Function "cuStreamGetGreenCtx" not found')
 *     err = (<CUresult (*)(CUstream, CUgreenCtx*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuStreamGetGreenCtx)(hStream, phCtx)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUstream, CUgreenCtx *))__pyx_v_4cuda_5_cuda_5ccuda___cuStreamGetGreenCtx)(__pyx_v_hStream, __pyx_v_phCtx); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 6488, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":6489
 *             raise RuntimeError('Function "cuStreamGetGreenCtx" not found')
 *     err = (<CUresult (*)(CUstream, CUgreenCtx*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuStreamGetGreenCtx)(hStream, phCtx)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuProfilerStart() except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":6482
 *     return err
 * 
 * cdef CUresult _cuStreamGetGreenCtx(CUstream hStream, CUgreenCtx* phCtx) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuStreamGetGreenCtx
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuStreamGetGreenCtx", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":6491
 *     return err
 * 
 * cdef CUresult _cuProfilerStart() except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuProfilerStart
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuProfilerStart(void) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuProfilerStart", 1);
  __Pyx_TraceCall("_cuProfilerStart", __pyx_f[0], 6491, 1, __PYX_ERR(0, 6491, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":6493
 * cdef CUresult _cuProfilerStart() except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuProfilerStart
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuProfilerStart == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 6493, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":6494
 *     global __cuProfilerStart
 *     cuPythonInit()
 *     if __cuProfilerStart == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuProfilerStart" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuProfilerStart == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":6495
 *     cuPythonInit()
 *     if __cuProfilerStart == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuProfilerStart" not found')
 *     err = (<CUresult (*)() except ?CUDA_ERROR_NOT_FOUND nogil> __cuProfilerStart)()
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":6496
 *     if __cuProfilerStart == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuProfilerStart" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)() except ?CUDA_ERROR_NOT_FOUND nogil> __cuProfilerStart)()
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__431, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 6496, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 6496, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":6495
 *     cuPythonInit()
 *     if __cuProfilerStart == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuProfilerStart" not found')
 *     err = (<CUresult (*)() except ?CUDA_ERROR_NOT_FOUND nogil> __cuProfilerStart)()
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":6494
 *     global __cuProfilerStart
 *     cuPythonInit()
 *     if __cuProfilerStart == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuProfilerStart" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":6497
 *         with gil:
 *             raise RuntimeError('Function "cuProfilerStart" not found')
 *     err = (<CUresult (*)() except ?CUDA_ERROR_NOT_FOUND nogil> __cuProfilerStart)()             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(void))__pyx_v_4cuda_5_cuda_5ccuda___cuProfilerStart)(); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 6497, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":6498
 *             raise RuntimeError('Function "cuProfilerStart" not found')
 *     err = (<CUresult (*)() except ?CUDA_ERROR_NOT_FOUND nogil> __cuProfilerStart)()
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuProfilerStop() except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":6491
 *     return err
 * 
 * cdef CUresult _cuProfilerStart() except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuProfilerStart
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuProfilerStart", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":6500
 *     return err
 * 
 * cdef CUresult _cuProfilerStop() except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuProfilerStop
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuProfilerStop(void) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuProfilerStop", 1);
  __Pyx_TraceCall("_cuProfilerStop", __pyx_f[0], 6500, 1, __PYX_ERR(0, 6500, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":6502
 * cdef CUresult _cuProfilerStop() except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuProfilerStop
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuProfilerStop == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 6502, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":6503
 *     global __cuProfilerStop
 *     cuPythonInit()
 *     if __cuProfilerStop == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuProfilerStop" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuProfilerStop == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":6504
 *     cuPythonInit()
 *     if __cuProfilerStop == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuProfilerStop" not found')
 *     err = (<CUresult (*)() except ?CUDA_ERROR_NOT_FOUND nogil> __cuProfilerStop)()
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":6505
 *     if __cuProfilerStop == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuProfilerStop" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)() except ?CUDA_ERROR_NOT_FOUND nogil> __cuProfilerStop)()
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__432, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 6505, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 6505, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":6504
 *     cuPythonInit()
 *     if __cuProfilerStop == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuProfilerStop" not found')
 *     err = (<CUresult (*)() except ?CUDA_ERROR_NOT_FOUND nogil> __cuProfilerStop)()
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":6503
 *     global __cuProfilerStop
 *     cuPythonInit()
 *     if __cuProfilerStop == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuProfilerStop" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":6506
 *         with gil:
 *             raise RuntimeError('Function "cuProfilerStop" not found')
 *     err = (<CUresult (*)() except ?CUDA_ERROR_NOT_FOUND nogil> __cuProfilerStop)()             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(void))__pyx_v_4cuda_5_cuda_5ccuda___cuProfilerStop)(); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 6506, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":6507
 *             raise RuntimeError('Function "cuProfilerStop" not found')
 *     err = (<CUresult (*)() except ?CUDA_ERROR_NOT_FOUND nogil> __cuProfilerStop)()
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuGraphicsEGLRegisterImage(CUgraphicsResource* pCudaResource, EGLImageKHR image, unsigned int flags) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":6500
 *     return err
 * 
 * cdef CUresult _cuProfilerStop() except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuProfilerStop
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuProfilerStop", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":6509
 *     return err
 * 
 * cdef CUresult _cuGraphicsEGLRegisterImage(CUgraphicsResource* pCudaResource, EGLImageKHR image, unsigned int flags) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuGraphicsEGLRegisterImage
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuGraphicsEGLRegisterImage(CUgraphicsResource *__pyx_v_pCudaResource, __pyx_t_4cuda_5ccuda_EGLImageKHR __pyx_v_image, unsigned int __pyx_v_flags) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuGraphicsEGLRegisterImage", 1);
  __Pyx_TraceCall("_cuGraphicsEGLRegisterImage", __pyx_f[0], 6509, 1, __PYX_ERR(0, 6509, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":6511
 * cdef CUresult _cuGraphicsEGLRegisterImage(CUgraphicsResource* pCudaResource, EGLImageKHR image, unsigned int flags) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuGraphicsEGLRegisterImage
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuGraphicsEGLRegisterImage == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 6511, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":6512
 *     global __cuGraphicsEGLRegisterImage
 *     cuPythonInit()
 *     if __cuGraphicsEGLRegisterImage == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuGraphicsEGLRegisterImage" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuGraphicsEGLRegisterImage == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":6513
 *     cuPythonInit()
 *     if __cuGraphicsEGLRegisterImage == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuGraphicsEGLRegisterImage" not found')
 *     err = (<CUresult (*)(CUgraphicsResource*, EGLImageKHR, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphicsEGLRegisterImage)(pCudaResource, image, flags)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":6514
 *     if __cuGraphicsEGLRegisterImage == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuGraphicsEGLRegisterImage" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUgraphicsResource*, EGLImageKHR, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphicsEGLRegisterImage)(pCudaResource, image, flags)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__433, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 6514, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 6514, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":6513
 *     cuPythonInit()
 *     if __cuGraphicsEGLRegisterImage == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuGraphicsEGLRegisterImage" not found')
 *     err = (<CUresult (*)(CUgraphicsResource*, EGLImageKHR, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphicsEGLRegisterImage)(pCudaResource, image, flags)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":6512
 *     global __cuGraphicsEGLRegisterImage
 *     cuPythonInit()
 *     if __cuGraphicsEGLRegisterImage == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuGraphicsEGLRegisterImage" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":6515
 *         with gil:
 *             raise RuntimeError('Function "cuGraphicsEGLRegisterImage" not found')
 *     err = (<CUresult (*)(CUgraphicsResource*, EGLImageKHR, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphicsEGLRegisterImage)(pCudaResource, image, flags)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUgraphicsResource *, __pyx_t_4cuda_5ccuda_EGLImageKHR, unsigned int))__pyx_v_4cuda_5_cuda_5ccuda___cuGraphicsEGLRegisterImage)(__pyx_v_pCudaResource, __pyx_v_image, __pyx_v_flags); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 6515, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":6516
 *             raise RuntimeError('Function "cuGraphicsEGLRegisterImage" not found')
 *     err = (<CUresult (*)(CUgraphicsResource*, EGLImageKHR, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphicsEGLRegisterImage)(pCudaResource, image, flags)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuEGLStreamConsumerConnect(CUeglStreamConnection* conn, EGLStreamKHR stream) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":6509
 *     return err
 * 
 * cdef CUresult _cuGraphicsEGLRegisterImage(CUgraphicsResource* pCudaResource, EGLImageKHR image, unsigned int flags) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuGraphicsEGLRegisterImage
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuGraphicsEGLRegisterImage", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":6518
 *     return err
 * 
 * cdef CUresult _cuEGLStreamConsumerConnect(CUeglStreamConnection* conn, EGLStreamKHR stream) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuEGLStreamConsumerConnect
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuEGLStreamConsumerConnect(__pyx_t_4cuda_5ccuda_CUeglStreamConnection *__pyx_v_conn, __pyx_t_4cuda_5ccuda_EGLStreamKHR __pyx_v_stream) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuEGLStreamConsumerConnect", 1);
  __Pyx_TraceCall("_cuEGLStreamConsumerConnect", __pyx_f[0], 6518, 1, __PYX_ERR(0, 6518, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":6520
 * cdef CUresult _cuEGLStreamConsumerConnect(CUeglStreamConnection* conn, EGLStreamKHR stream) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuEGLStreamConsumerConnect
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuEGLStreamConsumerConnect == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 6520, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":6521
 *     global __cuEGLStreamConsumerConnect
 *     cuPythonInit()
 *     if __cuEGLStreamConsumerConnect == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuEGLStreamConsumerConnect" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuEGLStreamConsumerConnect == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":6522
 *     cuPythonInit()
 *     if __cuEGLStreamConsumerConnect == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuEGLStreamConsumerConnect" not found')
 *     err = (<CUresult (*)(CUeglStreamConnection*, EGLStreamKHR) except ?CUDA_ERROR_NOT_FOUND nogil> __cuEGLStreamConsumerConnect)(conn, stream)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":6523
 *     if __cuEGLStreamConsumerConnect == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuEGLStreamConsumerConnect" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUeglStreamConnection*, EGLStreamKHR) except ?CUDA_ERROR_NOT_FOUND nogil> __cuEGLStreamConsumerConnect)(conn, stream)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__434, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 6523, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 6523, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":6522
 *     cuPythonInit()
 *     if __cuEGLStreamConsumerConnect == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuEGLStreamConsumerConnect" not found')
 *     err = (<CUresult (*)(CUeglStreamConnection*, EGLStreamKHR) except ?CUDA_ERROR_NOT_FOUND nogil> __cuEGLStreamConsumerConnect)(conn, stream)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":6521
 *     global __cuEGLStreamConsumerConnect
 *     cuPythonInit()
 *     if __cuEGLStreamConsumerConnect == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuEGLStreamConsumerConnect" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":6524
 *         with gil:
 *             raise RuntimeError('Function "cuEGLStreamConsumerConnect" not found')
 *     err = (<CUresult (*)(CUeglStreamConnection*, EGLStreamKHR) except ?CUDA_ERROR_NOT_FOUND nogil> __cuEGLStreamConsumerConnect)(conn, stream)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(__pyx_t_4cuda_5ccuda_CUeglStreamConnection *, __pyx_t_4cuda_5ccuda_EGLStreamKHR))__pyx_v_4cuda_5_cuda_5ccuda___cuEGLStreamConsumerConnect)(__pyx_v_conn, __pyx_v_stream); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 6524, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":6525
 *             raise RuntimeError('Function "cuEGLStreamConsumerConnect" not found')
 *     err = (<CUresult (*)(CUeglStreamConnection*, EGLStreamKHR) except ?CUDA_ERROR_NOT_FOUND nogil> __cuEGLStreamConsumerConnect)(conn, stream)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuEGLStreamConsumerConnectWithFlags(CUeglStreamConnection* conn, EGLStreamKHR stream, unsigned int flags) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":6518
 *     return err
 * 
 * cdef CUresult _cuEGLStreamConsumerConnect(CUeglStreamConnection* conn, EGLStreamKHR stream) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuEGLStreamConsumerConnect
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuEGLStreamConsumerConnect", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":6527
 *     return err
 * 
 * cdef CUresult _cuEGLStreamConsumerConnectWithFlags(CUeglStreamConnection* conn, EGLStreamKHR stream, unsigned int flags) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuEGLStreamConsumerConnectWithFlags
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuEGLStreamConsumerConnectWithFlags(__pyx_t_4cuda_5ccuda_CUeglStreamConnection *__pyx_v_conn, __pyx_t_4cuda_5ccuda_EGLStreamKHR __pyx_v_stream, unsigned int __pyx_v_flags) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuEGLStreamConsumerConnectWithFlags", 1);
  __Pyx_TraceCall("_cuEGLStreamConsumerConnectWithFlags", __pyx_f[0], 6527, 1, __PYX_ERR(0, 6527, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":6529
 * cdef CUresult _cuEGLStreamConsumerConnectWithFlags(CUeglStreamConnection* conn, EGLStreamKHR stream, unsigned int flags) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuEGLStreamConsumerConnectWithFlags
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuEGLStreamConsumerConnectWithFlags == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 6529, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":6530
 *     global __cuEGLStreamConsumerConnectWithFlags
 *     cuPythonInit()
 *     if __cuEGLStreamConsumerConnectWithFlags == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuEGLStreamConsumerConnectWithFlags" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuEGLStreamConsumerConnectWithFlags == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":6531
 *     cuPythonInit()
 *     if __cuEGLStreamConsumerConnectWithFlags == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuEGLStreamConsumerConnectWithFlags" not found')
 *     err = (<CUresult (*)(CUeglStreamConnection*, EGLStreamKHR, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuEGLStreamConsumerConnectWithFlags)(conn, stream, flags)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":6532
 *     if __cuEGLStreamConsumerConnectWithFlags == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuEGLStreamConsumerConnectWithFlags" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUeglStreamConnection*, EGLStreamKHR, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuEGLStreamConsumerConnectWithFlags)(conn, stream, flags)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__435, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 6532, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 6532, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":6531
 *     cuPythonInit()
 *     if __cuEGLStreamConsumerConnectWithFlags == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuEGLStreamConsumerConnectWithFlags" not found')
 *     err = (<CUresult (*)(CUeglStreamConnection*, EGLStreamKHR, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuEGLStreamConsumerConnectWithFlags)(conn, stream, flags)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":6530
 *     global __cuEGLStreamConsumerConnectWithFlags
 *     cuPythonInit()
 *     if __cuEGLStreamConsumerConnectWithFlags == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuEGLStreamConsumerConnectWithFlags" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":6533
 *         with gil:
 *             raise RuntimeError('Function "cuEGLStreamConsumerConnectWithFlags" not found')
 *     err = (<CUresult (*)(CUeglStreamConnection*, EGLStreamKHR, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuEGLStreamConsumerConnectWithFlags)(conn, stream, flags)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(__pyx_t_4cuda_5ccuda_CUeglStreamConnection *, __pyx_t_4cuda_5ccuda_EGLStreamKHR, unsigned int))__pyx_v_4cuda_5_cuda_5ccuda___cuEGLStreamConsumerConnectWithFlags)(__pyx_v_conn, __pyx_v_stream, __pyx_v_flags); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 6533, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":6534
 *             raise RuntimeError('Function "cuEGLStreamConsumerConnectWithFlags" not found')
 *     err = (<CUresult (*)(CUeglStreamConnection*, EGLStreamKHR, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuEGLStreamConsumerConnectWithFlags)(conn, stream, flags)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuEGLStreamConsumerDisconnect(CUeglStreamConnection* conn) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":6527
 *     return err
 * 
 * cdef CUresult _cuEGLStreamConsumerConnectWithFlags(CUeglStreamConnection* conn, EGLStreamKHR stream, unsigned int flags) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuEGLStreamConsumerConnectWithFlags
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuEGLStreamConsumerConnectWithFlags", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":6536
 *     return err
 * 
 * cdef CUresult _cuEGLStreamConsumerDisconnect(CUeglStreamConnection* conn) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuEGLStreamConsumerDisconnect
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuEGLStreamConsumerDisconnect(__pyx_t_4cuda_5ccuda_CUeglStreamConnection *__pyx_v_conn) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuEGLStreamConsumerDisconnect", 1);
  __Pyx_TraceCall("_cuEGLStreamConsumerDisconnect", __pyx_f[0], 6536, 1, __PYX_ERR(0, 6536, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":6538
 * cdef CUresult _cuEGLStreamConsumerDisconnect(CUeglStreamConnection* conn) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuEGLStreamConsumerDisconnect
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuEGLStreamConsumerDisconnect == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 6538, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":6539
 *     global __cuEGLStreamConsumerDisconnect
 *     cuPythonInit()
 *     if __cuEGLStreamConsumerDisconnect == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuEGLStreamConsumerDisconnect" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuEGLStreamConsumerDisconnect == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":6540
 *     cuPythonInit()
 *     if __cuEGLStreamConsumerDisconnect == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuEGLStreamConsumerDisconnect" not found')
 *     err = (<CUresult (*)(CUeglStreamConnection*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuEGLStreamConsumerDisconnect)(conn)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":6541
 *     if __cuEGLStreamConsumerDisconnect == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuEGLStreamConsumerDisconnect" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUeglStreamConnection*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuEGLStreamConsumerDisconnect)(conn)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__436, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 6541, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 6541, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":6540
 *     cuPythonInit()
 *     if __cuEGLStreamConsumerDisconnect == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuEGLStreamConsumerDisconnect" not found')
 *     err = (<CUresult (*)(CUeglStreamConnection*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuEGLStreamConsumerDisconnect)(conn)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":6539
 *     global __cuEGLStreamConsumerDisconnect
 *     cuPythonInit()
 *     if __cuEGLStreamConsumerDisconnect == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuEGLStreamConsumerDisconnect" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":6542
 *         with gil:
 *             raise RuntimeError('Function "cuEGLStreamConsumerDisconnect" not found')
 *     err = (<CUresult (*)(CUeglStreamConnection*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuEGLStreamConsumerDisconnect)(conn)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(__pyx_t_4cuda_5ccuda_CUeglStreamConnection *))__pyx_v_4cuda_5_cuda_5ccuda___cuEGLStreamConsumerDisconnect)(__pyx_v_conn); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 6542, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":6543
 *             raise RuntimeError('Function "cuEGLStreamConsumerDisconnect" not found')
 *     err = (<CUresult (*)(CUeglStreamConnection*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuEGLStreamConsumerDisconnect)(conn)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuEGLStreamConsumerAcquireFrame(CUeglStreamConnection* conn, CUgraphicsResource* pCudaResource, CUstream* pStream, unsigned int timeout) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":6536
 *     return err
 * 
 * cdef CUresult _cuEGLStreamConsumerDisconnect(CUeglStreamConnection* conn) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuEGLStreamConsumerDisconnect
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuEGLStreamConsumerDisconnect", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":6545
 *     return err
 * 
 * cdef CUresult _cuEGLStreamConsumerAcquireFrame(CUeglStreamConnection* conn, CUgraphicsResource* pCudaResource, CUstream* pStream, unsigned int timeout) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuEGLStreamConsumerAcquireFrame
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuEGLStreamConsumerAcquireFrame(__pyx_t_4cuda_5ccuda_CUeglStreamConnection *__pyx_v_conn, CUgraphicsResource *__pyx_v_pCudaResource, CUstream *__pyx_v_pStream, unsigned int __pyx_v_timeout) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuEGLStreamConsumerAcquireFrame", 1);
  __Pyx_TraceCall("_cuEGLStreamConsumerAcquireFrame", __pyx_f[0], 6545, 1, __PYX_ERR(0, 6545, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":6547
 * cdef CUresult _cuEGLStreamConsumerAcquireFrame(CUeglStreamConnection* conn, CUgraphicsResource* pCudaResource, CUstream* pStream, unsigned int timeout) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuEGLStreamConsumerAcquireFrame
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuEGLStreamConsumerAcquireFrame == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 6547, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":6548
 *     global __cuEGLStreamConsumerAcquireFrame
 *     cuPythonInit()
 *     if __cuEGLStreamConsumerAcquireFrame == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuEGLStreamConsumerAcquireFrame" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuEGLStreamConsumerAcquireFrame == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":6549
 *     cuPythonInit()
 *     if __cuEGLStreamConsumerAcquireFrame == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuEGLStreamConsumerAcquireFrame" not found')
 *     err = (<CUresult (*)(CUeglStreamConnection*, CUgraphicsResource*, CUstream*, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuEGLStreamConsumerAcquireFrame)(conn, pCudaResource, pStream, timeout)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":6550
 *     if __cuEGLStreamConsumerAcquireFrame == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuEGLStreamConsumerAcquireFrame" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUeglStreamConnection*, CUgraphicsResource*, CUstream*, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuEGLStreamConsumerAcquireFrame)(conn, pCudaResource, pStream, timeout)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__437, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 6550, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 6550, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":6549
 *     cuPythonInit()
 *     if __cuEGLStreamConsumerAcquireFrame == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuEGLStreamConsumerAcquireFrame" not found')
 *     err = (<CUresult (*)(CUeglStreamConnection*, CUgraphicsResource*, CUstream*, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuEGLStreamConsumerAcquireFrame)(conn, pCudaResource, pStream, timeout)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":6548
 *     global __cuEGLStreamConsumerAcquireFrame
 *     cuPythonInit()
 *     if __cuEGLStreamConsumerAcquireFrame == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuEGLStreamConsumerAcquireFrame" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":6551
 *         with gil:
 *             raise RuntimeError('Function "cuEGLStreamConsumerAcquireFrame" not found')
 *     err = (<CUresult (*)(CUeglStreamConnection*, CUgraphicsResource*, CUstream*, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuEGLStreamConsumerAcquireFrame)(conn, pCudaResource, pStream, timeout)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(__pyx_t_4cuda_5ccuda_CUeglStreamConnection *, CUgraphicsResource *, CUstream *, unsigned int))__pyx_v_4cuda_5_cuda_5ccuda___cuEGLStreamConsumerAcquireFrame)(__pyx_v_conn, __pyx_v_pCudaResource, __pyx_v_pStream, __pyx_v_timeout); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 6551, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":6552
 *             raise RuntimeError('Function "cuEGLStreamConsumerAcquireFrame" not found')
 *     err = (<CUresult (*)(CUeglStreamConnection*, CUgraphicsResource*, CUstream*, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuEGLStreamConsumerAcquireFrame)(conn, pCudaResource, pStream, timeout)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuEGLStreamConsumerReleaseFrame(CUeglStreamConnection* conn, CUgraphicsResource pCudaResource, CUstream* pStream) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":6545
 *     return err
 * 
 * cdef CUresult _cuEGLStreamConsumerAcquireFrame(CUeglStreamConnection* conn, CUgraphicsResource* pCudaResource, CUstream* pStream, unsigned int timeout) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuEGLStreamConsumerAcquireFrame
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuEGLStreamConsumerAcquireFrame", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":6554
 *     return err
 * 
 * cdef CUresult _cuEGLStreamConsumerReleaseFrame(CUeglStreamConnection* conn, CUgraphicsResource pCudaResource, CUstream* pStream) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuEGLStreamConsumerReleaseFrame
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuEGLStreamConsumerReleaseFrame(__pyx_t_4cuda_5ccuda_CUeglStreamConnection *__pyx_v_conn, CUgraphicsResource __pyx_v_pCudaResource, CUstream *__pyx_v_pStream) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuEGLStreamConsumerReleaseFrame", 1);
  __Pyx_TraceCall("_cuEGLStreamConsumerReleaseFrame", __pyx_f[0], 6554, 1, __PYX_ERR(0, 6554, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":6556
 * cdef CUresult _cuEGLStreamConsumerReleaseFrame(CUeglStreamConnection* conn, CUgraphicsResource pCudaResource, CUstream* pStream) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuEGLStreamConsumerReleaseFrame
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuEGLStreamConsumerReleaseFrame == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 6556, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":6557
 *     global __cuEGLStreamConsumerReleaseFrame
 *     cuPythonInit()
 *     if __cuEGLStreamConsumerReleaseFrame == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuEGLStreamConsumerReleaseFrame" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuEGLStreamConsumerReleaseFrame == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":6558
 *     cuPythonInit()
 *     if __cuEGLStreamConsumerReleaseFrame == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuEGLStreamConsumerReleaseFrame" not found')
 *     err = (<CUresult (*)(CUeglStreamConnection*, CUgraphicsResource, CUstream*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuEGLStreamConsumerReleaseFrame)(conn, pCudaResource, pStream)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":6559
 *     if __cuEGLStreamConsumerReleaseFrame == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuEGLStreamConsumerReleaseFrame" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUeglStreamConnection*, CUgraphicsResource, CUstream*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuEGLStreamConsumerReleaseFrame)(conn, pCudaResource, pStream)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__438, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 6559, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 6559, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":6558
 *     cuPythonInit()
 *     if __cuEGLStreamConsumerReleaseFrame == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuEGLStreamConsumerReleaseFrame" not found')
 *     err = (<CUresult (*)(CUeglStreamConnection*, CUgraphicsResource, CUstream*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuEGLStreamConsumerReleaseFrame)(conn, pCudaResource, pStream)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":6557
 *     global __cuEGLStreamConsumerReleaseFrame
 *     cuPythonInit()
 *     if __cuEGLStreamConsumerReleaseFrame == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuEGLStreamConsumerReleaseFrame" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":6560
 *         with gil:
 *             raise RuntimeError('Function "cuEGLStreamConsumerReleaseFrame" not found')
 *     err = (<CUresult (*)(CUeglStreamConnection*, CUgraphicsResource, CUstream*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuEGLStreamConsumerReleaseFrame)(conn, pCudaResource, pStream)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(__pyx_t_4cuda_5ccuda_CUeglStreamConnection *, CUgraphicsResource, CUstream *))__pyx_v_4cuda_5_cuda_5ccuda___cuEGLStreamConsumerReleaseFrame)(__pyx_v_conn, __pyx_v_pCudaResource, __pyx_v_pStream); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 6560, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":6561
 *             raise RuntimeError('Function "cuEGLStreamConsumerReleaseFrame" not found')
 *     err = (<CUresult (*)(CUeglStreamConnection*, CUgraphicsResource, CUstream*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuEGLStreamConsumerReleaseFrame)(conn, pCudaResource, pStream)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuEGLStreamProducerConnect(CUeglStreamConnection* conn, EGLStreamKHR stream, EGLint width, EGLint height) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":6554
 *     return err
 * 
 * cdef CUresult _cuEGLStreamConsumerReleaseFrame(CUeglStreamConnection* conn, CUgraphicsResource pCudaResource, CUstream* pStream) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuEGLStreamConsumerReleaseFrame
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuEGLStreamConsumerReleaseFrame", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":6563
 *     return err
 * 
 * cdef CUresult _cuEGLStreamProducerConnect(CUeglStreamConnection* conn, EGLStreamKHR stream, EGLint width, EGLint height) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuEGLStreamProducerConnect
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuEGLStreamProducerConnect(__pyx_t_4cuda_5ccuda_CUeglStreamConnection *__pyx_v_conn, __pyx_t_4cuda_5ccuda_EGLStreamKHR __pyx_v_stream, __pyx_t_4cuda_5ccuda_EGLint __pyx_v_width, __pyx_t_4cuda_5ccuda_EGLint __pyx_v_height) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuEGLStreamProducerConnect", 1);
  __Pyx_TraceCall("_cuEGLStreamProducerConnect", __pyx_f[0], 6563, 1, __PYX_ERR(0, 6563, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":6565
 * cdef CUresult _cuEGLStreamProducerConnect(CUeglStreamConnection* conn, EGLStreamKHR stream, EGLint width, EGLint height) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuEGLStreamProducerConnect
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuEGLStreamProducerConnect == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 6565, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":6566
 *     global __cuEGLStreamProducerConnect
 *     cuPythonInit()
 *     if __cuEGLStreamProducerConnect == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuEGLStreamProducerConnect" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuEGLStreamProducerConnect == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":6567
 *     cuPythonInit()
 *     if __cuEGLStreamProducerConnect == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuEGLStreamProducerConnect" not found')
 *     err = (<CUresult (*)(CUeglStreamConnection*, EGLStreamKHR, EGLint, EGLint) except ?CUDA_ERROR_NOT_FOUND nogil> __cuEGLStreamProducerConnect)(conn, stream, width, height)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":6568
 *     if __cuEGLStreamProducerConnect == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuEGLStreamProducerConnect" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUeglStreamConnection*, EGLStreamKHR, EGLint, EGLint) except ?CUDA_ERROR_NOT_FOUND nogil> __cuEGLStreamProducerConnect)(conn, stream, width, height)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__439, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 6568, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 6568, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":6567
 *     cuPythonInit()
 *     if __cuEGLStreamProducerConnect == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuEGLStreamProducerConnect" not found')
 *     err = (<CUresult (*)(CUeglStreamConnection*, EGLStreamKHR, EGLint, EGLint) except ?CUDA_ERROR_NOT_FOUND nogil> __cuEGLStreamProducerConnect)(conn, stream, width, height)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":6566
 *     global __cuEGLStreamProducerConnect
 *     cuPythonInit()
 *     if __cuEGLStreamProducerConnect == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuEGLStreamProducerConnect" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":6569
 *         with gil:
 *             raise RuntimeError('Function "cuEGLStreamProducerConnect" not found')
 *     err = (<CUresult (*)(CUeglStreamConnection*, EGLStreamKHR, EGLint, EGLint) except ?CUDA_ERROR_NOT_FOUND nogil> __cuEGLStreamProducerConnect)(conn, stream, width, height)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(__pyx_t_4cuda_5ccuda_CUeglStreamConnection *, __pyx_t_4cuda_5ccuda_EGLStreamKHR, __pyx_t_4cuda_5ccuda_EGLint, __pyx_t_4cuda_5ccuda_EGLint))__pyx_v_4cuda_5_cuda_5ccuda___cuEGLStreamProducerConnect)(__pyx_v_conn, __pyx_v_stream, __pyx_v_width, __pyx_v_height); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 6569, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":6570
 *             raise RuntimeError('Function "cuEGLStreamProducerConnect" not found')
 *     err = (<CUresult (*)(CUeglStreamConnection*, EGLStreamKHR, EGLint, EGLint) except ?CUDA_ERROR_NOT_FOUND nogil> __cuEGLStreamProducerConnect)(conn, stream, width, height)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuEGLStreamProducerDisconnect(CUeglStreamConnection* conn) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":6563
 *     return err
 * 
 * cdef CUresult _cuEGLStreamProducerConnect(CUeglStreamConnection* conn, EGLStreamKHR stream, EGLint width, EGLint height) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuEGLStreamProducerConnect
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuEGLStreamProducerConnect", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":6572
 *     return err
 * 
 * cdef CUresult _cuEGLStreamProducerDisconnect(CUeglStreamConnection* conn) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuEGLStreamProducerDisconnect
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuEGLStreamProducerDisconnect(__pyx_t_4cuda_5ccuda_CUeglStreamConnection *__pyx_v_conn) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuEGLStreamProducerDisconnect", 1);
  __Pyx_TraceCall("_cuEGLStreamProducerDisconnect", __pyx_f[0], 6572, 1, __PYX_ERR(0, 6572, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":6574
 * cdef CUresult _cuEGLStreamProducerDisconnect(CUeglStreamConnection* conn) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuEGLStreamProducerDisconnect
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuEGLStreamProducerDisconnect == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 6574, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":6575
 *     global __cuEGLStreamProducerDisconnect
 *     cuPythonInit()
 *     if __cuEGLStreamProducerDisconnect == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuEGLStreamProducerDisconnect" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuEGLStreamProducerDisconnect == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":6576
 *     cuPythonInit()
 *     if __cuEGLStreamProducerDisconnect == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuEGLStreamProducerDisconnect" not found')
 *     err = (<CUresult (*)(CUeglStreamConnection*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuEGLStreamProducerDisconnect)(conn)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":6577
 *     if __cuEGLStreamProducerDisconnect == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuEGLStreamProducerDisconnect" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUeglStreamConnection*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuEGLStreamProducerDisconnect)(conn)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__440, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 6577, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 6577, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":6576
 *     cuPythonInit()
 *     if __cuEGLStreamProducerDisconnect == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuEGLStreamProducerDisconnect" not found')
 *     err = (<CUresult (*)(CUeglStreamConnection*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuEGLStreamProducerDisconnect)(conn)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":6575
 *     global __cuEGLStreamProducerDisconnect
 *     cuPythonInit()
 *     if __cuEGLStreamProducerDisconnect == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuEGLStreamProducerDisconnect" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":6578
 *         with gil:
 *             raise RuntimeError('Function "cuEGLStreamProducerDisconnect" not found')
 *     err = (<CUresult (*)(CUeglStreamConnection*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuEGLStreamProducerDisconnect)(conn)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(__pyx_t_4cuda_5ccuda_CUeglStreamConnection *))__pyx_v_4cuda_5_cuda_5ccuda___cuEGLStreamProducerDisconnect)(__pyx_v_conn); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 6578, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":6579
 *             raise RuntimeError('Function "cuEGLStreamProducerDisconnect" not found')
 *     err = (<CUresult (*)(CUeglStreamConnection*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuEGLStreamProducerDisconnect)(conn)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuEGLStreamProducerPresentFrame(CUeglStreamConnection* conn, CUeglFrame eglframe, CUstream* pStream) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":6572
 *     return err
 * 
 * cdef CUresult _cuEGLStreamProducerDisconnect(CUeglStreamConnection* conn) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuEGLStreamProducerDisconnect
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuEGLStreamProducerDisconnect", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":6581
 *     return err
 * 
 * cdef CUresult _cuEGLStreamProducerPresentFrame(CUeglStreamConnection* conn, CUeglFrame eglframe, CUstream* pStream) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuEGLStreamProducerPresentFrame
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuEGLStreamProducerPresentFrame(__pyx_t_4cuda_5ccuda_CUeglStreamConnection *__pyx_v_conn, __pyx_t_4cuda_5ccuda_CUeglFrame __pyx_v_eglframe, CUstream *__pyx_v_pStream) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuEGLStreamProducerPresentFrame", 1);
  __Pyx_TraceCall("_cuEGLStreamProducerPresentFrame", __pyx_f[0], 6581, 1, __PYX_ERR(0, 6581, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":6583
 * cdef CUresult _cuEGLStreamProducerPresentFrame(CUeglStreamConnection* conn, CUeglFrame eglframe, CUstream* pStream) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuEGLStreamProducerPresentFrame
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuEGLStreamProducerPresentFrame == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 6583, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":6584
 *     global __cuEGLStreamProducerPresentFrame
 *     cuPythonInit()
 *     if __cuEGLStreamProducerPresentFrame == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuEGLStreamProducerPresentFrame" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuEGLStreamProducerPresentFrame == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":6585
 *     cuPythonInit()
 *     if __cuEGLStreamProducerPresentFrame == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuEGLStreamProducerPresentFrame" not found')
 *     err = (<CUresult (*)(CUeglStreamConnection*, CUeglFrame, CUstream*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuEGLStreamProducerPresentFrame)(conn, eglframe, pStream)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":6586
 *     if __cuEGLStreamProducerPresentFrame == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuEGLStreamProducerPresentFrame" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUeglStreamConnection*, CUeglFrame, CUstream*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuEGLStreamProducerPresentFrame)(conn, eglframe, pStream)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__441, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 6586, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 6586, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":6585
 *     cuPythonInit()
 *     if __cuEGLStreamProducerPresentFrame == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuEGLStreamProducerPresentFrame" not found')
 *     err = (<CUresult (*)(CUeglStreamConnection*, CUeglFrame, CUstream*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuEGLStreamProducerPresentFrame)(conn, eglframe, pStream)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":6584
 *     global __cuEGLStreamProducerPresentFrame
 *     cuPythonInit()
 *     if __cuEGLStreamProducerPresentFrame == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuEGLStreamProducerPresentFrame" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":6587
 *         with gil:
 *             raise RuntimeError('Function "cuEGLStreamProducerPresentFrame" not found')
 *     err = (<CUresult (*)(CUeglStreamConnection*, CUeglFrame, CUstream*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuEGLStreamProducerPresentFrame)(conn, eglframe, pStream)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(__pyx_t_4cuda_5ccuda_CUeglStreamConnection *, __pyx_t_4cuda_5ccuda_CUeglFrame, CUstream *))__pyx_v_4cuda_5_cuda_5ccuda___cuEGLStreamProducerPresentFrame)(__pyx_v_conn, __pyx_v_eglframe, __pyx_v_pStream); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 6587, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":6588
 *             raise RuntimeError('Function "cuEGLStreamProducerPresentFrame" not found')
 *     err = (<CUresult (*)(CUeglStreamConnection*, CUeglFrame, CUstream*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuEGLStreamProducerPresentFrame)(conn, eglframe, pStream)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuEGLStreamProducerReturnFrame(CUeglStreamConnection* conn, CUeglFrame* eglframe, CUstream* pStream) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":6581
 *     return err
 * 
 * cdef CUresult _cuEGLStreamProducerPresentFrame(CUeglStreamConnection* conn, CUeglFrame eglframe, CUstream* pStream) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuEGLStreamProducerPresentFrame
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuEGLStreamProducerPresentFrame", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":6590
 *     return err
 * 
 * cdef CUresult _cuEGLStreamProducerReturnFrame(CUeglStreamConnection* conn, CUeglFrame* eglframe, CUstream* pStream) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuEGLStreamProducerReturnFrame
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuEGLStreamProducerReturnFrame(__pyx_t_4cuda_5ccuda_CUeglStreamConnection *__pyx_v_conn, __pyx_t_4cuda_5ccuda_CUeglFrame *__pyx_v_eglframe, CUstream *__pyx_v_pStream) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuEGLStreamProducerReturnFrame", 1);
  __Pyx_TraceCall("_cuEGLStreamProducerReturnFrame", __pyx_f[0], 6590, 1, __PYX_ERR(0, 6590, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":6592
 * cdef CUresult _cuEGLStreamProducerReturnFrame(CUeglStreamConnection* conn, CUeglFrame* eglframe, CUstream* pStream) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuEGLStreamProducerReturnFrame
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuEGLStreamProducerReturnFrame == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 6592, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":6593
 *     global __cuEGLStreamProducerReturnFrame
 *     cuPythonInit()
 *     if __cuEGLStreamProducerReturnFrame == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuEGLStreamProducerReturnFrame" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuEGLStreamProducerReturnFrame == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":6594
 *     cuPythonInit()
 *     if __cuEGLStreamProducerReturnFrame == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuEGLStreamProducerReturnFrame" not found')
 *     err = (<CUresult (*)(CUeglStreamConnection*, CUeglFrame*, CUstream*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuEGLStreamProducerReturnFrame)(conn, eglframe, pStream)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":6595
 *     if __cuEGLStreamProducerReturnFrame == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuEGLStreamProducerReturnFrame" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUeglStreamConnection*, CUeglFrame*, CUstream*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuEGLStreamProducerReturnFrame)(conn, eglframe, pStream)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__442, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 6595, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 6595, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":6594
 *     cuPythonInit()
 *     if __cuEGLStreamProducerReturnFrame == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuEGLStreamProducerReturnFrame" not found')
 *     err = (<CUresult (*)(CUeglStreamConnection*, CUeglFrame*, CUstream*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuEGLStreamProducerReturnFrame)(conn, eglframe, pStream)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":6593
 *     global __cuEGLStreamProducerReturnFrame
 *     cuPythonInit()
 *     if __cuEGLStreamProducerReturnFrame == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuEGLStreamProducerReturnFrame" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":6596
 *         with gil:
 *             raise RuntimeError('Function "cuEGLStreamProducerReturnFrame" not found')
 *     err = (<CUresult (*)(CUeglStreamConnection*, CUeglFrame*, CUstream*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuEGLStreamProducerReturnFrame)(conn, eglframe, pStream)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(__pyx_t_4cuda_5ccuda_CUeglStreamConnection *, __pyx_t_4cuda_5ccuda_CUeglFrame *, CUstream *))__pyx_v_4cuda_5_cuda_5ccuda___cuEGLStreamProducerReturnFrame)(__pyx_v_conn, __pyx_v_eglframe, __pyx_v_pStream); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 6596, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":6597
 *             raise RuntimeError('Function "cuEGLStreamProducerReturnFrame" not found')
 *     err = (<CUresult (*)(CUeglStreamConnection*, CUeglFrame*, CUstream*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuEGLStreamProducerReturnFrame)(conn, eglframe, pStream)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuGraphicsResourceGetMappedEglFrame(CUeglFrame* eglFrame, CUgraphicsResource resource, unsigned int index, unsigned int mipLevel) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":6590
 *     return err
 * 
 * cdef CUresult _cuEGLStreamProducerReturnFrame(CUeglStreamConnection* conn, CUeglFrame* eglframe, CUstream* pStream) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuEGLStreamProducerReturnFrame
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuEGLStreamProducerReturnFrame", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":6599
 *     return err
 * 
 * cdef CUresult _cuGraphicsResourceGetMappedEglFrame(CUeglFrame* eglFrame, CUgraphicsResource resource, unsigned int index, unsigned int mipLevel) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuGraphicsResourceGetMappedEglFrame
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuGraphicsResourceGetMappedEglFrame(__pyx_t_4cuda_5ccuda_CUeglFrame *__pyx_v_eglFrame, CUgraphicsResource __pyx_v_resource, unsigned int __pyx_v_index, unsigned int __pyx_v_mipLevel) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuGraphicsResourceGetMappedEglFrame", 1);
  __Pyx_TraceCall("_cuGraphicsResourceGetMappedEglFrame", __pyx_f[0], 6599, 1, __PYX_ERR(0, 6599, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":6601
 * cdef CUresult _cuGraphicsResourceGetMappedEglFrame(CUeglFrame* eglFrame, CUgraphicsResource resource, unsigned int index, unsigned int mipLevel) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuGraphicsResourceGetMappedEglFrame
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuGraphicsResourceGetMappedEglFrame == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 6601, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":6602
 *     global __cuGraphicsResourceGetMappedEglFrame
 *     cuPythonInit()
 *     if __cuGraphicsResourceGetMappedEglFrame == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuGraphicsResourceGetMappedEglFrame" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuGraphicsResourceGetMappedEglFrame == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":6603
 *     cuPythonInit()
 *     if __cuGraphicsResourceGetMappedEglFrame == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuGraphicsResourceGetMappedEglFrame" not found')
 *     err = (<CUresult (*)(CUeglFrame*, CUgraphicsResource, unsigned int, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphicsResourceGetMappedEglFrame)(eglFrame, resource, index, mipLevel)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":6604
 *     if __cuGraphicsResourceGetMappedEglFrame == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuGraphicsResourceGetMappedEglFrame" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUeglFrame*, CUgraphicsResource, unsigned int, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphicsResourceGetMappedEglFrame)(eglFrame, resource, index, mipLevel)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__443, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 6604, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 6604, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":6603
 *     cuPythonInit()
 *     if __cuGraphicsResourceGetMappedEglFrame == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuGraphicsResourceGetMappedEglFrame" not found')
 *     err = (<CUresult (*)(CUeglFrame*, CUgraphicsResource, unsigned int, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphicsResourceGetMappedEglFrame)(eglFrame, resource, index, mipLevel)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":6602
 *     global __cuGraphicsResourceGetMappedEglFrame
 *     cuPythonInit()
 *     if __cuGraphicsResourceGetMappedEglFrame == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuGraphicsResourceGetMappedEglFrame" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":6605
 *         with gil:
 *             raise RuntimeError('Function "cuGraphicsResourceGetMappedEglFrame" not found')
 *     err = (<CUresult (*)(CUeglFrame*, CUgraphicsResource, unsigned int, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphicsResourceGetMappedEglFrame)(eglFrame, resource, index, mipLevel)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(__pyx_t_4cuda_5ccuda_CUeglFrame *, CUgraphicsResource, unsigned int, unsigned int))__pyx_v_4cuda_5_cuda_5ccuda___cuGraphicsResourceGetMappedEglFrame)(__pyx_v_eglFrame, __pyx_v_resource, __pyx_v_index, __pyx_v_mipLevel); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 6605, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":6606
 *             raise RuntimeError('Function "cuGraphicsResourceGetMappedEglFrame" not found')
 *     err = (<CUresult (*)(CUeglFrame*, CUgraphicsResource, unsigned int, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphicsResourceGetMappedEglFrame)(eglFrame, resource, index, mipLevel)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuEventCreateFromEGLSync(CUevent* phEvent, EGLSyncKHR eglSync, unsigned int flags) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":6599
 *     return err
 * 
 * cdef CUresult _cuGraphicsResourceGetMappedEglFrame(CUeglFrame* eglFrame, CUgraphicsResource resource, unsigned int index, unsigned int mipLevel) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuGraphicsResourceGetMappedEglFrame
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuGraphicsResourceGetMappedEglFrame", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":6608
 *     return err
 * 
 * cdef CUresult _cuEventCreateFromEGLSync(CUevent* phEvent, EGLSyncKHR eglSync, unsigned int flags) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuEventCreateFromEGLSync
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuEventCreateFromEGLSync(CUevent *__pyx_v_phEvent, __pyx_t_4cuda_5ccuda_EGLSyncKHR __pyx_v_eglSync, unsigned int __pyx_v_flags) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuEventCreateFromEGLSync", 1);
  __Pyx_TraceCall("_cuEventCreateFromEGLSync", __pyx_f[0], 6608, 1, __PYX_ERR(0, 6608, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":6610
 * cdef CUresult _cuEventCreateFromEGLSync(CUevent* phEvent, EGLSyncKHR eglSync, unsigned int flags) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuEventCreateFromEGLSync
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuEventCreateFromEGLSync == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 6610, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":6611
 *     global __cuEventCreateFromEGLSync
 *     cuPythonInit()
 *     if __cuEventCreateFromEGLSync == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuEventCreateFromEGLSync" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuEventCreateFromEGLSync == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":6612
 *     cuPythonInit()
 *     if __cuEventCreateFromEGLSync == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuEventCreateFromEGLSync" not found')
 *     err = (<CUresult (*)(CUevent*, EGLSyncKHR, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuEventCreateFromEGLSync)(phEvent, eglSync, flags)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":6613
 *     if __cuEventCreateFromEGLSync == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuEventCreateFromEGLSync" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUevent*, EGLSyncKHR, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuEventCreateFromEGLSync)(phEvent, eglSync, flags)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__444, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 6613, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 6613, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":6612
 *     cuPythonInit()
 *     if __cuEventCreateFromEGLSync == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuEventCreateFromEGLSync" not found')
 *     err = (<CUresult (*)(CUevent*, EGLSyncKHR, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuEventCreateFromEGLSync)(phEvent, eglSync, flags)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":6611
 *     global __cuEventCreateFromEGLSync
 *     cuPythonInit()
 *     if __cuEventCreateFromEGLSync == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuEventCreateFromEGLSync" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":6614
 *         with gil:
 *             raise RuntimeError('Function "cuEventCreateFromEGLSync" not found')
 *     err = (<CUresult (*)(CUevent*, EGLSyncKHR, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuEventCreateFromEGLSync)(phEvent, eglSync, flags)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUevent *, __pyx_t_4cuda_5ccuda_EGLSyncKHR, unsigned int))__pyx_v_4cuda_5_cuda_5ccuda___cuEventCreateFromEGLSync)(__pyx_v_phEvent, __pyx_v_eglSync, __pyx_v_flags); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 6614, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":6615
 *             raise RuntimeError('Function "cuEventCreateFromEGLSync" not found')
 *     err = (<CUresult (*)(CUevent*, EGLSyncKHR, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuEventCreateFromEGLSync)(phEvent, eglSync, flags)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuGraphicsGLRegisterBuffer(CUgraphicsResource* pCudaResource, GLuint buffer, unsigned int Flags) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":6608
 *     return err
 * 
 * cdef CUresult _cuEventCreateFromEGLSync(CUevent* phEvent, EGLSyncKHR eglSync, unsigned int flags) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuEventCreateFromEGLSync
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuEventCreateFromEGLSync", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":6617
 *     return err
 * 
 * cdef CUresult _cuGraphicsGLRegisterBuffer(CUgraphicsResource* pCudaResource, GLuint buffer, unsigned int Flags) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuGraphicsGLRegisterBuffer
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuGraphicsGLRegisterBuffer(CUgraphicsResource *__pyx_v_pCudaResource, __pyx_t_4cuda_5ccuda_GLuint __pyx_v_buffer, unsigned int __pyx_v_Flags) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuGraphicsGLRegisterBuffer", 1);
  __Pyx_TraceCall("_cuGraphicsGLRegisterBuffer", __pyx_f[0], 6617, 1, __PYX_ERR(0, 6617, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":6619
 * cdef CUresult _cuGraphicsGLRegisterBuffer(CUgraphicsResource* pCudaResource, GLuint buffer, unsigned int Flags) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuGraphicsGLRegisterBuffer
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuGraphicsGLRegisterBuffer == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 6619, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":6620
 *     global __cuGraphicsGLRegisterBuffer
 *     cuPythonInit()
 *     if __cuGraphicsGLRegisterBuffer == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuGraphicsGLRegisterBuffer" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuGraphicsGLRegisterBuffer == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":6621
 *     cuPythonInit()
 *     if __cuGraphicsGLRegisterBuffer == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuGraphicsGLRegisterBuffer" not found')
 *     err = (<CUresult (*)(CUgraphicsResource*, GLuint, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphicsGLRegisterBuffer)(pCudaResource, buffer, Flags)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":6622
 *     if __cuGraphicsGLRegisterBuffer == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuGraphicsGLRegisterBuffer" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUgraphicsResource*, GLuint, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphicsGLRegisterBuffer)(pCudaResource, buffer, Flags)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__445, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 6622, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 6622, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":6621
 *     cuPythonInit()
 *     if __cuGraphicsGLRegisterBuffer == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuGraphicsGLRegisterBuffer" not found')
 *     err = (<CUresult (*)(CUgraphicsResource*, GLuint, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphicsGLRegisterBuffer)(pCudaResource, buffer, Flags)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":6620
 *     global __cuGraphicsGLRegisterBuffer
 *     cuPythonInit()
 *     if __cuGraphicsGLRegisterBuffer == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuGraphicsGLRegisterBuffer" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":6623
 *         with gil:
 *             raise RuntimeError('Function "cuGraphicsGLRegisterBuffer" not found')
 *     err = (<CUresult (*)(CUgraphicsResource*, GLuint, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphicsGLRegisterBuffer)(pCudaResource, buffer, Flags)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUgraphicsResource *, __pyx_t_4cuda_5ccuda_GLuint, unsigned int))__pyx_v_4cuda_5_cuda_5ccuda___cuGraphicsGLRegisterBuffer)(__pyx_v_pCudaResource, __pyx_v_buffer, __pyx_v_Flags); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 6623, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":6624
 *             raise RuntimeError('Function "cuGraphicsGLRegisterBuffer" not found')
 *     err = (<CUresult (*)(CUgraphicsResource*, GLuint, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphicsGLRegisterBuffer)(pCudaResource, buffer, Flags)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuGraphicsGLRegisterImage(CUgraphicsResource* pCudaResource, GLuint image, GLenum target, unsigned int Flags) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":6617
 *     return err
 * 
 * cdef CUresult _cuGraphicsGLRegisterBuffer(CUgraphicsResource* pCudaResource, GLuint buffer, unsigned int Flags) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuGraphicsGLRegisterBuffer
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuGraphicsGLRegisterBuffer", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":6626
 *     return err
 * 
 * cdef CUresult _cuGraphicsGLRegisterImage(CUgraphicsResource* pCudaResource, GLuint image, GLenum target, unsigned int Flags) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuGraphicsGLRegisterImage
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuGraphicsGLRegisterImage(CUgraphicsResource *__pyx_v_pCudaResource, __pyx_t_4cuda_5ccuda_GLuint __pyx_v_image, __pyx_t_4cuda_5ccuda_GLenum __pyx_v_target, unsigned int __pyx_v_Flags) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuGraphicsGLRegisterImage", 1);
  __Pyx_TraceCall("_cuGraphicsGLRegisterImage", __pyx_f[0], 6626, 1, __PYX_ERR(0, 6626, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":6628
 * cdef CUresult _cuGraphicsGLRegisterImage(CUgraphicsResource* pCudaResource, GLuint image, GLenum target, unsigned int Flags) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuGraphicsGLRegisterImage
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuGraphicsGLRegisterImage == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 6628, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":6629
 *     global __cuGraphicsGLRegisterImage
 *     cuPythonInit()
 *     if __cuGraphicsGLRegisterImage == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuGraphicsGLRegisterImage" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuGraphicsGLRegisterImage == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":6630
 *     cuPythonInit()
 *     if __cuGraphicsGLRegisterImage == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuGraphicsGLRegisterImage" not found')
 *     err = (<CUresult (*)(CUgraphicsResource*, GLuint, GLenum, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphicsGLRegisterImage)(pCudaResource, image, target, Flags)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":6631
 *     if __cuGraphicsGLRegisterImage == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuGraphicsGLRegisterImage" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUgraphicsResource*, GLuint, GLenum, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphicsGLRegisterImage)(pCudaResource, image, target, Flags)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__446, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 6631, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 6631, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":6630
 *     cuPythonInit()
 *     if __cuGraphicsGLRegisterImage == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuGraphicsGLRegisterImage" not found')
 *     err = (<CUresult (*)(CUgraphicsResource*, GLuint, GLenum, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphicsGLRegisterImage)(pCudaResource, image, target, Flags)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":6629
 *     global __cuGraphicsGLRegisterImage
 *     cuPythonInit()
 *     if __cuGraphicsGLRegisterImage == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuGraphicsGLRegisterImage" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":6632
 *         with gil:
 *             raise RuntimeError('Function "cuGraphicsGLRegisterImage" not found')
 *     err = (<CUresult (*)(CUgraphicsResource*, GLuint, GLenum, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphicsGLRegisterImage)(pCudaResource, image, target, Flags)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUgraphicsResource *, __pyx_t_4cuda_5ccuda_GLuint, __pyx_t_4cuda_5ccuda_GLenum, unsigned int))__pyx_v_4cuda_5_cuda_5ccuda___cuGraphicsGLRegisterImage)(__pyx_v_pCudaResource, __pyx_v_image, __pyx_v_target, __pyx_v_Flags); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 6632, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":6633
 *             raise RuntimeError('Function "cuGraphicsGLRegisterImage" not found')
 *     err = (<CUresult (*)(CUgraphicsResource*, GLuint, GLenum, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphicsGLRegisterImage)(pCudaResource, image, target, Flags)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuGLGetDevices_v2(unsigned int* pCudaDeviceCount, CUdevice* pCudaDevices, unsigned int cudaDeviceCount, CUGLDeviceList deviceList) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":6626
 *     return err
 * 
 * cdef CUresult _cuGraphicsGLRegisterImage(CUgraphicsResource* pCudaResource, GLuint image, GLenum target, unsigned int Flags) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuGraphicsGLRegisterImage
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuGraphicsGLRegisterImage", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":6635
 *     return err
 * 
 * cdef CUresult _cuGLGetDevices_v2(unsigned int* pCudaDeviceCount, CUdevice* pCudaDevices, unsigned int cudaDeviceCount, CUGLDeviceList deviceList) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuGLGetDevices_v2
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuGLGetDevices_v2(unsigned int *__pyx_v_pCudaDeviceCount, CUdevice *__pyx_v_pCudaDevices, unsigned int __pyx_v_cudaDeviceCount, __pyx_t_4cuda_5ccuda_CUGLDeviceList __pyx_v_deviceList) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuGLGetDevices_v2", 1);
  __Pyx_TraceCall("_cuGLGetDevices_v2", __pyx_f[0], 6635, 1, __PYX_ERR(0, 6635, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":6637
 * cdef CUresult _cuGLGetDevices_v2(unsigned int* pCudaDeviceCount, CUdevice* pCudaDevices, unsigned int cudaDeviceCount, CUGLDeviceList deviceList) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuGLGetDevices_v2
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuGLGetDevices_v2 == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 6637, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":6638
 *     global __cuGLGetDevices_v2
 *     cuPythonInit()
 *     if __cuGLGetDevices_v2 == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuGLGetDevices_v2" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuGLGetDevices_v2 == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":6639
 *     cuPythonInit()
 *     if __cuGLGetDevices_v2 == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuGLGetDevices_v2" not found')
 *     err = (<CUresult (*)(unsigned int*, CUdevice*, unsigned int, CUGLDeviceList) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGLGetDevices_v2)(pCudaDeviceCount, pCudaDevices, cudaDeviceCount, deviceList)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":6640
 *     if __cuGLGetDevices_v2 == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuGLGetDevices_v2" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(unsigned int*, CUdevice*, unsigned int, CUGLDeviceList) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGLGetDevices_v2)(pCudaDeviceCount, pCudaDevices, cudaDeviceCount, deviceList)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__447, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 6640, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 6640, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":6639
 *     cuPythonInit()
 *     if __cuGLGetDevices_v2 == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuGLGetDevices_v2" not found')
 *     err = (<CUresult (*)(unsigned int*, CUdevice*, unsigned int, CUGLDeviceList) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGLGetDevices_v2)(pCudaDeviceCount, pCudaDevices, cudaDeviceCount, deviceList)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":6638
 *     global __cuGLGetDevices_v2
 *     cuPythonInit()
 *     if __cuGLGetDevices_v2 == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuGLGetDevices_v2" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":6641
 *         with gil:
 *             raise RuntimeError('Function "cuGLGetDevices_v2" not found')
 *     err = (<CUresult (*)(unsigned int*, CUdevice*, unsigned int, CUGLDeviceList) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGLGetDevices_v2)(pCudaDeviceCount, pCudaDevices, cudaDeviceCount, deviceList)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(unsigned int *, CUdevice *, unsigned int, __pyx_t_4cuda_5ccuda_CUGLDeviceList))__pyx_v_4cuda_5_cuda_5ccuda___cuGLGetDevices_v2)(__pyx_v_pCudaDeviceCount, __pyx_v_pCudaDevices, __pyx_v_cudaDeviceCount, __pyx_v_deviceList); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 6641, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":6642
 *             raise RuntimeError('Function "cuGLGetDevices_v2" not found')
 *     err = (<CUresult (*)(unsigned int*, CUdevice*, unsigned int, CUGLDeviceList) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGLGetDevices_v2)(pCudaDeviceCount, pCudaDevices, cudaDeviceCount, deviceList)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuVDPAUGetDevice(CUdevice* pDevice, VdpDevice vdpDevice, VdpGetProcAddress* vdpGetProcAddress) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":6635
 *     return err
 * 
 * cdef CUresult _cuGLGetDevices_v2(unsigned int* pCudaDeviceCount, CUdevice* pCudaDevices, unsigned int cudaDeviceCount, CUGLDeviceList deviceList) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuGLGetDevices_v2
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuGLGetDevices_v2", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":6644
 *     return err
 * 
 * cdef CUresult _cuVDPAUGetDevice(CUdevice* pDevice, VdpDevice vdpDevice, VdpGetProcAddress* vdpGetProcAddress) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuVDPAUGetDevice
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuVDPAUGetDevice(CUdevice *__pyx_v_pDevice, __pyx_t_4cuda_5ccuda_VdpDevice __pyx_v_vdpDevice, __pyx_t_4cuda_5ccuda_VdpGetProcAddress *__pyx_v_vdpGetProcAddress) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuVDPAUGetDevice", 1);
  __Pyx_TraceCall("_cuVDPAUGetDevice", __pyx_f[0], 6644, 1, __PYX_ERR(0, 6644, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":6646
 * cdef CUresult _cuVDPAUGetDevice(CUdevice* pDevice, VdpDevice vdpDevice, VdpGetProcAddress* vdpGetProcAddress) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuVDPAUGetDevice
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuVDPAUGetDevice == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 6646, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":6647
 *     global __cuVDPAUGetDevice
 *     cuPythonInit()
 *     if __cuVDPAUGetDevice == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuVDPAUGetDevice" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuVDPAUGetDevice == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":6648
 *     cuPythonInit()
 *     if __cuVDPAUGetDevice == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuVDPAUGetDevice" not found')
 *     err = (<CUresult (*)(CUdevice*, VdpDevice, VdpGetProcAddress*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuVDPAUGetDevice)(pDevice, vdpDevice, vdpGetProcAddress)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":6649
 *     if __cuVDPAUGetDevice == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuVDPAUGetDevice" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUdevice*, VdpDevice, VdpGetProcAddress*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuVDPAUGetDevice)(pDevice, vdpDevice, vdpGetProcAddress)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__448, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 6649, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 6649, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":6648
 *     cuPythonInit()
 *     if __cuVDPAUGetDevice == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuVDPAUGetDevice" not found')
 *     err = (<CUresult (*)(CUdevice*, VdpDevice, VdpGetProcAddress*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuVDPAUGetDevice)(pDevice, vdpDevice, vdpGetProcAddress)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":6647
 *     global __cuVDPAUGetDevice
 *     cuPythonInit()
 *     if __cuVDPAUGetDevice == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuVDPAUGetDevice" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":6650
 *         with gil:
 *             raise RuntimeError('Function "cuVDPAUGetDevice" not found')
 *     err = (<CUresult (*)(CUdevice*, VdpDevice, VdpGetProcAddress*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuVDPAUGetDevice)(pDevice, vdpDevice, vdpGetProcAddress)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUdevice *, __pyx_t_4cuda_5ccuda_VdpDevice, __pyx_t_4cuda_5ccuda_VdpGetProcAddress *))__pyx_v_4cuda_5_cuda_5ccuda___cuVDPAUGetDevice)(__pyx_v_pDevice, __pyx_v_vdpDevice, __pyx_v_vdpGetProcAddress); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 6650, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":6651
 *             raise RuntimeError('Function "cuVDPAUGetDevice" not found')
 *     err = (<CUresult (*)(CUdevice*, VdpDevice, VdpGetProcAddress*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuVDPAUGetDevice)(pDevice, vdpDevice, vdpGetProcAddress)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuVDPAUCtxCreate_v2(CUcontext* pCtx, unsigned int flags, CUdevice device, VdpDevice vdpDevice, VdpGetProcAddress* vdpGetProcAddress) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":6644
 *     return err
 * 
 * cdef CUresult _cuVDPAUGetDevice(CUdevice* pDevice, VdpDevice vdpDevice, VdpGetProcAddress* vdpGetProcAddress) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuVDPAUGetDevice
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuVDPAUGetDevice", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":6653
 *     return err
 * 
 * cdef CUresult _cuVDPAUCtxCreate_v2(CUcontext* pCtx, unsigned int flags, CUdevice device, VdpDevice vdpDevice, VdpGetProcAddress* vdpGetProcAddress) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuVDPAUCtxCreate_v2
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuVDPAUCtxCreate_v2(CUcontext *__pyx_v_pCtx, unsigned int __pyx_v_flags, CUdevice __pyx_v_device, __pyx_t_4cuda_5ccuda_VdpDevice __pyx_v_vdpDevice, __pyx_t_4cuda_5ccuda_VdpGetProcAddress *__pyx_v_vdpGetProcAddress) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuVDPAUCtxCreate_v2", 1);
  __Pyx_TraceCall("_cuVDPAUCtxCreate_v2", __pyx_f[0], 6653, 1, __PYX_ERR(0, 6653, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":6655
 * cdef CUresult _cuVDPAUCtxCreate_v2(CUcontext* pCtx, unsigned int flags, CUdevice device, VdpDevice vdpDevice, VdpGetProcAddress* vdpGetProcAddress) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuVDPAUCtxCreate_v2
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuVDPAUCtxCreate_v2 == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 6655, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":6656
 *     global __cuVDPAUCtxCreate_v2
 *     cuPythonInit()
 *     if __cuVDPAUCtxCreate_v2 == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuVDPAUCtxCreate_v2" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuVDPAUCtxCreate_v2 == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":6657
 *     cuPythonInit()
 *     if __cuVDPAUCtxCreate_v2 == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuVDPAUCtxCreate_v2" not found')
 *     err = (<CUresult (*)(CUcontext*, unsigned int, CUdevice, VdpDevice, VdpGetProcAddress*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuVDPAUCtxCreate_v2)(pCtx, flags, device, vdpDevice, vdpGetProcAddress)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":6658
 *     if __cuVDPAUCtxCreate_v2 == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuVDPAUCtxCreate_v2" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUcontext*, unsigned int, CUdevice, VdpDevice, VdpGetProcAddress*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuVDPAUCtxCreate_v2)(pCtx, flags, device, vdpDevice, vdpGetProcAddress)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__449, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 6658, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 6658, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":6657
 *     cuPythonInit()
 *     if __cuVDPAUCtxCreate_v2 == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuVDPAUCtxCreate_v2" not found')
 *     err = (<CUresult (*)(CUcontext*, unsigned int, CUdevice, VdpDevice, VdpGetProcAddress*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuVDPAUCtxCreate_v2)(pCtx, flags, device, vdpDevice, vdpGetProcAddress)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":6656
 *     global __cuVDPAUCtxCreate_v2
 *     cuPythonInit()
 *     if __cuVDPAUCtxCreate_v2 == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuVDPAUCtxCreate_v2" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":6659
 *         with gil:
 *             raise RuntimeError('Function "cuVDPAUCtxCreate_v2" not found')
 *     err = (<CUresult (*)(CUcontext*, unsigned int, CUdevice, VdpDevice, VdpGetProcAddress*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuVDPAUCtxCreate_v2)(pCtx, flags, device, vdpDevice, vdpGetProcAddress)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUcontext *, unsigned int, CUdevice, __pyx_t_4cuda_5ccuda_VdpDevice, __pyx_t_4cuda_5ccuda_VdpGetProcAddress *))__pyx_v_4cuda_5_cuda_5ccuda___cuVDPAUCtxCreate_v2)(__pyx_v_pCtx, __pyx_v_flags, __pyx_v_device, __pyx_v_vdpDevice, __pyx_v_vdpGetProcAddress); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 6659, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":6660
 *             raise RuntimeError('Function "cuVDPAUCtxCreate_v2" not found')
 *     err = (<CUresult (*)(CUcontext*, unsigned int, CUdevice, VdpDevice, VdpGetProcAddress*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuVDPAUCtxCreate_v2)(pCtx, flags, device, vdpDevice, vdpGetProcAddress)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuGraphicsVDPAURegisterVideoSurface(CUgraphicsResource* pCudaResource, VdpVideoSurface vdpSurface, unsigned int flags) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":6653
 *     return err
 * 
 * cdef CUresult _cuVDPAUCtxCreate_v2(CUcontext* pCtx, unsigned int flags, CUdevice device, VdpDevice vdpDevice, VdpGetProcAddress* vdpGetProcAddress) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuVDPAUCtxCreate_v2
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuVDPAUCtxCreate_v2", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":6662
 *     return err
 * 
 * cdef CUresult _cuGraphicsVDPAURegisterVideoSurface(CUgraphicsResource* pCudaResource, VdpVideoSurface vdpSurface, unsigned int flags) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuGraphicsVDPAURegisterVideoSurface
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuGraphicsVDPAURegisterVideoSurface(CUgraphicsResource *__pyx_v_pCudaResource, __pyx_t_4cuda_5ccuda_VdpVideoSurface __pyx_v_vdpSurface, unsigned int __pyx_v_flags) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuGraphicsVDPAURegisterVideoSurface", 1);
  __Pyx_TraceCall("_cuGraphicsVDPAURegisterVideoSurface", __pyx_f[0], 6662, 1, __PYX_ERR(0, 6662, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":6664
 * cdef CUresult _cuGraphicsVDPAURegisterVideoSurface(CUgraphicsResource* pCudaResource, VdpVideoSurface vdpSurface, unsigned int flags) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuGraphicsVDPAURegisterVideoSurface
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuGraphicsVDPAURegisterVideoSurface == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 6664, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":6665
 *     global __cuGraphicsVDPAURegisterVideoSurface
 *     cuPythonInit()
 *     if __cuGraphicsVDPAURegisterVideoSurface == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuGraphicsVDPAURegisterVideoSurface" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuGraphicsVDPAURegisterVideoSurface == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":6666
 *     cuPythonInit()
 *     if __cuGraphicsVDPAURegisterVideoSurface == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuGraphicsVDPAURegisterVideoSurface" not found')
 *     err = (<CUresult (*)(CUgraphicsResource*, VdpVideoSurface, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphicsVDPAURegisterVideoSurface)(pCudaResource, vdpSurface, flags)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":6667
 *     if __cuGraphicsVDPAURegisterVideoSurface == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuGraphicsVDPAURegisterVideoSurface" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUgraphicsResource*, VdpVideoSurface, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphicsVDPAURegisterVideoSurface)(pCudaResource, vdpSurface, flags)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__450, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 6667, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 6667, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":6666
 *     cuPythonInit()
 *     if __cuGraphicsVDPAURegisterVideoSurface == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuGraphicsVDPAURegisterVideoSurface" not found')
 *     err = (<CUresult (*)(CUgraphicsResource*, VdpVideoSurface, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphicsVDPAURegisterVideoSurface)(pCudaResource, vdpSurface, flags)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":6665
 *     global __cuGraphicsVDPAURegisterVideoSurface
 *     cuPythonInit()
 *     if __cuGraphicsVDPAURegisterVideoSurface == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuGraphicsVDPAURegisterVideoSurface" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":6668
 *         with gil:
 *             raise RuntimeError('Function "cuGraphicsVDPAURegisterVideoSurface" not found')
 *     err = (<CUresult (*)(CUgraphicsResource*, VdpVideoSurface, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphicsVDPAURegisterVideoSurface)(pCudaResource, vdpSurface, flags)             # <<<<<<<<<<<<<<
 *     return err
 * 
 */
  __pyx_t_4 = ((CUresult (*)(CUgraphicsResource *, __pyx_t_4cuda_5ccuda_VdpVideoSurface, unsigned int))__pyx_v_4cuda_5_cuda_5ccuda___cuGraphicsVDPAURegisterVideoSurface)(__pyx_v_pCudaResource, __pyx_v_vdpSurface, __pyx_v_flags); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 6668, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":6669
 *             raise RuntimeError('Function "cuGraphicsVDPAURegisterVideoSurface" not found')
 *     err = (<CUresult (*)(CUgraphicsResource*, VdpVideoSurface, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphicsVDPAURegisterVideoSurface)(pCudaResource, vdpSurface, flags)
 *     return err             # <<<<<<<<<<<<<<
 * 
 * cdef CUresult _cuGraphicsVDPAURegisterOutputSurface(CUgraphicsResource* pCudaResource, VdpOutputSurface vdpSurface, unsigned int flags) except ?CUDA_ERROR_NOT_FOUND nogil:
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":6662
 *     return err
 * 
 * cdef CUresult _cuGraphicsVDPAURegisterVideoSurface(CUgraphicsResource* pCudaResource, VdpVideoSurface vdpSurface, unsigned int flags) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuGraphicsVDPAURegisterVideoSurface
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuGraphicsVDPAURegisterVideoSurface", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

/* "cuda/_cuda/ccuda.pyx":6671
 *     return err
 * 
 * cdef CUresult _cuGraphicsVDPAURegisterOutputSurface(CUgraphicsResource* pCudaResource, VdpOutputSurface vdpSurface, unsigned int flags) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuGraphicsVDPAURegisterOutputSurface
 *     cuPythonInit()
 */

static CUresult __pyx_f_4cuda_5_cuda_5ccuda__cuGraphicsVDPAURegisterOutputSurface(CUgraphicsResource *__pyx_v_pCudaResource, __pyx_t_4cuda_5ccuda_VdpOutputSurface __pyx_v_vdpSurface, unsigned int __pyx_v_flags) {
  CUresult __pyx_v_err;
  CUresult __pyx_r;
  __Pyx_TraceDeclarations
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  CUresult __pyx_t_4;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  #ifdef WITH_THREAD
  PyGILState_STATE __pyx_gilstate_save;
  #endif
  __Pyx_RefNannySetupContext("_cuGraphicsVDPAURegisterOutputSurface", 1);
  __Pyx_TraceCall("_cuGraphicsVDPAURegisterOutputSurface", __pyx_f[0], 6671, 1, __PYX_ERR(0, 6671, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":6673
 * cdef CUresult _cuGraphicsVDPAURegisterOutputSurface(CUgraphicsResource* pCudaResource, VdpOutputSurface vdpSurface, unsigned int flags) except ?CUDA_ERROR_NOT_FOUND nogil:
 *     global __cuGraphicsVDPAURegisterOutputSurface
 *     cuPythonInit()             # <<<<<<<<<<<<<<
 *     if __cuGraphicsVDPAURegisterOutputSurface == NULL:
 *         with gil:
 */
  __pyx_t_1 = __pyx_f_4cuda_5_cuda_5ccuda_cuPythonInit(); if (unlikely(__pyx_t_1 == ((int)-1))) __PYX_ERR(0, 6673, __pyx_L1_error)

  /* "cuda/_cuda/ccuda.pyx":6674
 *     global __cuGraphicsVDPAURegisterOutputSurface
 *     cuPythonInit()
 *     if __cuGraphicsVDPAURegisterOutputSurface == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuGraphicsVDPAURegisterOutputSurface" not found')
 */
  __pyx_t_2 = (__pyx_v_4cuda_5_cuda_5ccuda___cuGraphicsVDPAURegisterOutputSurface == NULL);
  if (unlikely(__pyx_t_2)) {

    /* "cuda/_cuda/ccuda.pyx":6675
 *     cuPythonInit()
 *     if __cuGraphicsVDPAURegisterOutputSurface == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuGraphicsVDPAURegisterOutputSurface" not found')
 *     err = (<CUresult (*)(CUgraphicsResource*, VdpOutputSurface, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphicsVDPAURegisterOutputSurface)(pCudaResource, vdpSurface, flags)
 */
    {
        #ifdef WITH_THREAD
        PyGILState_STATE __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
        #endif
        /*try:*/ {

          /* "cuda/_cuda/ccuda.pyx":6676
 *     if __cuGraphicsVDPAURegisterOutputSurface == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuGraphicsVDPAURegisterOutputSurface" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUgraphicsResource*, VdpOutputSurface, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphicsVDPAURegisterOutputSurface)(pCudaResource, vdpSurface, flags)
 *     return err
 */
          __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__451, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 6676, __pyx_L5_error)
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __PYX_ERR(0, 6676, __pyx_L5_error)
        }

        /* "cuda/_cuda/ccuda.pyx":6675
 *     cuPythonInit()
 *     if __cuGraphicsVDPAURegisterOutputSurface == NULL:
 *         with gil:             # <<<<<<<<<<<<<<
 *             raise RuntimeError('Function "cuGraphicsVDPAURegisterOutputSurface" not found')
 *     err = (<CUresult (*)(CUgraphicsResource*, VdpOutputSurface, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphicsVDPAURegisterOutputSurface)(pCudaResource, vdpSurface, flags)
 */
        /*finally:*/ {
          __pyx_L5_error: {
            #ifdef WITH_THREAD
            __Pyx_PyGILState_Release(__pyx_gilstate_save);
            #endif
            goto __pyx_L1_error;
          }
        }
    }

    /* "cuda/_cuda/ccuda.pyx":6674
 *     global __cuGraphicsVDPAURegisterOutputSurface
 *     cuPythonInit()
 *     if __cuGraphicsVDPAURegisterOutputSurface == NULL:             # <<<<<<<<<<<<<<
 *         with gil:
 *             raise RuntimeError('Function "cuGraphicsVDPAURegisterOutputSurface" not found')
 */
  }

  /* "cuda/_cuda/ccuda.pyx":6677
 *         with gil:
 *             raise RuntimeError('Function "cuGraphicsVDPAURegisterOutputSurface" not found')
 *     err = (<CUresult (*)(CUgraphicsResource*, VdpOutputSurface, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphicsVDPAURegisterOutputSurface)(pCudaResource, vdpSurface, flags)             # <<<<<<<<<<<<<<
 *     return err
 */
  __pyx_t_4 = ((CUresult (*)(CUgraphicsResource *, __pyx_t_4cuda_5ccuda_VdpOutputSurface, unsigned int))__pyx_v_4cuda_5_cuda_5ccuda___cuGraphicsVDPAURegisterOutputSurface)(__pyx_v_pCudaResource, __pyx_v_vdpSurface, __pyx_v_flags); if (unlikely(__pyx_t_4 == ((CUresult)CUDA_ERROR_NOT_FOUND) && __Pyx_ErrOccurredWithGIL())) __PYX_ERR(0, 6677, __pyx_L1_error)
  __pyx_v_err = __pyx_t_4;

  /* "cuda/_cuda/ccuda.pyx":6678
 *             raise RuntimeError('Function "cuGraphicsVDPAURegisterOutputSurface" not found')
 *     err = (<CUresult (*)(CUgraphicsResource*, VdpOutputSurface, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphicsVDPAURegisterOutputSurface)(pCudaResource, vdpSurface, flags)
 *     return err             # <<<<<<<<<<<<<<
 */
  __pyx_r = __pyx_v_err;
  goto __pyx_L0;

  /* "cuda/_cuda/ccuda.pyx":6671
 *     return err
 * 
 * cdef CUresult _cuGraphicsVDPAURegisterOutputSurface(CUgraphicsResource* pCudaResource, VdpOutputSurface vdpSurface, unsigned int flags) except ?CUDA_ERROR_NOT_FOUND nogil:             # <<<<<<<<<<<<<<
 *     global __cuGraphicsVDPAURegisterOutputSurface
 *     cuPythonInit()
 */

  /* function exit code */
  __pyx_L1_error:;
  #ifdef WITH_THREAD
  __pyx_gilstate_save = __Pyx_PyGILState_Ensure();
  #endif
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_AddTraceback("cuda._cuda.ccuda._cuGraphicsVDPAURegisterOutputSurface", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = CUDA_ERROR_NOT_FOUND;
  #ifdef WITH_THREAD
  __Pyx_PyGILState_Release(__pyx_gilstate_save);
  #endif
  __pyx_L0:;
  __Pyx_TraceReturn(Py_None, 1);
  __Pyx_RefNannyFinishContextNogil()
  return __pyx_r;
}

static PyMethodDef __pyx_methods[] = {
  {0, 0, 0, 0}
};
#ifndef CYTHON_SMALL_CODE
#if defined(__clang__)
    #define CYTHON_SMALL_CODE
#elif defined(__GNUC__) && (__GNUC__ > 4 || (__GNUC__ == 4 && __GNUC_MINOR__ >= 3))
    #define CYTHON_SMALL_CODE __attribute__((cold))
#else
    #define CYTHON_SMALL_CODE
#endif
#endif
/* #### Code section: pystring_table ### */

static int __Pyx_CreateStringTabAndInitStrings(void) {
  __Pyx_StringTabEntry __pyx_string_tab[] = {
    {&__pyx_n_u_CUDA_PYTHON_CUDA_PER_THREAD_DEFA, __pyx_k_CUDA_PYTHON_CUDA_PER_THREAD_DEFA, sizeof(__pyx_k_CUDA_PYTHON_CUDA_PER_THREAD_DEFA), 0, 1, 0, 1},
    {&__pyx_kp_u_Failed_to_dlopen, __pyx_k_Failed_to_dlopen, sizeof(__pyx_k_Failed_to_dlopen), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuArray3DCreate_v2_not, __pyx_k_Function_cuArray3DCreate_v2_not, sizeof(__pyx_k_Function_cuArray3DCreate_v2_not), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuArray3DGetDescriptor, __pyx_k_Function_cuArray3DGetDescriptor, sizeof(__pyx_k_Function_cuArray3DGetDescriptor), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuArrayCreate_v2_not_fo, __pyx_k_Function_cuArrayCreate_v2_not_fo, sizeof(__pyx_k_Function_cuArrayCreate_v2_not_fo), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuArrayDestroy_not_foun, __pyx_k_Function_cuArrayDestroy_not_foun, sizeof(__pyx_k_Function_cuArrayDestroy_not_foun), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuArrayGetDescriptor_v2, __pyx_k_Function_cuArrayGetDescriptor_v2, sizeof(__pyx_k_Function_cuArrayGetDescriptor_v2), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuArrayGetMemoryRequire, __pyx_k_Function_cuArrayGetMemoryRequire, sizeof(__pyx_k_Function_cuArrayGetMemoryRequire), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuArrayGetPlane_not_fou, __pyx_k_Function_cuArrayGetPlane_not_fou, sizeof(__pyx_k_Function_cuArrayGetPlane_not_fou), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuArrayGetSparsePropert, __pyx_k_Function_cuArrayGetSparsePropert, sizeof(__pyx_k_Function_cuArrayGetSparsePropert), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuCoredumpGetAttribute, __pyx_k_Function_cuCoredumpGetAttribute, sizeof(__pyx_k_Function_cuCoredumpGetAttribute), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuCoredumpGetAttributeG, __pyx_k_Function_cuCoredumpGetAttributeG, sizeof(__pyx_k_Function_cuCoredumpGetAttributeG), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuCoredumpSetAttribute, __pyx_k_Function_cuCoredumpSetAttribute, sizeof(__pyx_k_Function_cuCoredumpSetAttribute), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuCoredumpSetAttributeG, __pyx_k_Function_cuCoredumpSetAttributeG, sizeof(__pyx_k_Function_cuCoredumpSetAttributeG), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuCtxAttach_not_found, __pyx_k_Function_cuCtxAttach_not_found, sizeof(__pyx_k_Function_cuCtxAttach_not_found), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuCtxCreate_v2_not_foun, __pyx_k_Function_cuCtxCreate_v2_not_foun, sizeof(__pyx_k_Function_cuCtxCreate_v2_not_foun), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuCtxCreate_v3_not_foun, __pyx_k_Function_cuCtxCreate_v3_not_foun, sizeof(__pyx_k_Function_cuCtxCreate_v3_not_foun), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuCtxDestroy_v2_not_fou, __pyx_k_Function_cuCtxDestroy_v2_not_fou, sizeof(__pyx_k_Function_cuCtxDestroy_v2_not_fou), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuCtxDetach_not_found, __pyx_k_Function_cuCtxDetach_not_found, sizeof(__pyx_k_Function_cuCtxDetach_not_found), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuCtxDisablePeerAccess, __pyx_k_Function_cuCtxDisablePeerAccess, sizeof(__pyx_k_Function_cuCtxDisablePeerAccess), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuCtxEnablePeerAccess_n, __pyx_k_Function_cuCtxEnablePeerAccess_n, sizeof(__pyx_k_Function_cuCtxEnablePeerAccess_n), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuCtxFromGreenCtx_not_f, __pyx_k_Function_cuCtxFromGreenCtx_not_f, sizeof(__pyx_k_Function_cuCtxFromGreenCtx_not_f), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuCtxGetApiVersion_not, __pyx_k_Function_cuCtxGetApiVersion_not, sizeof(__pyx_k_Function_cuCtxGetApiVersion_not), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuCtxGetCacheConfig_not, __pyx_k_Function_cuCtxGetCacheConfig_not, sizeof(__pyx_k_Function_cuCtxGetCacheConfig_not), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuCtxGetCurrent_not_fou, __pyx_k_Function_cuCtxGetCurrent_not_fou, sizeof(__pyx_k_Function_cuCtxGetCurrent_not_fou), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuCtxGetDevResource_not, __pyx_k_Function_cuCtxGetDevResource_not, sizeof(__pyx_k_Function_cuCtxGetDevResource_not), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuCtxGetDevice_not_foun, __pyx_k_Function_cuCtxGetDevice_not_foun, sizeof(__pyx_k_Function_cuCtxGetDevice_not_foun), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuCtxGetExecAffinity_no, __pyx_k_Function_cuCtxGetExecAffinity_no, sizeof(__pyx_k_Function_cuCtxGetExecAffinity_no), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuCtxGetFlags_not_found, __pyx_k_Function_cuCtxGetFlags_not_found, sizeof(__pyx_k_Function_cuCtxGetFlags_not_found), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuCtxGetId_not_found, __pyx_k_Function_cuCtxGetId_not_found, sizeof(__pyx_k_Function_cuCtxGetId_not_found), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuCtxGetLimit_not_found, __pyx_k_Function_cuCtxGetLimit_not_found, sizeof(__pyx_k_Function_cuCtxGetLimit_not_found), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuCtxGetSharedMemConfig, __pyx_k_Function_cuCtxGetSharedMemConfig, sizeof(__pyx_k_Function_cuCtxGetSharedMemConfig), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuCtxGetStreamPriorityR, __pyx_k_Function_cuCtxGetStreamPriorityR, sizeof(__pyx_k_Function_cuCtxGetStreamPriorityR), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuCtxPopCurrent_v2_not, __pyx_k_Function_cuCtxPopCurrent_v2_not, sizeof(__pyx_k_Function_cuCtxPopCurrent_v2_not), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuCtxPushCurrent_v2_not, __pyx_k_Function_cuCtxPushCurrent_v2_not, sizeof(__pyx_k_Function_cuCtxPushCurrent_v2_not), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuCtxResetPersistingL2C, __pyx_k_Function_cuCtxResetPersistingL2C, sizeof(__pyx_k_Function_cuCtxResetPersistingL2C), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuCtxSetCacheConfig_not, __pyx_k_Function_cuCtxSetCacheConfig_not, sizeof(__pyx_k_Function_cuCtxSetCacheConfig_not), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuCtxSetCurrent_not_fou, __pyx_k_Function_cuCtxSetCurrent_not_fou, sizeof(__pyx_k_Function_cuCtxSetCurrent_not_fou), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuCtxSetFlags_not_found, __pyx_k_Function_cuCtxSetFlags_not_found, sizeof(__pyx_k_Function_cuCtxSetFlags_not_found), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuCtxSetLimit_not_found, __pyx_k_Function_cuCtxSetLimit_not_found, sizeof(__pyx_k_Function_cuCtxSetLimit_not_found), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuCtxSetSharedMemConfig, __pyx_k_Function_cuCtxSetSharedMemConfig, sizeof(__pyx_k_Function_cuCtxSetSharedMemConfig), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuCtxSynchronize_not_fo, __pyx_k_Function_cuCtxSynchronize_not_fo, sizeof(__pyx_k_Function_cuCtxSynchronize_not_fo), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuDestroyExternalMemory, __pyx_k_Function_cuDestroyExternalMemory, sizeof(__pyx_k_Function_cuDestroyExternalMemory), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuDestroyExternalSemaph, __pyx_k_Function_cuDestroyExternalSemaph, sizeof(__pyx_k_Function_cuDestroyExternalSemaph), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuDevResourceGenerateDe, __pyx_k_Function_cuDevResourceGenerateDe, sizeof(__pyx_k_Function_cuDevResourceGenerateDe), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuDevSmResourceSplitByC, __pyx_k_Function_cuDevSmResourceSplitByC, sizeof(__pyx_k_Function_cuDevSmResourceSplitByC), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuDeviceCanAccessPeer_n, __pyx_k_Function_cuDeviceCanAccessPeer_n, sizeof(__pyx_k_Function_cuDeviceCanAccessPeer_n), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuDeviceComputeCapabili, __pyx_k_Function_cuDeviceComputeCapabili, sizeof(__pyx_k_Function_cuDeviceComputeCapabili), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuDeviceGetAttribute_no, __pyx_k_Function_cuDeviceGetAttribute_no, sizeof(__pyx_k_Function_cuDeviceGetAttribute_no), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuDeviceGetByPCIBusId_n, __pyx_k_Function_cuDeviceGetByPCIBusId_n, sizeof(__pyx_k_Function_cuDeviceGetByPCIBusId_n), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuDeviceGetCount_not_fo, __pyx_k_Function_cuDeviceGetCount_not_fo, sizeof(__pyx_k_Function_cuDeviceGetCount_not_fo), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuDeviceGetDefaultMemPo, __pyx_k_Function_cuDeviceGetDefaultMemPo, sizeof(__pyx_k_Function_cuDeviceGetDefaultMemPo), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuDeviceGetDevResource, __pyx_k_Function_cuDeviceGetDevResource, sizeof(__pyx_k_Function_cuDeviceGetDevResource), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuDeviceGetExecAffinity, __pyx_k_Function_cuDeviceGetExecAffinity, sizeof(__pyx_k_Function_cuDeviceGetExecAffinity), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuDeviceGetGraphMemAttr, __pyx_k_Function_cuDeviceGetGraphMemAttr, sizeof(__pyx_k_Function_cuDeviceGetGraphMemAttr), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuDeviceGetLuid_not_fou, __pyx_k_Function_cuDeviceGetLuid_not_fou, sizeof(__pyx_k_Function_cuDeviceGetLuid_not_fou), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuDeviceGetMemPool_not, __pyx_k_Function_cuDeviceGetMemPool_not, sizeof(__pyx_k_Function_cuDeviceGetMemPool_not), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuDeviceGetName_not_fou, __pyx_k_Function_cuDeviceGetName_not_fou, sizeof(__pyx_k_Function_cuDeviceGetName_not_fou), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuDeviceGetNvSciSyncAtt, __pyx_k_Function_cuDeviceGetNvSciSyncAtt, sizeof(__pyx_k_Function_cuDeviceGetNvSciSyncAtt), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuDeviceGetP2PAttribute, __pyx_k_Function_cuDeviceGetP2PAttribute, sizeof(__pyx_k_Function_cuDeviceGetP2PAttribute), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuDeviceGetPCIBusId_not, __pyx_k_Function_cuDeviceGetPCIBusId_not, sizeof(__pyx_k_Function_cuDeviceGetPCIBusId_not), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuDeviceGetProperties_n, __pyx_k_Function_cuDeviceGetProperties_n, sizeof(__pyx_k_Function_cuDeviceGetProperties_n), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuDeviceGetTexture1DLin, __pyx_k_Function_cuDeviceGetTexture1DLin, sizeof(__pyx_k_Function_cuDeviceGetTexture1DLin), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuDeviceGetUuid_not_fou, __pyx_k_Function_cuDeviceGetUuid_not_fou, sizeof(__pyx_k_Function_cuDeviceGetUuid_not_fou), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuDeviceGetUuid_v2_not, __pyx_k_Function_cuDeviceGetUuid_v2_not, sizeof(__pyx_k_Function_cuDeviceGetUuid_v2_not), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuDeviceGet_not_found, __pyx_k_Function_cuDeviceGet_not_found, sizeof(__pyx_k_Function_cuDeviceGet_not_found), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuDeviceGraphMemTrim_no, __pyx_k_Function_cuDeviceGraphMemTrim_no, sizeof(__pyx_k_Function_cuDeviceGraphMemTrim_no), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuDevicePrimaryCtxGetSt, __pyx_k_Function_cuDevicePrimaryCtxGetSt, sizeof(__pyx_k_Function_cuDevicePrimaryCtxGetSt), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuDevicePrimaryCtxRelea, __pyx_k_Function_cuDevicePrimaryCtxRelea, sizeof(__pyx_k_Function_cuDevicePrimaryCtxRelea), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuDevicePrimaryCtxReset, __pyx_k_Function_cuDevicePrimaryCtxReset, sizeof(__pyx_k_Function_cuDevicePrimaryCtxReset), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuDevicePrimaryCtxRetai, __pyx_k_Function_cuDevicePrimaryCtxRetai, sizeof(__pyx_k_Function_cuDevicePrimaryCtxRetai), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuDevicePrimaryCtxSetFl, __pyx_k_Function_cuDevicePrimaryCtxSetFl, sizeof(__pyx_k_Function_cuDevicePrimaryCtxSetFl), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuDeviceRegisterAsyncNo, __pyx_k_Function_cuDeviceRegisterAsyncNo, sizeof(__pyx_k_Function_cuDeviceRegisterAsyncNo), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuDeviceSetGraphMemAttr, __pyx_k_Function_cuDeviceSetGraphMemAttr, sizeof(__pyx_k_Function_cuDeviceSetGraphMemAttr), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuDeviceSetMemPool_not, __pyx_k_Function_cuDeviceSetMemPool_not, sizeof(__pyx_k_Function_cuDeviceSetMemPool_not), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuDeviceTotalMem_v2_not, __pyx_k_Function_cuDeviceTotalMem_v2_not, sizeof(__pyx_k_Function_cuDeviceTotalMem_v2_not), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuDeviceUnregisterAsync, __pyx_k_Function_cuDeviceUnregisterAsync, sizeof(__pyx_k_Function_cuDeviceUnregisterAsync), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuDriverGetVersion_not, __pyx_k_Function_cuDriverGetVersion_not, sizeof(__pyx_k_Function_cuDriverGetVersion_not), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuEGLStreamConsumerAcqu, __pyx_k_Function_cuEGLStreamConsumerAcqu, sizeof(__pyx_k_Function_cuEGLStreamConsumerAcqu), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuEGLStreamConsumerConn, __pyx_k_Function_cuEGLStreamConsumerConn, sizeof(__pyx_k_Function_cuEGLStreamConsumerConn), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuEGLStreamConsumerConn_2, __pyx_k_Function_cuEGLStreamConsumerConn_2, sizeof(__pyx_k_Function_cuEGLStreamConsumerConn_2), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuEGLStreamConsumerDisc, __pyx_k_Function_cuEGLStreamConsumerDisc, sizeof(__pyx_k_Function_cuEGLStreamConsumerDisc), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuEGLStreamConsumerRele, __pyx_k_Function_cuEGLStreamConsumerRele, sizeof(__pyx_k_Function_cuEGLStreamConsumerRele), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuEGLStreamProducerConn, __pyx_k_Function_cuEGLStreamProducerConn, sizeof(__pyx_k_Function_cuEGLStreamProducerConn), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuEGLStreamProducerDisc, __pyx_k_Function_cuEGLStreamProducerDisc, sizeof(__pyx_k_Function_cuEGLStreamProducerDisc), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuEGLStreamProducerPres, __pyx_k_Function_cuEGLStreamProducerPres, sizeof(__pyx_k_Function_cuEGLStreamProducerPres), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuEGLStreamProducerRetu, __pyx_k_Function_cuEGLStreamProducerRetu, sizeof(__pyx_k_Function_cuEGLStreamProducerRetu), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuEventCreateFromEGLSyn, __pyx_k_Function_cuEventCreateFromEGLSyn, sizeof(__pyx_k_Function_cuEventCreateFromEGLSyn), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuEventCreate_not_found, __pyx_k_Function_cuEventCreate_not_found, sizeof(__pyx_k_Function_cuEventCreate_not_found), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuEventDestroy_v2_not_f, __pyx_k_Function_cuEventDestroy_v2_not_f, sizeof(__pyx_k_Function_cuEventDestroy_v2_not_f), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuEventElapsedTime_not, __pyx_k_Function_cuEventElapsedTime_not, sizeof(__pyx_k_Function_cuEventElapsedTime_not), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuEventQuery_not_found, __pyx_k_Function_cuEventQuery_not_found, sizeof(__pyx_k_Function_cuEventQuery_not_found), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuEventRecordWithFlags, __pyx_k_Function_cuEventRecordWithFlags, sizeof(__pyx_k_Function_cuEventRecordWithFlags), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuEventRecord_not_found, __pyx_k_Function_cuEventRecord_not_found, sizeof(__pyx_k_Function_cuEventRecord_not_found), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuEventSynchronize_not, __pyx_k_Function_cuEventSynchronize_not, sizeof(__pyx_k_Function_cuEventSynchronize_not), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuExternalMemoryGetMapp, __pyx_k_Function_cuExternalMemoryGetMapp, sizeof(__pyx_k_Function_cuExternalMemoryGetMapp), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuExternalMemoryGetMapp_2, __pyx_k_Function_cuExternalMemoryGetMapp_2, sizeof(__pyx_k_Function_cuExternalMemoryGetMapp_2), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuFlushGPUDirectRDMAWri, __pyx_k_Function_cuFlushGPUDirectRDMAWri, sizeof(__pyx_k_Function_cuFlushGPUDirectRDMAWri), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuFuncGetAttribute_not, __pyx_k_Function_cuFuncGetAttribute_not, sizeof(__pyx_k_Function_cuFuncGetAttribute_not), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuFuncGetModule_not_fou, __pyx_k_Function_cuFuncGetModule_not_fou, sizeof(__pyx_k_Function_cuFuncGetModule_not_fou), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuFuncGetName_not_found, __pyx_k_Function_cuFuncGetName_not_found, sizeof(__pyx_k_Function_cuFuncGetName_not_found), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuFuncGetParamInfo_not, __pyx_k_Function_cuFuncGetParamInfo_not, sizeof(__pyx_k_Function_cuFuncGetParamInfo_not), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuFuncIsLoaded_not_foun, __pyx_k_Function_cuFuncIsLoaded_not_foun, sizeof(__pyx_k_Function_cuFuncIsLoaded_not_foun), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuFuncLoad_not_found, __pyx_k_Function_cuFuncLoad_not_found, sizeof(__pyx_k_Function_cuFuncLoad_not_found), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuFuncSetAttribute_not, __pyx_k_Function_cuFuncSetAttribute_not, sizeof(__pyx_k_Function_cuFuncSetAttribute_not), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuFuncSetBlockShape_not, __pyx_k_Function_cuFuncSetBlockShape_not, sizeof(__pyx_k_Function_cuFuncSetBlockShape_not), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuFuncSetCacheConfig_no, __pyx_k_Function_cuFuncSetCacheConfig_no, sizeof(__pyx_k_Function_cuFuncSetCacheConfig_no), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuFuncSetSharedMemConfi, __pyx_k_Function_cuFuncSetSharedMemConfi, sizeof(__pyx_k_Function_cuFuncSetSharedMemConfi), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuFuncSetSharedSize_not, __pyx_k_Function_cuFuncSetSharedSize_not, sizeof(__pyx_k_Function_cuFuncSetSharedSize_not), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuGLGetDevices_v2_not_f, __pyx_k_Function_cuGLGetDevices_v2_not_f, sizeof(__pyx_k_Function_cuGLGetDevices_v2_not_f), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuGetErrorName_not_foun, __pyx_k_Function_cuGetErrorName_not_foun, sizeof(__pyx_k_Function_cuGetErrorName_not_foun), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuGetErrorString_not_fo, __pyx_k_Function_cuGetErrorString_not_fo, sizeof(__pyx_k_Function_cuGetErrorString_not_fo), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuGetExportTable_not_fo, __pyx_k_Function_cuGetExportTable_not_fo, sizeof(__pyx_k_Function_cuGetExportTable_not_fo), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuGetProcAddress_v2_not, __pyx_k_Function_cuGetProcAddress_v2_not, sizeof(__pyx_k_Function_cuGetProcAddress_v2_not), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuGraphAddBatchMemOpNod, __pyx_k_Function_cuGraphAddBatchMemOpNod, sizeof(__pyx_k_Function_cuGraphAddBatchMemOpNod), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuGraphAddChildGraphNod, __pyx_k_Function_cuGraphAddChildGraphNod, sizeof(__pyx_k_Function_cuGraphAddChildGraphNod), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuGraphAddDependencies, __pyx_k_Function_cuGraphAddDependencies, sizeof(__pyx_k_Function_cuGraphAddDependencies), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuGraphAddDependencies_2, __pyx_k_Function_cuGraphAddDependencies_2, sizeof(__pyx_k_Function_cuGraphAddDependencies_2), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuGraphAddEmptyNode_not, __pyx_k_Function_cuGraphAddEmptyNode_not, sizeof(__pyx_k_Function_cuGraphAddEmptyNode_not), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuGraphAddEventRecordNo, __pyx_k_Function_cuGraphAddEventRecordNo, sizeof(__pyx_k_Function_cuGraphAddEventRecordNo), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuGraphAddEventWaitNode, __pyx_k_Function_cuGraphAddEventWaitNode, sizeof(__pyx_k_Function_cuGraphAddEventWaitNode), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuGraphAddExternalSemap, __pyx_k_Function_cuGraphAddExternalSemap, sizeof(__pyx_k_Function_cuGraphAddExternalSemap), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuGraphAddExternalSemap_2, __pyx_k_Function_cuGraphAddExternalSemap_2, sizeof(__pyx_k_Function_cuGraphAddExternalSemap_2), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuGraphAddHostNode_not, __pyx_k_Function_cuGraphAddHostNode_not, sizeof(__pyx_k_Function_cuGraphAddHostNode_not), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuGraphAddKernelNode_v2, __pyx_k_Function_cuGraphAddKernelNode_v2, sizeof(__pyx_k_Function_cuGraphAddKernelNode_v2), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuGraphAddMemAllocNode, __pyx_k_Function_cuGraphAddMemAllocNode, sizeof(__pyx_k_Function_cuGraphAddMemAllocNode), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuGraphAddMemFreeNode_n, __pyx_k_Function_cuGraphAddMemFreeNode_n, sizeof(__pyx_k_Function_cuGraphAddMemFreeNode_n), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuGraphAddMemcpyNode_no, __pyx_k_Function_cuGraphAddMemcpyNode_no, sizeof(__pyx_k_Function_cuGraphAddMemcpyNode_no), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuGraphAddMemsetNode_no, __pyx_k_Function_cuGraphAddMemsetNode_no, sizeof(__pyx_k_Function_cuGraphAddMemsetNode_no), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuGraphAddNode_not_foun, __pyx_k_Function_cuGraphAddNode_not_foun, sizeof(__pyx_k_Function_cuGraphAddNode_not_foun), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuGraphAddNode_v2_not_f, __pyx_k_Function_cuGraphAddNode_v2_not_f, sizeof(__pyx_k_Function_cuGraphAddNode_v2_not_f), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuGraphBatchMemOpNodeGe, __pyx_k_Function_cuGraphBatchMemOpNodeGe, sizeof(__pyx_k_Function_cuGraphBatchMemOpNodeGe), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuGraphBatchMemOpNodeSe, __pyx_k_Function_cuGraphBatchMemOpNodeSe, sizeof(__pyx_k_Function_cuGraphBatchMemOpNodeSe), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuGraphChildGraphNodeGe, __pyx_k_Function_cuGraphChildGraphNodeGe, sizeof(__pyx_k_Function_cuGraphChildGraphNodeGe), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuGraphClone_not_found, __pyx_k_Function_cuGraphClone_not_found, sizeof(__pyx_k_Function_cuGraphClone_not_found), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuGraphConditionalHandl, __pyx_k_Function_cuGraphConditionalHandl, sizeof(__pyx_k_Function_cuGraphConditionalHandl), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuGraphCreate_not_found, __pyx_k_Function_cuGraphCreate_not_found, sizeof(__pyx_k_Function_cuGraphCreate_not_found), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuGraphDebugDotPrint_no, __pyx_k_Function_cuGraphDebugDotPrint_no, sizeof(__pyx_k_Function_cuGraphDebugDotPrint_no), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuGraphDestroyNode_not, __pyx_k_Function_cuGraphDestroyNode_not, sizeof(__pyx_k_Function_cuGraphDestroyNode_not), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuGraphDestroy_not_foun, __pyx_k_Function_cuGraphDestroy_not_foun, sizeof(__pyx_k_Function_cuGraphDestroy_not_foun), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuGraphEventRecordNodeG, __pyx_k_Function_cuGraphEventRecordNodeG, sizeof(__pyx_k_Function_cuGraphEventRecordNodeG), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuGraphEventRecordNodeS, __pyx_k_Function_cuGraphEventRecordNodeS, sizeof(__pyx_k_Function_cuGraphEventRecordNodeS), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuGraphEventWaitNodeGet, __pyx_k_Function_cuGraphEventWaitNodeGet, sizeof(__pyx_k_Function_cuGraphEventWaitNodeGet), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuGraphEventWaitNodeSet, __pyx_k_Function_cuGraphEventWaitNodeSet, sizeof(__pyx_k_Function_cuGraphEventWaitNodeSet), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuGraphExecBatchMemOpNo, __pyx_k_Function_cuGraphExecBatchMemOpNo, sizeof(__pyx_k_Function_cuGraphExecBatchMemOpNo), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuGraphExecChildGraphNo, __pyx_k_Function_cuGraphExecChildGraphNo, sizeof(__pyx_k_Function_cuGraphExecChildGraphNo), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuGraphExecDestroy_not, __pyx_k_Function_cuGraphExecDestroy_not, sizeof(__pyx_k_Function_cuGraphExecDestroy_not), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuGraphExecEventRecordN, __pyx_k_Function_cuGraphExecEventRecordN, sizeof(__pyx_k_Function_cuGraphExecEventRecordN), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuGraphExecEventWaitNod, __pyx_k_Function_cuGraphExecEventWaitNod, sizeof(__pyx_k_Function_cuGraphExecEventWaitNod), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuGraphExecExternalSema, __pyx_k_Function_cuGraphExecExternalSema, sizeof(__pyx_k_Function_cuGraphExecExternalSema), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuGraphExecExternalSema_2, __pyx_k_Function_cuGraphExecExternalSema_2, sizeof(__pyx_k_Function_cuGraphExecExternalSema_2), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuGraphExecGetFlags_not, __pyx_k_Function_cuGraphExecGetFlags_not, sizeof(__pyx_k_Function_cuGraphExecGetFlags_not), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuGraphExecHostNodeSetP, __pyx_k_Function_cuGraphExecHostNodeSetP, sizeof(__pyx_k_Function_cuGraphExecHostNodeSetP), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuGraphExecKernelNodeSe, __pyx_k_Function_cuGraphExecKernelNodeSe, sizeof(__pyx_k_Function_cuGraphExecKernelNodeSe), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuGraphExecMemcpyNodeSe, __pyx_k_Function_cuGraphExecMemcpyNodeSe, sizeof(__pyx_k_Function_cuGraphExecMemcpyNodeSe), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuGraphExecMemsetNodeSe, __pyx_k_Function_cuGraphExecMemsetNodeSe, sizeof(__pyx_k_Function_cuGraphExecMemsetNodeSe), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuGraphExecNodeSetParam, __pyx_k_Function_cuGraphExecNodeSetParam, sizeof(__pyx_k_Function_cuGraphExecNodeSetParam), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuGraphExecUpdate_v2_no, __pyx_k_Function_cuGraphExecUpdate_v2_no, sizeof(__pyx_k_Function_cuGraphExecUpdate_v2_no), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuGraphExternalSemaphor, __pyx_k_Function_cuGraphExternalSemaphor, sizeof(__pyx_k_Function_cuGraphExternalSemaphor), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuGraphExternalSemaphor_2, __pyx_k_Function_cuGraphExternalSemaphor_2, sizeof(__pyx_k_Function_cuGraphExternalSemaphor_2), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuGraphExternalSemaphor_3, __pyx_k_Function_cuGraphExternalSemaphor_3, sizeof(__pyx_k_Function_cuGraphExternalSemaphor_3), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuGraphExternalSemaphor_4, __pyx_k_Function_cuGraphExternalSemaphor_4, sizeof(__pyx_k_Function_cuGraphExternalSemaphor_4), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuGraphGetEdges_not_fou, __pyx_k_Function_cuGraphGetEdges_not_fou, sizeof(__pyx_k_Function_cuGraphGetEdges_not_fou), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuGraphGetEdges_v2_not, __pyx_k_Function_cuGraphGetEdges_v2_not, sizeof(__pyx_k_Function_cuGraphGetEdges_v2_not), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuGraphGetNodes_not_fou, __pyx_k_Function_cuGraphGetNodes_not_fou, sizeof(__pyx_k_Function_cuGraphGetNodes_not_fou), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuGraphGetRootNodes_not, __pyx_k_Function_cuGraphGetRootNodes_not, sizeof(__pyx_k_Function_cuGraphGetRootNodes_not), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuGraphHostNodeGetParam, __pyx_k_Function_cuGraphHostNodeGetParam, sizeof(__pyx_k_Function_cuGraphHostNodeGetParam), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuGraphHostNodeSetParam, __pyx_k_Function_cuGraphHostNodeSetParam, sizeof(__pyx_k_Function_cuGraphHostNodeSetParam), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuGraphInstantiateWithF, __pyx_k_Function_cuGraphInstantiateWithF, sizeof(__pyx_k_Function_cuGraphInstantiateWithF), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuGraphInstantiateWithP, __pyx_k_Function_cuGraphInstantiateWithP, sizeof(__pyx_k_Function_cuGraphInstantiateWithP), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuGraphKernelNodeCopyAt, __pyx_k_Function_cuGraphKernelNodeCopyAt, sizeof(__pyx_k_Function_cuGraphKernelNodeCopyAt), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuGraphKernelNodeGetAtt, __pyx_k_Function_cuGraphKernelNodeGetAtt, sizeof(__pyx_k_Function_cuGraphKernelNodeGetAtt), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuGraphKernelNodeGetPar, __pyx_k_Function_cuGraphKernelNodeGetPar, sizeof(__pyx_k_Function_cuGraphKernelNodeGetPar), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuGraphKernelNodeSetAtt, __pyx_k_Function_cuGraphKernelNodeSetAtt, sizeof(__pyx_k_Function_cuGraphKernelNodeSetAtt), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuGraphKernelNodeSetPar, __pyx_k_Function_cuGraphKernelNodeSetPar, sizeof(__pyx_k_Function_cuGraphKernelNodeSetPar), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuGraphLaunch_not_found, __pyx_k_Function_cuGraphLaunch_not_found, sizeof(__pyx_k_Function_cuGraphLaunch_not_found), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuGraphMemAllocNodeGetP, __pyx_k_Function_cuGraphMemAllocNodeGetP, sizeof(__pyx_k_Function_cuGraphMemAllocNodeGetP), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuGraphMemFreeNodeGetPa, __pyx_k_Function_cuGraphMemFreeNodeGetPa, sizeof(__pyx_k_Function_cuGraphMemFreeNodeGetPa), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuGraphMemcpyNodeGetPar, __pyx_k_Function_cuGraphMemcpyNodeGetPar, sizeof(__pyx_k_Function_cuGraphMemcpyNodeGetPar), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuGraphMemcpyNodeSetPar, __pyx_k_Function_cuGraphMemcpyNodeSetPar, sizeof(__pyx_k_Function_cuGraphMemcpyNodeSetPar), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuGraphMemsetNodeGetPar, __pyx_k_Function_cuGraphMemsetNodeGetPar, sizeof(__pyx_k_Function_cuGraphMemsetNodeGetPar), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuGraphMemsetNodeSetPar, __pyx_k_Function_cuGraphMemsetNodeSetPar, sizeof(__pyx_k_Function_cuGraphMemsetNodeSetPar), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuGraphNodeFindInClone, __pyx_k_Function_cuGraphNodeFindInClone, sizeof(__pyx_k_Function_cuGraphNodeFindInClone), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuGraphNodeGetDependenc, __pyx_k_Function_cuGraphNodeGetDependenc, sizeof(__pyx_k_Function_cuGraphNodeGetDependenc), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuGraphNodeGetDependenc_2, __pyx_k_Function_cuGraphNodeGetDependenc_2, sizeof(__pyx_k_Function_cuGraphNodeGetDependenc_2), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuGraphNodeGetDependent, __pyx_k_Function_cuGraphNodeGetDependent, sizeof(__pyx_k_Function_cuGraphNodeGetDependent), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuGraphNodeGetDependent_2, __pyx_k_Function_cuGraphNodeGetDependent_2, sizeof(__pyx_k_Function_cuGraphNodeGetDependent_2), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuGraphNodeGetEnabled_n, __pyx_k_Function_cuGraphNodeGetEnabled_n, sizeof(__pyx_k_Function_cuGraphNodeGetEnabled_n), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuGraphNodeGetType_not, __pyx_k_Function_cuGraphNodeGetType_not, sizeof(__pyx_k_Function_cuGraphNodeGetType_not), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuGraphNodeSetEnabled_n, __pyx_k_Function_cuGraphNodeSetEnabled_n, sizeof(__pyx_k_Function_cuGraphNodeSetEnabled_n), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuGraphNodeSetParams_no, __pyx_k_Function_cuGraphNodeSetParams_no, sizeof(__pyx_k_Function_cuGraphNodeSetParams_no), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuGraphReleaseUserObjec, __pyx_k_Function_cuGraphReleaseUserObjec, sizeof(__pyx_k_Function_cuGraphReleaseUserObjec), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuGraphRemoveDependenci, __pyx_k_Function_cuGraphRemoveDependenci, sizeof(__pyx_k_Function_cuGraphRemoveDependenci), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuGraphRemoveDependenci_2, __pyx_k_Function_cuGraphRemoveDependenci_2, sizeof(__pyx_k_Function_cuGraphRemoveDependenci_2), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuGraphRetainUserObject, __pyx_k_Function_cuGraphRetainUserObject, sizeof(__pyx_k_Function_cuGraphRetainUserObject), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuGraphUpload_not_found, __pyx_k_Function_cuGraphUpload_not_found, sizeof(__pyx_k_Function_cuGraphUpload_not_found), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuGraphicsEGLRegisterIm, __pyx_k_Function_cuGraphicsEGLRegisterIm, sizeof(__pyx_k_Function_cuGraphicsEGLRegisterIm), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuGraphicsGLRegisterBuf, __pyx_k_Function_cuGraphicsGLRegisterBuf, sizeof(__pyx_k_Function_cuGraphicsGLRegisterBuf), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuGraphicsGLRegisterIma, __pyx_k_Function_cuGraphicsGLRegisterIma, sizeof(__pyx_k_Function_cuGraphicsGLRegisterIma), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuGraphicsMapResources, __pyx_k_Function_cuGraphicsMapResources, sizeof(__pyx_k_Function_cuGraphicsMapResources), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuGraphicsResourceGetMa, __pyx_k_Function_cuGraphicsResourceGetMa, sizeof(__pyx_k_Function_cuGraphicsResourceGetMa), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuGraphicsResourceGetMa_2, __pyx_k_Function_cuGraphicsResourceGetMa_2, sizeof(__pyx_k_Function_cuGraphicsResourceGetMa_2), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuGraphicsResourceGetMa_3, __pyx_k_Function_cuGraphicsResourceGetMa_3, sizeof(__pyx_k_Function_cuGraphicsResourceGetMa_3), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuGraphicsResourceSetMa, __pyx_k_Function_cuGraphicsResourceSetMa, sizeof(__pyx_k_Function_cuGraphicsResourceSetMa), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuGraphicsSubResourceGe, __pyx_k_Function_cuGraphicsSubResourceGe, sizeof(__pyx_k_Function_cuGraphicsSubResourceGe), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuGraphicsUnmapResource, __pyx_k_Function_cuGraphicsUnmapResource, sizeof(__pyx_k_Function_cuGraphicsUnmapResource), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuGraphicsUnregisterRes, __pyx_k_Function_cuGraphicsUnregisterRes, sizeof(__pyx_k_Function_cuGraphicsUnregisterRes), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuGraphicsVDPAURegister, __pyx_k_Function_cuGraphicsVDPAURegister, sizeof(__pyx_k_Function_cuGraphicsVDPAURegister), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuGraphicsVDPAURegister_2, __pyx_k_Function_cuGraphicsVDPAURegister_2, sizeof(__pyx_k_Function_cuGraphicsVDPAURegister_2), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuGreenCtxCreate_not_fo, __pyx_k_Function_cuGreenCtxCreate_not_fo, sizeof(__pyx_k_Function_cuGreenCtxCreate_not_fo), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuGreenCtxDestroy_not_f, __pyx_k_Function_cuGreenCtxDestroy_not_f, sizeof(__pyx_k_Function_cuGreenCtxDestroy_not_f), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuGreenCtxGetDevResourc, __pyx_k_Function_cuGreenCtxGetDevResourc, sizeof(__pyx_k_Function_cuGreenCtxGetDevResourc), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuGreenCtxRecordEvent_n, __pyx_k_Function_cuGreenCtxRecordEvent_n, sizeof(__pyx_k_Function_cuGreenCtxRecordEvent_n), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuGreenCtxWaitEvent_not, __pyx_k_Function_cuGreenCtxWaitEvent_not, sizeof(__pyx_k_Function_cuGreenCtxWaitEvent_not), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuImportExternalMemory, __pyx_k_Function_cuImportExternalMemory, sizeof(__pyx_k_Function_cuImportExternalMemory), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuImportExternalSemapho, __pyx_k_Function_cuImportExternalSemapho, sizeof(__pyx_k_Function_cuImportExternalSemapho), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuInit_not_found, __pyx_k_Function_cuInit_not_found, sizeof(__pyx_k_Function_cuInit_not_found), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuIpcCloseMemHandle_not, __pyx_k_Function_cuIpcCloseMemHandle_not, sizeof(__pyx_k_Function_cuIpcCloseMemHandle_not), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuIpcGetEventHandle_not, __pyx_k_Function_cuIpcGetEventHandle_not, sizeof(__pyx_k_Function_cuIpcGetEventHandle_not), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuIpcGetMemHandle_not_f, __pyx_k_Function_cuIpcGetMemHandle_not_f, sizeof(__pyx_k_Function_cuIpcGetMemHandle_not_f), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuIpcOpenEventHandle_no, __pyx_k_Function_cuIpcOpenEventHandle_no, sizeof(__pyx_k_Function_cuIpcOpenEventHandle_no), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuIpcOpenMemHandle_v2_n, __pyx_k_Function_cuIpcOpenMemHandle_v2_n, sizeof(__pyx_k_Function_cuIpcOpenMemHandle_v2_n), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuKernelGetAttribute_no, __pyx_k_Function_cuKernelGetAttribute_no, sizeof(__pyx_k_Function_cuKernelGetAttribute_no), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuKernelGetFunction_not, __pyx_k_Function_cuKernelGetFunction_not, sizeof(__pyx_k_Function_cuKernelGetFunction_not), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuKernelGetName_not_fou, __pyx_k_Function_cuKernelGetName_not_fou, sizeof(__pyx_k_Function_cuKernelGetName_not_fou), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuKernelGetParamInfo_no, __pyx_k_Function_cuKernelGetParamInfo_no, sizeof(__pyx_k_Function_cuKernelGetParamInfo_no), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuKernelSetAttribute_no, __pyx_k_Function_cuKernelSetAttribute_no, sizeof(__pyx_k_Function_cuKernelSetAttribute_no), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuKernelSetCacheConfig, __pyx_k_Function_cuKernelSetCacheConfig, sizeof(__pyx_k_Function_cuKernelSetCacheConfig), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuLaunchCooperativeKern, __pyx_k_Function_cuLaunchCooperativeKern, sizeof(__pyx_k_Function_cuLaunchCooperativeKern), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuLaunchCooperativeKern_2, __pyx_k_Function_cuLaunchCooperativeKern_2, sizeof(__pyx_k_Function_cuLaunchCooperativeKern_2), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuLaunchGridAsync_not_f, __pyx_k_Function_cuLaunchGridAsync_not_f, sizeof(__pyx_k_Function_cuLaunchGridAsync_not_f), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuLaunchGrid_not_found, __pyx_k_Function_cuLaunchGrid_not_found, sizeof(__pyx_k_Function_cuLaunchGrid_not_found), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuLaunchHostFunc_not_fo, __pyx_k_Function_cuLaunchHostFunc_not_fo, sizeof(__pyx_k_Function_cuLaunchHostFunc_not_fo), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuLaunchKernelEx_not_fo, __pyx_k_Function_cuLaunchKernelEx_not_fo, sizeof(__pyx_k_Function_cuLaunchKernelEx_not_fo), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuLaunchKernel_not_foun, __pyx_k_Function_cuLaunchKernel_not_foun, sizeof(__pyx_k_Function_cuLaunchKernel_not_foun), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuLaunch_not_found, __pyx_k_Function_cuLaunch_not_found, sizeof(__pyx_k_Function_cuLaunch_not_found), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuLibraryEnumerateKerne, __pyx_k_Function_cuLibraryEnumerateKerne, sizeof(__pyx_k_Function_cuLibraryEnumerateKerne), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuLibraryGetGlobal_not, __pyx_k_Function_cuLibraryGetGlobal_not, sizeof(__pyx_k_Function_cuLibraryGetGlobal_not), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuLibraryGetKernelCount, __pyx_k_Function_cuLibraryGetKernelCount, sizeof(__pyx_k_Function_cuLibraryGetKernelCount), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuLibraryGetKernel_not, __pyx_k_Function_cuLibraryGetKernel_not, sizeof(__pyx_k_Function_cuLibraryGetKernel_not), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuLibraryGetManaged_not, __pyx_k_Function_cuLibraryGetManaged_not, sizeof(__pyx_k_Function_cuLibraryGetManaged_not), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuLibraryGetModule_not, __pyx_k_Function_cuLibraryGetModule_not, sizeof(__pyx_k_Function_cuLibraryGetModule_not), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuLibraryGetUnifiedFunc, __pyx_k_Function_cuLibraryGetUnifiedFunc, sizeof(__pyx_k_Function_cuLibraryGetUnifiedFunc), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuLibraryLoadData_not_f, __pyx_k_Function_cuLibraryLoadData_not_f, sizeof(__pyx_k_Function_cuLibraryLoadData_not_f), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuLibraryLoadFromFile_n, __pyx_k_Function_cuLibraryLoadFromFile_n, sizeof(__pyx_k_Function_cuLibraryLoadFromFile_n), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuLibraryUnload_not_fou, __pyx_k_Function_cuLibraryUnload_not_fou, sizeof(__pyx_k_Function_cuLibraryUnload_not_fou), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuLinkAddData_v2_not_fo, __pyx_k_Function_cuLinkAddData_v2_not_fo, sizeof(__pyx_k_Function_cuLinkAddData_v2_not_fo), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuLinkAddFile_v2_not_fo, __pyx_k_Function_cuLinkAddFile_v2_not_fo, sizeof(__pyx_k_Function_cuLinkAddFile_v2_not_fo), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuLinkComplete_not_foun, __pyx_k_Function_cuLinkComplete_not_foun, sizeof(__pyx_k_Function_cuLinkComplete_not_foun), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuLinkCreate_v2_not_fou, __pyx_k_Function_cuLinkCreate_v2_not_fou, sizeof(__pyx_k_Function_cuLinkCreate_v2_not_fou), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuLinkDestroy_not_found, __pyx_k_Function_cuLinkDestroy_not_found, sizeof(__pyx_k_Function_cuLinkDestroy_not_found), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuMemAddressFree_not_fo, __pyx_k_Function_cuMemAddressFree_not_fo, sizeof(__pyx_k_Function_cuMemAddressFree_not_fo), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuMemAddressReserve_not, __pyx_k_Function_cuMemAddressReserve_not, sizeof(__pyx_k_Function_cuMemAddressReserve_not), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuMemAdvise_not_found, __pyx_k_Function_cuMemAdvise_not_found, sizeof(__pyx_k_Function_cuMemAdvise_not_found), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuMemAdvise_v2_not_foun, __pyx_k_Function_cuMemAdvise_v2_not_foun, sizeof(__pyx_k_Function_cuMemAdvise_v2_not_foun), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuMemAllocAsync_not_fou, __pyx_k_Function_cuMemAllocAsync_not_fou, sizeof(__pyx_k_Function_cuMemAllocAsync_not_fou), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuMemAllocFromPoolAsync, __pyx_k_Function_cuMemAllocFromPoolAsync, sizeof(__pyx_k_Function_cuMemAllocFromPoolAsync), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuMemAllocHost_v2_not_f, __pyx_k_Function_cuMemAllocHost_v2_not_f, sizeof(__pyx_k_Function_cuMemAllocHost_v2_not_f), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuMemAllocManaged_not_f, __pyx_k_Function_cuMemAllocManaged_not_f, sizeof(__pyx_k_Function_cuMemAllocManaged_not_f), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuMemAllocPitch_v2_not, __pyx_k_Function_cuMemAllocPitch_v2_not, sizeof(__pyx_k_Function_cuMemAllocPitch_v2_not), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuMemAlloc_v2_not_found, __pyx_k_Function_cuMemAlloc_v2_not_found, sizeof(__pyx_k_Function_cuMemAlloc_v2_not_found), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuMemCreate_not_found, __pyx_k_Function_cuMemCreate_not_found, sizeof(__pyx_k_Function_cuMemCreate_not_found), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuMemExportToShareableH, __pyx_k_Function_cuMemExportToShareableH, sizeof(__pyx_k_Function_cuMemExportToShareableH), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuMemFreeAsync_not_foun, __pyx_k_Function_cuMemFreeAsync_not_foun, sizeof(__pyx_k_Function_cuMemFreeAsync_not_foun), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuMemFreeHost_not_found, __pyx_k_Function_cuMemFreeHost_not_found, sizeof(__pyx_k_Function_cuMemFreeHost_not_found), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuMemFree_v2_not_found, __pyx_k_Function_cuMemFree_v2_not_found, sizeof(__pyx_k_Function_cuMemFree_v2_not_found), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuMemGetAccess_not_foun, __pyx_k_Function_cuMemGetAccess_not_foun, sizeof(__pyx_k_Function_cuMemGetAccess_not_foun), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuMemGetAddressRange_v2, __pyx_k_Function_cuMemGetAddressRange_v2, sizeof(__pyx_k_Function_cuMemGetAddressRange_v2), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuMemGetAllocationGranu, __pyx_k_Function_cuMemGetAllocationGranu, sizeof(__pyx_k_Function_cuMemGetAllocationGranu), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuMemGetAllocationPrope, __pyx_k_Function_cuMemGetAllocationPrope, sizeof(__pyx_k_Function_cuMemGetAllocationPrope), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuMemGetHandleForAddres, __pyx_k_Function_cuMemGetHandleForAddres, sizeof(__pyx_k_Function_cuMemGetHandleForAddres), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuMemGetInfo_v2_not_fou, __pyx_k_Function_cuMemGetInfo_v2_not_fou, sizeof(__pyx_k_Function_cuMemGetInfo_v2_not_fou), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuMemHostAlloc_not_foun, __pyx_k_Function_cuMemHostAlloc_not_foun, sizeof(__pyx_k_Function_cuMemHostAlloc_not_foun), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuMemHostGetDevicePoint, __pyx_k_Function_cuMemHostGetDevicePoint, sizeof(__pyx_k_Function_cuMemHostGetDevicePoint), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuMemHostGetFlags_not_f, __pyx_k_Function_cuMemHostGetFlags_not_f, sizeof(__pyx_k_Function_cuMemHostGetFlags_not_f), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuMemHostRegister_v2_no, __pyx_k_Function_cuMemHostRegister_v2_no, sizeof(__pyx_k_Function_cuMemHostRegister_v2_no), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuMemHostUnregister_not, __pyx_k_Function_cuMemHostUnregister_not, sizeof(__pyx_k_Function_cuMemHostUnregister_not), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuMemImportFromShareabl, __pyx_k_Function_cuMemImportFromShareabl, sizeof(__pyx_k_Function_cuMemImportFromShareabl), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuMemMapArrayAsync_not, __pyx_k_Function_cuMemMapArrayAsync_not, sizeof(__pyx_k_Function_cuMemMapArrayAsync_not), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuMemMap_not_found, __pyx_k_Function_cuMemMap_not_found, sizeof(__pyx_k_Function_cuMemMap_not_found), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuMemPoolCreate_not_fou, __pyx_k_Function_cuMemPoolCreate_not_fou, sizeof(__pyx_k_Function_cuMemPoolCreate_not_fou), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuMemPoolDestroy_not_fo, __pyx_k_Function_cuMemPoolDestroy_not_fo, sizeof(__pyx_k_Function_cuMemPoolDestroy_not_fo), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuMemPoolExportPointer, __pyx_k_Function_cuMemPoolExportPointer, sizeof(__pyx_k_Function_cuMemPoolExportPointer), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuMemPoolExportToSharea, __pyx_k_Function_cuMemPoolExportToSharea, sizeof(__pyx_k_Function_cuMemPoolExportToSharea), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuMemPoolGetAccess_not, __pyx_k_Function_cuMemPoolGetAccess_not, sizeof(__pyx_k_Function_cuMemPoolGetAccess_not), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuMemPoolGetAttribute_n, __pyx_k_Function_cuMemPoolGetAttribute_n, sizeof(__pyx_k_Function_cuMemPoolGetAttribute_n), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuMemPoolImportFromShar, __pyx_k_Function_cuMemPoolImportFromShar, sizeof(__pyx_k_Function_cuMemPoolImportFromShar), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuMemPoolImportPointer, __pyx_k_Function_cuMemPoolImportPointer, sizeof(__pyx_k_Function_cuMemPoolImportPointer), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuMemPoolSetAccess_not, __pyx_k_Function_cuMemPoolSetAccess_not, sizeof(__pyx_k_Function_cuMemPoolSetAccess_not), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuMemPoolSetAttribute_n, __pyx_k_Function_cuMemPoolSetAttribute_n, sizeof(__pyx_k_Function_cuMemPoolSetAttribute_n), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuMemPoolTrimTo_not_fou, __pyx_k_Function_cuMemPoolTrimTo_not_fou, sizeof(__pyx_k_Function_cuMemPoolTrimTo_not_fou), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuMemPrefetchAsync_not, __pyx_k_Function_cuMemPrefetchAsync_not, sizeof(__pyx_k_Function_cuMemPrefetchAsync_not), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuMemPrefetchAsync_v2_n, __pyx_k_Function_cuMemPrefetchAsync_v2_n, sizeof(__pyx_k_Function_cuMemPrefetchAsync_v2_n), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuMemRangeGetAttribute, __pyx_k_Function_cuMemRangeGetAttribute, sizeof(__pyx_k_Function_cuMemRangeGetAttribute), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuMemRangeGetAttributes, __pyx_k_Function_cuMemRangeGetAttributes, sizeof(__pyx_k_Function_cuMemRangeGetAttributes), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuMemRelease_not_found, __pyx_k_Function_cuMemRelease_not_found, sizeof(__pyx_k_Function_cuMemRelease_not_found), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuMemRetainAllocationHa, __pyx_k_Function_cuMemRetainAllocationHa, sizeof(__pyx_k_Function_cuMemRetainAllocationHa), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuMemSetAccess_not_foun, __pyx_k_Function_cuMemSetAccess_not_foun, sizeof(__pyx_k_Function_cuMemSetAccess_not_foun), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuMemUnmap_not_found, __pyx_k_Function_cuMemUnmap_not_found, sizeof(__pyx_k_Function_cuMemUnmap_not_found), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuMemcpy2DAsync_v2_not, __pyx_k_Function_cuMemcpy2DAsync_v2_not, sizeof(__pyx_k_Function_cuMemcpy2DAsync_v2_not), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuMemcpy2DUnaligned_v2, __pyx_k_Function_cuMemcpy2DUnaligned_v2, sizeof(__pyx_k_Function_cuMemcpy2DUnaligned_v2), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuMemcpy2D_v2_not_found, __pyx_k_Function_cuMemcpy2D_v2_not_found, sizeof(__pyx_k_Function_cuMemcpy2D_v2_not_found), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuMemcpy3DAsync_v2_not, __pyx_k_Function_cuMemcpy3DAsync_v2_not, sizeof(__pyx_k_Function_cuMemcpy3DAsync_v2_not), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuMemcpy3DPeerAsync_not, __pyx_k_Function_cuMemcpy3DPeerAsync_not, sizeof(__pyx_k_Function_cuMemcpy3DPeerAsync_not), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuMemcpy3DPeer_not_foun, __pyx_k_Function_cuMemcpy3DPeer_not_foun, sizeof(__pyx_k_Function_cuMemcpy3DPeer_not_foun), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuMemcpy3D_v2_not_found, __pyx_k_Function_cuMemcpy3D_v2_not_found, sizeof(__pyx_k_Function_cuMemcpy3D_v2_not_found), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuMemcpyAsync_not_found, __pyx_k_Function_cuMemcpyAsync_not_found, sizeof(__pyx_k_Function_cuMemcpyAsync_not_found), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuMemcpyAtoA_v2_not_fou, __pyx_k_Function_cuMemcpyAtoA_v2_not_fou, sizeof(__pyx_k_Function_cuMemcpyAtoA_v2_not_fou), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuMemcpyAtoD_v2_not_fou, __pyx_k_Function_cuMemcpyAtoD_v2_not_fou, sizeof(__pyx_k_Function_cuMemcpyAtoD_v2_not_fou), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuMemcpyAtoHAsync_v2_no, __pyx_k_Function_cuMemcpyAtoHAsync_v2_no, sizeof(__pyx_k_Function_cuMemcpyAtoHAsync_v2_no), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuMemcpyAtoH_v2_not_fou, __pyx_k_Function_cuMemcpyAtoH_v2_not_fou, sizeof(__pyx_k_Function_cuMemcpyAtoH_v2_not_fou), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuMemcpyDtoA_v2_not_fou, __pyx_k_Function_cuMemcpyDtoA_v2_not_fou, sizeof(__pyx_k_Function_cuMemcpyDtoA_v2_not_fou), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuMemcpyDtoDAsync_v2_no, __pyx_k_Function_cuMemcpyDtoDAsync_v2_no, sizeof(__pyx_k_Function_cuMemcpyDtoDAsync_v2_no), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuMemcpyDtoD_v2_not_fou, __pyx_k_Function_cuMemcpyDtoD_v2_not_fou, sizeof(__pyx_k_Function_cuMemcpyDtoD_v2_not_fou), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuMemcpyDtoHAsync_v2_no, __pyx_k_Function_cuMemcpyDtoHAsync_v2_no, sizeof(__pyx_k_Function_cuMemcpyDtoHAsync_v2_no), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuMemcpyDtoH_v2_not_fou, __pyx_k_Function_cuMemcpyDtoH_v2_not_fou, sizeof(__pyx_k_Function_cuMemcpyDtoH_v2_not_fou), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuMemcpyHtoAAsync_v2_no, __pyx_k_Function_cuMemcpyHtoAAsync_v2_no, sizeof(__pyx_k_Function_cuMemcpyHtoAAsync_v2_no), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuMemcpyHtoA_v2_not_fou, __pyx_k_Function_cuMemcpyHtoA_v2_not_fou, sizeof(__pyx_k_Function_cuMemcpyHtoA_v2_not_fou), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuMemcpyHtoDAsync_v2_no, __pyx_k_Function_cuMemcpyHtoDAsync_v2_no, sizeof(__pyx_k_Function_cuMemcpyHtoDAsync_v2_no), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuMemcpyHtoD_v2_not_fou, __pyx_k_Function_cuMemcpyHtoD_v2_not_fou, sizeof(__pyx_k_Function_cuMemcpyHtoD_v2_not_fou), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuMemcpyPeerAsync_not_f, __pyx_k_Function_cuMemcpyPeerAsync_not_f, sizeof(__pyx_k_Function_cuMemcpyPeerAsync_not_f), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuMemcpyPeer_not_found, __pyx_k_Function_cuMemcpyPeer_not_found, sizeof(__pyx_k_Function_cuMemcpyPeer_not_found), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuMemcpy_not_found, __pyx_k_Function_cuMemcpy_not_found, sizeof(__pyx_k_Function_cuMemcpy_not_found), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuMemsetD16Async_not_fo, __pyx_k_Function_cuMemsetD16Async_not_fo, sizeof(__pyx_k_Function_cuMemsetD16Async_not_fo), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuMemsetD16_v2_not_foun, __pyx_k_Function_cuMemsetD16_v2_not_foun, sizeof(__pyx_k_Function_cuMemsetD16_v2_not_foun), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuMemsetD2D16Async_not, __pyx_k_Function_cuMemsetD2D16Async_not, sizeof(__pyx_k_Function_cuMemsetD2D16Async_not), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuMemsetD2D16_v2_not_fo, __pyx_k_Function_cuMemsetD2D16_v2_not_fo, sizeof(__pyx_k_Function_cuMemsetD2D16_v2_not_fo), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuMemsetD2D32Async_not, __pyx_k_Function_cuMemsetD2D32Async_not, sizeof(__pyx_k_Function_cuMemsetD2D32Async_not), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuMemsetD2D32_v2_not_fo, __pyx_k_Function_cuMemsetD2D32_v2_not_fo, sizeof(__pyx_k_Function_cuMemsetD2D32_v2_not_fo), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuMemsetD2D8Async_not_f, __pyx_k_Function_cuMemsetD2D8Async_not_f, sizeof(__pyx_k_Function_cuMemsetD2D8Async_not_f), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuMemsetD2D8_v2_not_fou, __pyx_k_Function_cuMemsetD2D8_v2_not_fou, sizeof(__pyx_k_Function_cuMemsetD2D8_v2_not_fou), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuMemsetD32Async_not_fo, __pyx_k_Function_cuMemsetD32Async_not_fo, sizeof(__pyx_k_Function_cuMemsetD32Async_not_fo), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuMemsetD32_v2_not_foun, __pyx_k_Function_cuMemsetD32_v2_not_foun, sizeof(__pyx_k_Function_cuMemsetD32_v2_not_foun), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuMemsetD8Async_not_fou, __pyx_k_Function_cuMemsetD8Async_not_fou, sizeof(__pyx_k_Function_cuMemsetD8Async_not_fou), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuMemsetD8_v2_not_found, __pyx_k_Function_cuMemsetD8_v2_not_found, sizeof(__pyx_k_Function_cuMemsetD8_v2_not_found), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuMipmappedArrayCreate, __pyx_k_Function_cuMipmappedArrayCreate, sizeof(__pyx_k_Function_cuMipmappedArrayCreate), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuMipmappedArrayDestroy, __pyx_k_Function_cuMipmappedArrayDestroy, sizeof(__pyx_k_Function_cuMipmappedArrayDestroy), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuMipmappedArrayGetLeve, __pyx_k_Function_cuMipmappedArrayGetLeve, sizeof(__pyx_k_Function_cuMipmappedArrayGetLeve), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuMipmappedArrayGetMemo, __pyx_k_Function_cuMipmappedArrayGetMemo, sizeof(__pyx_k_Function_cuMipmappedArrayGetMemo), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuMipmappedArrayGetSpar, __pyx_k_Function_cuMipmappedArrayGetSpar, sizeof(__pyx_k_Function_cuMipmappedArrayGetSpar), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuModuleEnumerateFuncti, __pyx_k_Function_cuModuleEnumerateFuncti, sizeof(__pyx_k_Function_cuModuleEnumerateFuncti), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuModuleGetFunctionCoun, __pyx_k_Function_cuModuleGetFunctionCoun, sizeof(__pyx_k_Function_cuModuleGetFunctionCoun), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuModuleGetFunction_not, __pyx_k_Function_cuModuleGetFunction_not, sizeof(__pyx_k_Function_cuModuleGetFunction_not), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuModuleGetGlobal_v2_no, __pyx_k_Function_cuModuleGetGlobal_v2_no, sizeof(__pyx_k_Function_cuModuleGetGlobal_v2_no), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuModuleGetLoadingMode, __pyx_k_Function_cuModuleGetLoadingMode, sizeof(__pyx_k_Function_cuModuleGetLoadingMode), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuModuleGetSurfRef_not, __pyx_k_Function_cuModuleGetSurfRef_not, sizeof(__pyx_k_Function_cuModuleGetSurfRef_not), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuModuleGetTexRef_not_f, __pyx_k_Function_cuModuleGetTexRef_not_f, sizeof(__pyx_k_Function_cuModuleGetTexRef_not_f), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuModuleLoadDataEx_not, __pyx_k_Function_cuModuleLoadDataEx_not, sizeof(__pyx_k_Function_cuModuleLoadDataEx_not), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuModuleLoadData_not_fo, __pyx_k_Function_cuModuleLoadData_not_fo, sizeof(__pyx_k_Function_cuModuleLoadData_not_fo), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuModuleLoadFatBinary_n, __pyx_k_Function_cuModuleLoadFatBinary_n, sizeof(__pyx_k_Function_cuModuleLoadFatBinary_n), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuModuleLoad_not_found, __pyx_k_Function_cuModuleLoad_not_found, sizeof(__pyx_k_Function_cuModuleLoad_not_found), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuModuleUnload_not_foun, __pyx_k_Function_cuModuleUnload_not_foun, sizeof(__pyx_k_Function_cuModuleUnload_not_foun), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuMulticastAddDevice_no, __pyx_k_Function_cuMulticastAddDevice_no, sizeof(__pyx_k_Function_cuMulticastAddDevice_no), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuMulticastBindAddr_not, __pyx_k_Function_cuMulticastBindAddr_not, sizeof(__pyx_k_Function_cuMulticastBindAddr_not), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuMulticastBindMem_not, __pyx_k_Function_cuMulticastBindMem_not, sizeof(__pyx_k_Function_cuMulticastBindMem_not), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuMulticastCreate_not_f, __pyx_k_Function_cuMulticastCreate_not_f, sizeof(__pyx_k_Function_cuMulticastCreate_not_f), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuMulticastGetGranulari, __pyx_k_Function_cuMulticastGetGranulari, sizeof(__pyx_k_Function_cuMulticastGetGranulari), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuMulticastUnbind_not_f, __pyx_k_Function_cuMulticastUnbind_not_f, sizeof(__pyx_k_Function_cuMulticastUnbind_not_f), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuOccupancyAvailableDyn, __pyx_k_Function_cuOccupancyAvailableDyn, sizeof(__pyx_k_Function_cuOccupancyAvailableDyn), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuOccupancyMaxActiveBlo, __pyx_k_Function_cuOccupancyMaxActiveBlo, sizeof(__pyx_k_Function_cuOccupancyMaxActiveBlo), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuOccupancyMaxActiveBlo_2, __pyx_k_Function_cuOccupancyMaxActiveBlo_2, sizeof(__pyx_k_Function_cuOccupancyMaxActiveBlo_2), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuOccupancyMaxActiveClu, __pyx_k_Function_cuOccupancyMaxActiveClu, sizeof(__pyx_k_Function_cuOccupancyMaxActiveClu), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuOccupancyMaxPotential, __pyx_k_Function_cuOccupancyMaxPotential, sizeof(__pyx_k_Function_cuOccupancyMaxPotential), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuOccupancyMaxPotential_2, __pyx_k_Function_cuOccupancyMaxPotential_2, sizeof(__pyx_k_Function_cuOccupancyMaxPotential_2), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuOccupancyMaxPotential_3, __pyx_k_Function_cuOccupancyMaxPotential_3, sizeof(__pyx_k_Function_cuOccupancyMaxPotential_3), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuParamSetSize_not_foun, __pyx_k_Function_cuParamSetSize_not_foun, sizeof(__pyx_k_Function_cuParamSetSize_not_foun), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuParamSetTexRef_not_fo, __pyx_k_Function_cuParamSetTexRef_not_fo, sizeof(__pyx_k_Function_cuParamSetTexRef_not_fo), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuParamSetf_not_found, __pyx_k_Function_cuParamSetf_not_found, sizeof(__pyx_k_Function_cuParamSetf_not_found), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuParamSeti_not_found, __pyx_k_Function_cuParamSeti_not_found, sizeof(__pyx_k_Function_cuParamSeti_not_found), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuParamSetv_not_found, __pyx_k_Function_cuParamSetv_not_found, sizeof(__pyx_k_Function_cuParamSetv_not_found), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuPointerGetAttribute_n, __pyx_k_Function_cuPointerGetAttribute_n, sizeof(__pyx_k_Function_cuPointerGetAttribute_n), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuPointerGetAttributes, __pyx_k_Function_cuPointerGetAttributes, sizeof(__pyx_k_Function_cuPointerGetAttributes), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuPointerSetAttribute_n, __pyx_k_Function_cuPointerSetAttribute_n, sizeof(__pyx_k_Function_cuPointerSetAttribute_n), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuProfilerStart_not_fou, __pyx_k_Function_cuProfilerStart_not_fou, sizeof(__pyx_k_Function_cuProfilerStart_not_fou), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuProfilerStop_not_foun, __pyx_k_Function_cuProfilerStop_not_foun, sizeof(__pyx_k_Function_cuProfilerStop_not_foun), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuSignalExternalSemapho, __pyx_k_Function_cuSignalExternalSemapho, sizeof(__pyx_k_Function_cuSignalExternalSemapho), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuStreamAddCallback_not, __pyx_k_Function_cuStreamAddCallback_not, sizeof(__pyx_k_Function_cuStreamAddCallback_not), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuStreamAttachMemAsync, __pyx_k_Function_cuStreamAttachMemAsync, sizeof(__pyx_k_Function_cuStreamAttachMemAsync), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuStreamBatchMemOp_v2_n, __pyx_k_Function_cuStreamBatchMemOp_v2_n, sizeof(__pyx_k_Function_cuStreamBatchMemOp_v2_n), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuStreamBeginCaptureToG, __pyx_k_Function_cuStreamBeginCaptureToG, sizeof(__pyx_k_Function_cuStreamBeginCaptureToG), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuStreamBeginCapture_v2, __pyx_k_Function_cuStreamBeginCapture_v2, sizeof(__pyx_k_Function_cuStreamBeginCapture_v2), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuStreamCopyAttributes, __pyx_k_Function_cuStreamCopyAttributes, sizeof(__pyx_k_Function_cuStreamCopyAttributes), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuStreamCreateWithPrior, __pyx_k_Function_cuStreamCreateWithPrior, sizeof(__pyx_k_Function_cuStreamCreateWithPrior), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuStreamCreate_not_foun, __pyx_k_Function_cuStreamCreate_not_foun, sizeof(__pyx_k_Function_cuStreamCreate_not_foun), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuStreamDestroy_v2_not, __pyx_k_Function_cuStreamDestroy_v2_not, sizeof(__pyx_k_Function_cuStreamDestroy_v2_not), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuStreamEndCapture_not, __pyx_k_Function_cuStreamEndCapture_not, sizeof(__pyx_k_Function_cuStreamEndCapture_not), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuStreamGetAttribute_no, __pyx_k_Function_cuStreamGetAttribute_no, sizeof(__pyx_k_Function_cuStreamGetAttribute_no), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuStreamGetCaptureInfo, __pyx_k_Function_cuStreamGetCaptureInfo, sizeof(__pyx_k_Function_cuStreamGetCaptureInfo), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuStreamGetCaptureInfo_2, __pyx_k_Function_cuStreamGetCaptureInfo_2, sizeof(__pyx_k_Function_cuStreamGetCaptureInfo_2), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuStreamGetCtx_not_foun, __pyx_k_Function_cuStreamGetCtx_not_foun, sizeof(__pyx_k_Function_cuStreamGetCtx_not_foun), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuStreamGetFlags_not_fo, __pyx_k_Function_cuStreamGetFlags_not_fo, sizeof(__pyx_k_Function_cuStreamGetFlags_not_fo), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuStreamGetGreenCtx_not, __pyx_k_Function_cuStreamGetGreenCtx_not, sizeof(__pyx_k_Function_cuStreamGetGreenCtx_not), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuStreamGetId_not_found, __pyx_k_Function_cuStreamGetId_not_found, sizeof(__pyx_k_Function_cuStreamGetId_not_found), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuStreamGetPriority_not, __pyx_k_Function_cuStreamGetPriority_not, sizeof(__pyx_k_Function_cuStreamGetPriority_not), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuStreamIsCapturing_not, __pyx_k_Function_cuStreamIsCapturing_not, sizeof(__pyx_k_Function_cuStreamIsCapturing_not), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuStreamQuery_not_found, __pyx_k_Function_cuStreamQuery_not_found, sizeof(__pyx_k_Function_cuStreamQuery_not_found), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuStreamSetAttribute_no, __pyx_k_Function_cuStreamSetAttribute_no, sizeof(__pyx_k_Function_cuStreamSetAttribute_no), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuStreamSynchronize_not, __pyx_k_Function_cuStreamSynchronize_not, sizeof(__pyx_k_Function_cuStreamSynchronize_not), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuStreamUpdateCaptureDe, __pyx_k_Function_cuStreamUpdateCaptureDe, sizeof(__pyx_k_Function_cuStreamUpdateCaptureDe), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuStreamUpdateCaptureDe_2, __pyx_k_Function_cuStreamUpdateCaptureDe_2, sizeof(__pyx_k_Function_cuStreamUpdateCaptureDe_2), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuStreamWaitEvent_not_f, __pyx_k_Function_cuStreamWaitEvent_not_f, sizeof(__pyx_k_Function_cuStreamWaitEvent_not_f), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuStreamWaitValue32_v2, __pyx_k_Function_cuStreamWaitValue32_v2, sizeof(__pyx_k_Function_cuStreamWaitValue32_v2), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuStreamWaitValue64_v2, __pyx_k_Function_cuStreamWaitValue64_v2, sizeof(__pyx_k_Function_cuStreamWaitValue64_v2), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuStreamWriteValue32_v2, __pyx_k_Function_cuStreamWriteValue32_v2, sizeof(__pyx_k_Function_cuStreamWriteValue32_v2), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuStreamWriteValue64_v2, __pyx_k_Function_cuStreamWriteValue64_v2, sizeof(__pyx_k_Function_cuStreamWriteValue64_v2), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuSurfObjectCreate_not, __pyx_k_Function_cuSurfObjectCreate_not, sizeof(__pyx_k_Function_cuSurfObjectCreate_not), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuSurfObjectDestroy_not, __pyx_k_Function_cuSurfObjectDestroy_not, sizeof(__pyx_k_Function_cuSurfObjectDestroy_not), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuSurfObjectGetResource, __pyx_k_Function_cuSurfObjectGetResource, sizeof(__pyx_k_Function_cuSurfObjectGetResource), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuSurfRefGetArray_not_f, __pyx_k_Function_cuSurfRefGetArray_not_f, sizeof(__pyx_k_Function_cuSurfRefGetArray_not_f), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuSurfRefSetArray_not_f, __pyx_k_Function_cuSurfRefSetArray_not_f, sizeof(__pyx_k_Function_cuSurfRefSetArray_not_f), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuTensorMapEncodeIm2col, __pyx_k_Function_cuTensorMapEncodeIm2col, sizeof(__pyx_k_Function_cuTensorMapEncodeIm2col), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuTensorMapEncodeTiled, __pyx_k_Function_cuTensorMapEncodeTiled, sizeof(__pyx_k_Function_cuTensorMapEncodeTiled), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuTensorMapReplaceAddre, __pyx_k_Function_cuTensorMapReplaceAddre, sizeof(__pyx_k_Function_cuTensorMapReplaceAddre), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuTexObjectCreate_not_f, __pyx_k_Function_cuTexObjectCreate_not_f, sizeof(__pyx_k_Function_cuTexObjectCreate_not_f), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuTexObjectDestroy_not, __pyx_k_Function_cuTexObjectDestroy_not, sizeof(__pyx_k_Function_cuTexObjectDestroy_not), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuTexObjectGetResourceD, __pyx_k_Function_cuTexObjectGetResourceD, sizeof(__pyx_k_Function_cuTexObjectGetResourceD), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuTexObjectGetResourceV, __pyx_k_Function_cuTexObjectGetResourceV, sizeof(__pyx_k_Function_cuTexObjectGetResourceV), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuTexObjectGetTextureDe, __pyx_k_Function_cuTexObjectGetTextureDe, sizeof(__pyx_k_Function_cuTexObjectGetTextureDe), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuTexRefCreate_not_foun, __pyx_k_Function_cuTexRefCreate_not_foun, sizeof(__pyx_k_Function_cuTexRefCreate_not_foun), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuTexRefDestroy_not_fou, __pyx_k_Function_cuTexRefDestroy_not_fou, sizeof(__pyx_k_Function_cuTexRefDestroy_not_fou), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuTexRefGetAddressMode, __pyx_k_Function_cuTexRefGetAddressMode, sizeof(__pyx_k_Function_cuTexRefGetAddressMode), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuTexRefGetAddress_v2_n, __pyx_k_Function_cuTexRefGetAddress_v2_n, sizeof(__pyx_k_Function_cuTexRefGetAddress_v2_n), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuTexRefGetArray_not_fo, __pyx_k_Function_cuTexRefGetArray_not_fo, sizeof(__pyx_k_Function_cuTexRefGetArray_not_fo), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuTexRefGetBorderColor, __pyx_k_Function_cuTexRefGetBorderColor, sizeof(__pyx_k_Function_cuTexRefGetBorderColor), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuTexRefGetFilterMode_n, __pyx_k_Function_cuTexRefGetFilterMode_n, sizeof(__pyx_k_Function_cuTexRefGetFilterMode_n), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuTexRefGetFlags_not_fo, __pyx_k_Function_cuTexRefGetFlags_not_fo, sizeof(__pyx_k_Function_cuTexRefGetFlags_not_fo), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuTexRefGetFormat_not_f, __pyx_k_Function_cuTexRefGetFormat_not_f, sizeof(__pyx_k_Function_cuTexRefGetFormat_not_f), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuTexRefGetMaxAnisotrop, __pyx_k_Function_cuTexRefGetMaxAnisotrop, sizeof(__pyx_k_Function_cuTexRefGetMaxAnisotrop), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuTexRefGetMipmapFilter, __pyx_k_Function_cuTexRefGetMipmapFilter, sizeof(__pyx_k_Function_cuTexRefGetMipmapFilter), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuTexRefGetMipmapLevelB, __pyx_k_Function_cuTexRefGetMipmapLevelB, sizeof(__pyx_k_Function_cuTexRefGetMipmapLevelB), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuTexRefGetMipmapLevelC, __pyx_k_Function_cuTexRefGetMipmapLevelC, sizeof(__pyx_k_Function_cuTexRefGetMipmapLevelC), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuTexRefGetMipmappedArr, __pyx_k_Function_cuTexRefGetMipmappedArr, sizeof(__pyx_k_Function_cuTexRefGetMipmappedArr), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuTexRefSetAddress2D_v3, __pyx_k_Function_cuTexRefSetAddress2D_v3, sizeof(__pyx_k_Function_cuTexRefSetAddress2D_v3), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuTexRefSetAddressMode, __pyx_k_Function_cuTexRefSetAddressMode, sizeof(__pyx_k_Function_cuTexRefSetAddressMode), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuTexRefSetAddress_v2_n, __pyx_k_Function_cuTexRefSetAddress_v2_n, sizeof(__pyx_k_Function_cuTexRefSetAddress_v2_n), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuTexRefSetArray_not_fo, __pyx_k_Function_cuTexRefSetArray_not_fo, sizeof(__pyx_k_Function_cuTexRefSetArray_not_fo), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuTexRefSetBorderColor, __pyx_k_Function_cuTexRefSetBorderColor, sizeof(__pyx_k_Function_cuTexRefSetBorderColor), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuTexRefSetFilterMode_n, __pyx_k_Function_cuTexRefSetFilterMode_n, sizeof(__pyx_k_Function_cuTexRefSetFilterMode_n), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuTexRefSetFlags_not_fo, __pyx_k_Function_cuTexRefSetFlags_not_fo, sizeof(__pyx_k_Function_cuTexRefSetFlags_not_fo), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuTexRefSetFormat_not_f, __pyx_k_Function_cuTexRefSetFormat_not_f, sizeof(__pyx_k_Function_cuTexRefSetFormat_not_f), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuTexRefSetMaxAnisotrop, __pyx_k_Function_cuTexRefSetMaxAnisotrop, sizeof(__pyx_k_Function_cuTexRefSetMaxAnisotrop), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuTexRefSetMipmapFilter, __pyx_k_Function_cuTexRefSetMipmapFilter, sizeof(__pyx_k_Function_cuTexRefSetMipmapFilter), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuTexRefSetMipmapLevelB, __pyx_k_Function_cuTexRefSetMipmapLevelB, sizeof(__pyx_k_Function_cuTexRefSetMipmapLevelB), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuTexRefSetMipmapLevelC, __pyx_k_Function_cuTexRefSetMipmapLevelC, sizeof(__pyx_k_Function_cuTexRefSetMipmapLevelC), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuTexRefSetMipmappedArr, __pyx_k_Function_cuTexRefSetMipmappedArr, sizeof(__pyx_k_Function_cuTexRefSetMipmappedArr), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuThreadExchangeStreamC, __pyx_k_Function_cuThreadExchangeStreamC, sizeof(__pyx_k_Function_cuThreadExchangeStreamC), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuUserObjectCreate_not, __pyx_k_Function_cuUserObjectCreate_not, sizeof(__pyx_k_Function_cuUserObjectCreate_not), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuUserObjectRelease_not, __pyx_k_Function_cuUserObjectRelease_not, sizeof(__pyx_k_Function_cuUserObjectRelease_not), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuUserObjectRetain_not, __pyx_k_Function_cuUserObjectRetain_not, sizeof(__pyx_k_Function_cuUserObjectRetain_not), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuVDPAUCtxCreate_v2_not, __pyx_k_Function_cuVDPAUCtxCreate_v2_not, sizeof(__pyx_k_Function_cuVDPAUCtxCreate_v2_not), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuVDPAUGetDevice_not_fo, __pyx_k_Function_cuVDPAUGetDevice_not_fo, sizeof(__pyx_k_Function_cuVDPAUGetDevice_not_fo), 0, 1, 0, 0},
    {&__pyx_kp_u_Function_cuWaitExternalSemaphore, __pyx_k_Function_cuWaitExternalSemaphore, sizeof(__pyx_k_Function_cuWaitExternalSemaphore), 0, 1, 0, 0},
    {&__pyx_n_s_RuntimeError, __pyx_k_RuntimeError, sizeof(__pyx_k_RuntimeError), 0, 0, 1, 1},
    {&__pyx_n_s__452, __pyx_k__452, sizeof(__pyx_k__452), 0, 0, 1, 1},
    {&__pyx_n_s__453, __pyx_k__453, sizeof(__pyx_k__453), 0, 0, 1, 1},
    {&__pyx_n_s_cline_in_traceback, __pyx_k_cline_in_traceback, sizeof(__pyx_k_cline_in_traceback), 0, 0, 1, 1},
    {&__pyx_n_s_default, __pyx_k_default, sizeof(__pyx_k_default), 0, 0, 1, 1},
    {&__pyx_n_s_encoding, __pyx_k_encoding, sizeof(__pyx_k_encoding), 0, 0, 1, 1},
    {&__pyx_n_s_getenv, __pyx_k_getenv, sizeof(__pyx_k_getenv), 0, 0, 1, 1},
    {&__pyx_n_s_import, __pyx_k_import, sizeof(__pyx_k_import), 0, 0, 1, 1},
    {&__pyx_n_s_initializing, __pyx_k_initializing, sizeof(__pyx_k_initializing), 0, 0, 1, 1},
    {&__pyx_kp_u_libcuda_so_1, __pyx_k_libcuda_so_1, sizeof(__pyx_k_libcuda_so_1), 0, 1, 0, 0},
    {&__pyx_n_s_main, __pyx_k_main, sizeof(__pyx_k_main), 0, 0, 1, 1},
    {&__pyx_n_s_maxsize, __pyx_k_maxsize, sizeof(__pyx_k_maxsize), 0, 0, 1, 1},
    {&__pyx_n_s_name, __pyx_k_name, sizeof(__pyx_k_name), 0, 0, 1, 1},
    {&__pyx_n_s_os, __pyx_k_os, sizeof(__pyx_k_os), 0, 0, 1, 1},
    {&__pyx_n_s_spec, __pyx_k_spec, sizeof(__pyx_k_spec), 0, 0, 1, 1},
    {&__pyx_n_s_sys, __pyx_k_sys, sizeof(__pyx_k_sys), 0, 0, 1, 1},
    {&__pyx_n_s_test, __pyx_k_test, sizeof(__pyx_k_test), 0, 0, 1, 1},
    {&__pyx_kp_u_utf_8, __pyx_k_utf_8, sizeof(__pyx_k_utf_8), 0, 1, 0, 0},
    {0, 0, 0, 0, 0, 0, 0}
  };
  return __Pyx_InitStrings(__pyx_string_tab);
}
/* #### Code section: cached_builtins ### */
static CYTHON_SMALL_CODE int __Pyx_InitCachedBuiltins(void) {
  __pyx_builtin_RuntimeError = __Pyx_GetBuiltinName(__pyx_n_s_RuntimeError); if (!__pyx_builtin_RuntimeError) __PYX_ERR(0, 484, __pyx_L1_error)
  return 0;
  __pyx_L1_error:;
  return -1;
}
/* #### Code section: cached_constants ### */

static CYTHON_SMALL_CODE int __Pyx_InitCachedConstants(void) {
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("__Pyx_InitCachedConstants", 0);

  /* "cuda/_cuda/ccuda.pyx":471
 *     __cuPythonInit = True
 *     with gil:
 *         usePTDS = os.getenv('CUDA_PYTHON_CUDA_PER_THREAD_DEFAULT_STREAM', default=0)             # <<<<<<<<<<<<<<
 * 
 *     # Load library
 */
  __pyx_tuple_ = PyTuple_Pack(1, __pyx_n_u_CUDA_PYTHON_CUDA_PER_THREAD_DEFA); if (unlikely(!__pyx_tuple_)) __PYX_ERR(0, 471, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple_);
  __Pyx_GIVEREF(__pyx_tuple_);

  /* "cuda/_cuda/ccuda.pyx":2635
 *     if __cuGetErrorString == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuGetErrorString" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUresult, const char**) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGetErrorString)(error, pStr)
 *     return err
 */
  __pyx_tuple__2 = PyTuple_Pack(1, __pyx_kp_u_Function_cuGetErrorString_not_fo); if (unlikely(!__pyx_tuple__2)) __PYX_ERR(0, 2635, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__2);
  __Pyx_GIVEREF(__pyx_tuple__2);

  /* "cuda/_cuda/ccuda.pyx":2644
 *     if __cuGetErrorName == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuGetErrorName" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUresult, const char**) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGetErrorName)(error, pStr)
 *     return err
 */
  __pyx_tuple__3 = PyTuple_Pack(1, __pyx_kp_u_Function_cuGetErrorName_not_foun); if (unlikely(!__pyx_tuple__3)) __PYX_ERR(0, 2644, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__3);
  __Pyx_GIVEREF(__pyx_tuple__3);

  /* "cuda/_cuda/ccuda.pyx":2653
 *     if __cuInit == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuInit" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuInit)(Flags)
 *     return err
 */
  __pyx_tuple__4 = PyTuple_Pack(1, __pyx_kp_u_Function_cuInit_not_found); if (unlikely(!__pyx_tuple__4)) __PYX_ERR(0, 2653, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__4);
  __Pyx_GIVEREF(__pyx_tuple__4);

  /* "cuda/_cuda/ccuda.pyx":2662
 *     if __cuDriverGetVersion == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuDriverGetVersion" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(int*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuDriverGetVersion)(driverVersion)
 *     return err
 */
  __pyx_tuple__5 = PyTuple_Pack(1, __pyx_kp_u_Function_cuDriverGetVersion_not); if (unlikely(!__pyx_tuple__5)) __PYX_ERR(0, 2662, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__5);
  __Pyx_GIVEREF(__pyx_tuple__5);

  /* "cuda/_cuda/ccuda.pyx":2671
 *     if __cuDeviceGet == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuDeviceGet" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUdevice*, int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuDeviceGet)(device, ordinal)
 *     return err
 */
  __pyx_tuple__6 = PyTuple_Pack(1, __pyx_kp_u_Function_cuDeviceGet_not_found); if (unlikely(!__pyx_tuple__6)) __PYX_ERR(0, 2671, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__6);
  __Pyx_GIVEREF(__pyx_tuple__6);

  /* "cuda/_cuda/ccuda.pyx":2680
 *     if __cuDeviceGetCount == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuDeviceGetCount" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(int*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuDeviceGetCount)(count)
 *     return err
 */
  __pyx_tuple__7 = PyTuple_Pack(1, __pyx_kp_u_Function_cuDeviceGetCount_not_fo); if (unlikely(!__pyx_tuple__7)) __PYX_ERR(0, 2680, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__7);
  __Pyx_GIVEREF(__pyx_tuple__7);

  /* "cuda/_cuda/ccuda.pyx":2689
 *     if __cuDeviceGetName == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuDeviceGetName" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(char*, int, CUdevice) except ?CUDA_ERROR_NOT_FOUND nogil> __cuDeviceGetName)(name, length, dev)
 *     return err
 */
  __pyx_tuple__8 = PyTuple_Pack(1, __pyx_kp_u_Function_cuDeviceGetName_not_fou); if (unlikely(!__pyx_tuple__8)) __PYX_ERR(0, 2689, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__8);
  __Pyx_GIVEREF(__pyx_tuple__8);

  /* "cuda/_cuda/ccuda.pyx":2698
 *     if __cuDeviceGetUuid == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuDeviceGetUuid" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUuuid*, CUdevice) except ?CUDA_ERROR_NOT_FOUND nogil> __cuDeviceGetUuid)(uuid, dev)
 *     return err
 */
  __pyx_tuple__9 = PyTuple_Pack(1, __pyx_kp_u_Function_cuDeviceGetUuid_not_fou); if (unlikely(!__pyx_tuple__9)) __PYX_ERR(0, 2698, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__9);
  __Pyx_GIVEREF(__pyx_tuple__9);

  /* "cuda/_cuda/ccuda.pyx":2707
 *     if __cuDeviceGetUuid_v2 == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuDeviceGetUuid_v2" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUuuid*, CUdevice) except ?CUDA_ERROR_NOT_FOUND nogil> __cuDeviceGetUuid_v2)(uuid, dev)
 *     return err
 */
  __pyx_tuple__10 = PyTuple_Pack(1, __pyx_kp_u_Function_cuDeviceGetUuid_v2_not); if (unlikely(!__pyx_tuple__10)) __PYX_ERR(0, 2707, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__10);
  __Pyx_GIVEREF(__pyx_tuple__10);

  /* "cuda/_cuda/ccuda.pyx":2716
 *     if __cuDeviceGetLuid == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuDeviceGetLuid" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(char*, unsigned int*, CUdevice) except ?CUDA_ERROR_NOT_FOUND nogil> __cuDeviceGetLuid)(luid, deviceNodeMask, dev)
 *     return err
 */
  __pyx_tuple__11 = PyTuple_Pack(1, __pyx_kp_u_Function_cuDeviceGetLuid_not_fou); if (unlikely(!__pyx_tuple__11)) __PYX_ERR(0, 2716, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__11);
  __Pyx_GIVEREF(__pyx_tuple__11);

  /* "cuda/_cuda/ccuda.pyx":2725
 *     if __cuDeviceTotalMem_v2 == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuDeviceTotalMem_v2" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(size_t*, CUdevice) except ?CUDA_ERROR_NOT_FOUND nogil> __cuDeviceTotalMem_v2)(numbytes, dev)
 *     return err
 */
  __pyx_tuple__12 = PyTuple_Pack(1, __pyx_kp_u_Function_cuDeviceTotalMem_v2_not); if (unlikely(!__pyx_tuple__12)) __PYX_ERR(0, 2725, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__12);
  __Pyx_GIVEREF(__pyx_tuple__12);

  /* "cuda/_cuda/ccuda.pyx":2734
 *     if __cuDeviceGetTexture1DLinearMaxWidth == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuDeviceGetTexture1DLinearMaxWidth" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(size_t*, CUarray_format, unsigned, CUdevice) except ?CUDA_ERROR_NOT_FOUND nogil> __cuDeviceGetTexture1DLinearMaxWidth)(maxWidthInElements, pformat, numChannels, dev)
 *     return err
 */
  __pyx_tuple__13 = PyTuple_Pack(1, __pyx_kp_u_Function_cuDeviceGetTexture1DLin); if (unlikely(!__pyx_tuple__13)) __PYX_ERR(0, 2734, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__13);
  __Pyx_GIVEREF(__pyx_tuple__13);

  /* "cuda/_cuda/ccuda.pyx":2743
 *     if __cuDeviceGetAttribute == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuDeviceGetAttribute" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(int*, CUdevice_attribute, CUdevice) except ?CUDA_ERROR_NOT_FOUND nogil> __cuDeviceGetAttribute)(pi, attrib, dev)
 *     return err
 */
  __pyx_tuple__14 = PyTuple_Pack(1, __pyx_kp_u_Function_cuDeviceGetAttribute_no); if (unlikely(!__pyx_tuple__14)) __PYX_ERR(0, 2743, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__14);
  __Pyx_GIVEREF(__pyx_tuple__14);

  /* "cuda/_cuda/ccuda.pyx":2752
 *     if __cuDeviceGetNvSciSyncAttributes == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuDeviceGetNvSciSyncAttributes" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(void*, CUdevice, int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuDeviceGetNvSciSyncAttributes)(nvSciSyncAttrList, dev, flags)
 *     return err
 */
  __pyx_tuple__15 = PyTuple_Pack(1, __pyx_kp_u_Function_cuDeviceGetNvSciSyncAtt); if (unlikely(!__pyx_tuple__15)) __PYX_ERR(0, 2752, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__15);
  __Pyx_GIVEREF(__pyx_tuple__15);

  /* "cuda/_cuda/ccuda.pyx":2761
 *     if __cuDeviceSetMemPool == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuDeviceSetMemPool" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUdevice, CUmemoryPool) except ?CUDA_ERROR_NOT_FOUND nogil> __cuDeviceSetMemPool)(dev, pool)
 *     return err
 */
  __pyx_tuple__16 = PyTuple_Pack(1, __pyx_kp_u_Function_cuDeviceSetMemPool_not); if (unlikely(!__pyx_tuple__16)) __PYX_ERR(0, 2761, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__16);
  __Pyx_GIVEREF(__pyx_tuple__16);

  /* "cuda/_cuda/ccuda.pyx":2770
 *     if __cuDeviceGetMemPool == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuDeviceGetMemPool" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUmemoryPool*, CUdevice) except ?CUDA_ERROR_NOT_FOUND nogil> __cuDeviceGetMemPool)(pool, dev)
 *     return err
 */
  __pyx_tuple__17 = PyTuple_Pack(1, __pyx_kp_u_Function_cuDeviceGetMemPool_not); if (unlikely(!__pyx_tuple__17)) __PYX_ERR(0, 2770, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__17);
  __Pyx_GIVEREF(__pyx_tuple__17);

  /* "cuda/_cuda/ccuda.pyx":2779
 *     if __cuDeviceGetDefaultMemPool == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuDeviceGetDefaultMemPool" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUmemoryPool*, CUdevice) except ?CUDA_ERROR_NOT_FOUND nogil> __cuDeviceGetDefaultMemPool)(pool_out, dev)
 *     return err
 */
  __pyx_tuple__18 = PyTuple_Pack(1, __pyx_kp_u_Function_cuDeviceGetDefaultMemPo); if (unlikely(!__pyx_tuple__18)) __PYX_ERR(0, 2779, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__18);
  __Pyx_GIVEREF(__pyx_tuple__18);

  /* "cuda/_cuda/ccuda.pyx":2788
 *     if __cuDeviceGetExecAffinitySupport == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuDeviceGetExecAffinitySupport" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(int*, CUexecAffinityType, CUdevice) except ?CUDA_ERROR_NOT_FOUND nogil> __cuDeviceGetExecAffinitySupport)(pi, typename, dev)
 *     return err
 */
  __pyx_tuple__19 = PyTuple_Pack(1, __pyx_kp_u_Function_cuDeviceGetExecAffinity); if (unlikely(!__pyx_tuple__19)) __PYX_ERR(0, 2788, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__19);
  __Pyx_GIVEREF(__pyx_tuple__19);

  /* "cuda/_cuda/ccuda.pyx":2797
 *     if __cuFlushGPUDirectRDMAWrites == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuFlushGPUDirectRDMAWrites" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUflushGPUDirectRDMAWritesTarget, CUflushGPUDirectRDMAWritesScope) except ?CUDA_ERROR_NOT_FOUND nogil> __cuFlushGPUDirectRDMAWrites)(target, scope)
 *     return err
 */
  __pyx_tuple__20 = PyTuple_Pack(1, __pyx_kp_u_Function_cuFlushGPUDirectRDMAWri); if (unlikely(!__pyx_tuple__20)) __PYX_ERR(0, 2797, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__20);
  __Pyx_GIVEREF(__pyx_tuple__20);

  /* "cuda/_cuda/ccuda.pyx":2806
 *     if __cuDeviceGetProperties == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuDeviceGetProperties" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUdevprop*, CUdevice) except ?CUDA_ERROR_NOT_FOUND nogil> __cuDeviceGetProperties)(prop, dev)
 *     return err
 */
  __pyx_tuple__21 = PyTuple_Pack(1, __pyx_kp_u_Function_cuDeviceGetProperties_n); if (unlikely(!__pyx_tuple__21)) __PYX_ERR(0, 2806, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__21);
  __Pyx_GIVEREF(__pyx_tuple__21);

  /* "cuda/_cuda/ccuda.pyx":2815
 *     if __cuDeviceComputeCapability == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuDeviceComputeCapability" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(int*, int*, CUdevice) except ?CUDA_ERROR_NOT_FOUND nogil> __cuDeviceComputeCapability)(major, minor, dev)
 *     return err
 */
  __pyx_tuple__22 = PyTuple_Pack(1, __pyx_kp_u_Function_cuDeviceComputeCapabili); if (unlikely(!__pyx_tuple__22)) __PYX_ERR(0, 2815, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__22);
  __Pyx_GIVEREF(__pyx_tuple__22);

  /* "cuda/_cuda/ccuda.pyx":2824
 *     if __cuDevicePrimaryCtxRetain == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuDevicePrimaryCtxRetain" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUcontext*, CUdevice) except ?CUDA_ERROR_NOT_FOUND nogil> __cuDevicePrimaryCtxRetain)(pctx, dev)
 *     return err
 */
  __pyx_tuple__23 = PyTuple_Pack(1, __pyx_kp_u_Function_cuDevicePrimaryCtxRetai); if (unlikely(!__pyx_tuple__23)) __PYX_ERR(0, 2824, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__23);
  __Pyx_GIVEREF(__pyx_tuple__23);

  /* "cuda/_cuda/ccuda.pyx":2833
 *     if __cuDevicePrimaryCtxRelease_v2 == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuDevicePrimaryCtxRelease_v2" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUdevice) except ?CUDA_ERROR_NOT_FOUND nogil> __cuDevicePrimaryCtxRelease_v2)(dev)
 *     return err
 */
  __pyx_tuple__24 = PyTuple_Pack(1, __pyx_kp_u_Function_cuDevicePrimaryCtxRelea); if (unlikely(!__pyx_tuple__24)) __PYX_ERR(0, 2833, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__24);
  __Pyx_GIVEREF(__pyx_tuple__24);

  /* "cuda/_cuda/ccuda.pyx":2842
 *     if __cuDevicePrimaryCtxSetFlags_v2 == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuDevicePrimaryCtxSetFlags_v2" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUdevice, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuDevicePrimaryCtxSetFlags_v2)(dev, flags)
 *     return err
 */
  __pyx_tuple__25 = PyTuple_Pack(1, __pyx_kp_u_Function_cuDevicePrimaryCtxSetFl); if (unlikely(!__pyx_tuple__25)) __PYX_ERR(0, 2842, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__25);
  __Pyx_GIVEREF(__pyx_tuple__25);

  /* "cuda/_cuda/ccuda.pyx":2851
 *     if __cuDevicePrimaryCtxGetState == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuDevicePrimaryCtxGetState" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUdevice, unsigned int*, int*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuDevicePrimaryCtxGetState)(dev, flags, active)
 *     return err
 */
  __pyx_tuple__26 = PyTuple_Pack(1, __pyx_kp_u_Function_cuDevicePrimaryCtxGetSt); if (unlikely(!__pyx_tuple__26)) __PYX_ERR(0, 2851, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__26);
  __Pyx_GIVEREF(__pyx_tuple__26);

  /* "cuda/_cuda/ccuda.pyx":2860
 *     if __cuDevicePrimaryCtxReset_v2 == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuDevicePrimaryCtxReset_v2" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUdevice) except ?CUDA_ERROR_NOT_FOUND nogil> __cuDevicePrimaryCtxReset_v2)(dev)
 *     return err
 */
  __pyx_tuple__27 = PyTuple_Pack(1, __pyx_kp_u_Function_cuDevicePrimaryCtxReset); if (unlikely(!__pyx_tuple__27)) __PYX_ERR(0, 2860, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__27);
  __Pyx_GIVEREF(__pyx_tuple__27);

  /* "cuda/_cuda/ccuda.pyx":2869
 *     if __cuCtxCreate_v2 == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuCtxCreate_v2" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUcontext*, unsigned int, CUdevice) except ?CUDA_ERROR_NOT_FOUND nogil> __cuCtxCreate_v2)(pctx, flags, dev)
 *     return err
 */
  __pyx_tuple__28 = PyTuple_Pack(1, __pyx_kp_u_Function_cuCtxCreate_v2_not_foun); if (unlikely(!__pyx_tuple__28)) __PYX_ERR(0, 2869, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__28);
  __Pyx_GIVEREF(__pyx_tuple__28);

  /* "cuda/_cuda/ccuda.pyx":2878
 *     if __cuCtxCreate_v3 == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuCtxCreate_v3" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUcontext*, CUexecAffinityParam*, int, unsigned int, CUdevice) except ?CUDA_ERROR_NOT_FOUND nogil> __cuCtxCreate_v3)(pctx, paramsArray, numParams, flags, dev)
 *     return err
 */
  __pyx_tuple__29 = PyTuple_Pack(1, __pyx_kp_u_Function_cuCtxCreate_v3_not_foun); if (unlikely(!__pyx_tuple__29)) __PYX_ERR(0, 2878, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__29);
  __Pyx_GIVEREF(__pyx_tuple__29);

  /* "cuda/_cuda/ccuda.pyx":2887
 *     if __cuCtxDestroy_v2 == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuCtxDestroy_v2" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUcontext) except ?CUDA_ERROR_NOT_FOUND nogil> __cuCtxDestroy_v2)(ctx)
 *     return err
 */
  __pyx_tuple__30 = PyTuple_Pack(1, __pyx_kp_u_Function_cuCtxDestroy_v2_not_fou); if (unlikely(!__pyx_tuple__30)) __PYX_ERR(0, 2887, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__30);
  __Pyx_GIVEREF(__pyx_tuple__30);

  /* "cuda/_cuda/ccuda.pyx":2896
 *     if __cuCtxPushCurrent_v2 == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuCtxPushCurrent_v2" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUcontext) except ?CUDA_ERROR_NOT_FOUND nogil> __cuCtxPushCurrent_v2)(ctx)
 *     return err
 */
  __pyx_tuple__31 = PyTuple_Pack(1, __pyx_kp_u_Function_cuCtxPushCurrent_v2_not); if (unlikely(!__pyx_tuple__31)) __PYX_ERR(0, 2896, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__31);
  __Pyx_GIVEREF(__pyx_tuple__31);

  /* "cuda/_cuda/ccuda.pyx":2905
 *     if __cuCtxPopCurrent_v2 == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuCtxPopCurrent_v2" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUcontext*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuCtxPopCurrent_v2)(pctx)
 *     return err
 */
  __pyx_tuple__32 = PyTuple_Pack(1, __pyx_kp_u_Function_cuCtxPopCurrent_v2_not); if (unlikely(!__pyx_tuple__32)) __PYX_ERR(0, 2905, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__32);
  __Pyx_GIVEREF(__pyx_tuple__32);

  /* "cuda/_cuda/ccuda.pyx":2914
 *     if __cuCtxSetCurrent == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuCtxSetCurrent" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUcontext) except ?CUDA_ERROR_NOT_FOUND nogil> __cuCtxSetCurrent)(ctx)
 *     return err
 */
  __pyx_tuple__33 = PyTuple_Pack(1, __pyx_kp_u_Function_cuCtxSetCurrent_not_fou); if (unlikely(!__pyx_tuple__33)) __PYX_ERR(0, 2914, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__33);
  __Pyx_GIVEREF(__pyx_tuple__33);

  /* "cuda/_cuda/ccuda.pyx":2923
 *     if __cuCtxGetCurrent == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuCtxGetCurrent" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUcontext*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuCtxGetCurrent)(pctx)
 *     return err
 */
  __pyx_tuple__34 = PyTuple_Pack(1, __pyx_kp_u_Function_cuCtxGetCurrent_not_fou); if (unlikely(!__pyx_tuple__34)) __PYX_ERR(0, 2923, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__34);
  __Pyx_GIVEREF(__pyx_tuple__34);

  /* "cuda/_cuda/ccuda.pyx":2932
 *     if __cuCtxGetDevice == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuCtxGetDevice" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUdevice*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuCtxGetDevice)(device)
 *     return err
 */
  __pyx_tuple__35 = PyTuple_Pack(1, __pyx_kp_u_Function_cuCtxGetDevice_not_foun); if (unlikely(!__pyx_tuple__35)) __PYX_ERR(0, 2932, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__35);
  __Pyx_GIVEREF(__pyx_tuple__35);

  /* "cuda/_cuda/ccuda.pyx":2941
 *     if __cuCtxGetFlags == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuCtxGetFlags" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(unsigned int*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuCtxGetFlags)(flags)
 *     return err
 */
  __pyx_tuple__36 = PyTuple_Pack(1, __pyx_kp_u_Function_cuCtxGetFlags_not_found); if (unlikely(!__pyx_tuple__36)) __PYX_ERR(0, 2941, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__36);
  __Pyx_GIVEREF(__pyx_tuple__36);

  /* "cuda/_cuda/ccuda.pyx":2950
 *     if __cuCtxSetFlags == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuCtxSetFlags" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuCtxSetFlags)(flags)
 *     return err
 */
  __pyx_tuple__37 = PyTuple_Pack(1, __pyx_kp_u_Function_cuCtxSetFlags_not_found); if (unlikely(!__pyx_tuple__37)) __PYX_ERR(0, 2950, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__37);
  __Pyx_GIVEREF(__pyx_tuple__37);

  /* "cuda/_cuda/ccuda.pyx":2959
 *     if __cuCtxGetId == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuCtxGetId" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUcontext, unsigned long long*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuCtxGetId)(ctx, ctxId)
 *     return err
 */
  __pyx_tuple__38 = PyTuple_Pack(1, __pyx_kp_u_Function_cuCtxGetId_not_found); if (unlikely(!__pyx_tuple__38)) __PYX_ERR(0, 2959, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__38);
  __Pyx_GIVEREF(__pyx_tuple__38);

  /* "cuda/_cuda/ccuda.pyx":2968
 *     if __cuCtxSynchronize == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuCtxSynchronize" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)() except ?CUDA_ERROR_NOT_FOUND nogil> __cuCtxSynchronize)()
 *     return err
 */
  __pyx_tuple__39 = PyTuple_Pack(1, __pyx_kp_u_Function_cuCtxSynchronize_not_fo); if (unlikely(!__pyx_tuple__39)) __PYX_ERR(0, 2968, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__39);
  __Pyx_GIVEREF(__pyx_tuple__39);

  /* "cuda/_cuda/ccuda.pyx":2977
 *     if __cuCtxSetLimit == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuCtxSetLimit" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUlimit, size_t) except ?CUDA_ERROR_NOT_FOUND nogil> __cuCtxSetLimit)(limit, value)
 *     return err
 */
  __pyx_tuple__40 = PyTuple_Pack(1, __pyx_kp_u_Function_cuCtxSetLimit_not_found); if (unlikely(!__pyx_tuple__40)) __PYX_ERR(0, 2977, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__40);
  __Pyx_GIVEREF(__pyx_tuple__40);

  /* "cuda/_cuda/ccuda.pyx":2986
 *     if __cuCtxGetLimit == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuCtxGetLimit" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(size_t*, CUlimit) except ?CUDA_ERROR_NOT_FOUND nogil> __cuCtxGetLimit)(pvalue, limit)
 *     return err
 */
  __pyx_tuple__41 = PyTuple_Pack(1, __pyx_kp_u_Function_cuCtxGetLimit_not_found); if (unlikely(!__pyx_tuple__41)) __PYX_ERR(0, 2986, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__41);
  __Pyx_GIVEREF(__pyx_tuple__41);

  /* "cuda/_cuda/ccuda.pyx":2995
 *     if __cuCtxGetCacheConfig == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuCtxGetCacheConfig" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUfunc_cache*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuCtxGetCacheConfig)(pconfig)
 *     return err
 */
  __pyx_tuple__42 = PyTuple_Pack(1, __pyx_kp_u_Function_cuCtxGetCacheConfig_not); if (unlikely(!__pyx_tuple__42)) __PYX_ERR(0, 2995, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__42);
  __Pyx_GIVEREF(__pyx_tuple__42);

  /* "cuda/_cuda/ccuda.pyx":3004
 *     if __cuCtxSetCacheConfig == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuCtxSetCacheConfig" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUfunc_cache) except ?CUDA_ERROR_NOT_FOUND nogil> __cuCtxSetCacheConfig)(config)
 *     return err
 */
  __pyx_tuple__43 = PyTuple_Pack(1, __pyx_kp_u_Function_cuCtxSetCacheConfig_not); if (unlikely(!__pyx_tuple__43)) __PYX_ERR(0, 3004, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__43);
  __Pyx_GIVEREF(__pyx_tuple__43);

  /* "cuda/_cuda/ccuda.pyx":3013
 *     if __cuCtxGetApiVersion == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuCtxGetApiVersion" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUcontext, unsigned int*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuCtxGetApiVersion)(ctx, version)
 *     return err
 */
  __pyx_tuple__44 = PyTuple_Pack(1, __pyx_kp_u_Function_cuCtxGetApiVersion_not); if (unlikely(!__pyx_tuple__44)) __PYX_ERR(0, 3013, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__44);
  __Pyx_GIVEREF(__pyx_tuple__44);

  /* "cuda/_cuda/ccuda.pyx":3022
 *     if __cuCtxGetStreamPriorityRange == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuCtxGetStreamPriorityRange" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(int*, int*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuCtxGetStreamPriorityRange)(leastPriority, greatestPriority)
 *     return err
 */
  __pyx_tuple__45 = PyTuple_Pack(1, __pyx_kp_u_Function_cuCtxGetStreamPriorityR); if (unlikely(!__pyx_tuple__45)) __PYX_ERR(0, 3022, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__45);
  __Pyx_GIVEREF(__pyx_tuple__45);

  /* "cuda/_cuda/ccuda.pyx":3031
 *     if __cuCtxResetPersistingL2Cache == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuCtxResetPersistingL2Cache" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)() except ?CUDA_ERROR_NOT_FOUND nogil> __cuCtxResetPersistingL2Cache)()
 *     return err
 */
  __pyx_tuple__46 = PyTuple_Pack(1, __pyx_kp_u_Function_cuCtxResetPersistingL2C); if (unlikely(!__pyx_tuple__46)) __PYX_ERR(0, 3031, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__46);
  __Pyx_GIVEREF(__pyx_tuple__46);

  /* "cuda/_cuda/ccuda.pyx":3040
 *     if __cuCtxGetExecAffinity == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuCtxGetExecAffinity" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUexecAffinityParam*, CUexecAffinityType) except ?CUDA_ERROR_NOT_FOUND nogil> __cuCtxGetExecAffinity)(pExecAffinity, typename)
 *     return err
 */
  __pyx_tuple__47 = PyTuple_Pack(1, __pyx_kp_u_Function_cuCtxGetExecAffinity_no); if (unlikely(!__pyx_tuple__47)) __PYX_ERR(0, 3040, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__47);
  __Pyx_GIVEREF(__pyx_tuple__47);

  /* "cuda/_cuda/ccuda.pyx":3049
 *     if __cuCtxAttach == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuCtxAttach" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUcontext*, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuCtxAttach)(pctx, flags)
 *     return err
 */
  __pyx_tuple__48 = PyTuple_Pack(1, __pyx_kp_u_Function_cuCtxAttach_not_found); if (unlikely(!__pyx_tuple__48)) __PYX_ERR(0, 3049, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__48);
  __Pyx_GIVEREF(__pyx_tuple__48);

  /* "cuda/_cuda/ccuda.pyx":3058
 *     if __cuCtxDetach == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuCtxDetach" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUcontext) except ?CUDA_ERROR_NOT_FOUND nogil> __cuCtxDetach)(ctx)
 *     return err
 */
  __pyx_tuple__49 = PyTuple_Pack(1, __pyx_kp_u_Function_cuCtxDetach_not_found); if (unlikely(!__pyx_tuple__49)) __PYX_ERR(0, 3058, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__49);
  __Pyx_GIVEREF(__pyx_tuple__49);

  /* "cuda/_cuda/ccuda.pyx":3067
 *     if __cuCtxGetSharedMemConfig == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuCtxGetSharedMemConfig" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUsharedconfig*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuCtxGetSharedMemConfig)(pConfig)
 *     return err
 */
  __pyx_tuple__50 = PyTuple_Pack(1, __pyx_kp_u_Function_cuCtxGetSharedMemConfig); if (unlikely(!__pyx_tuple__50)) __PYX_ERR(0, 3067, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__50);
  __Pyx_GIVEREF(__pyx_tuple__50);

  /* "cuda/_cuda/ccuda.pyx":3076
 *     if __cuCtxSetSharedMemConfig == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuCtxSetSharedMemConfig" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUsharedconfig) except ?CUDA_ERROR_NOT_FOUND nogil> __cuCtxSetSharedMemConfig)(config)
 *     return err
 */
  __pyx_tuple__51 = PyTuple_Pack(1, __pyx_kp_u_Function_cuCtxSetSharedMemConfig); if (unlikely(!__pyx_tuple__51)) __PYX_ERR(0, 3076, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__51);
  __Pyx_GIVEREF(__pyx_tuple__51);

  /* "cuda/_cuda/ccuda.pyx":3085
 *     if __cuModuleLoad == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuModuleLoad" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUmodule*, const char*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuModuleLoad)(module, fname)
 *     return err
 */
  __pyx_tuple__52 = PyTuple_Pack(1, __pyx_kp_u_Function_cuModuleLoad_not_found); if (unlikely(!__pyx_tuple__52)) __PYX_ERR(0, 3085, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__52);
  __Pyx_GIVEREF(__pyx_tuple__52);

  /* "cuda/_cuda/ccuda.pyx":3094
 *     if __cuModuleLoadData == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuModuleLoadData" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUmodule*, const void*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuModuleLoadData)(module, image)
 *     return err
 */
  __pyx_tuple__53 = PyTuple_Pack(1, __pyx_kp_u_Function_cuModuleLoadData_not_fo); if (unlikely(!__pyx_tuple__53)) __PYX_ERR(0, 3094, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__53);
  __Pyx_GIVEREF(__pyx_tuple__53);

  /* "cuda/_cuda/ccuda.pyx":3103
 *     if __cuModuleLoadDataEx == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuModuleLoadDataEx" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUmodule*, const void*, unsigned int, CUjit_option*, void**) except ?CUDA_ERROR_NOT_FOUND nogil> __cuModuleLoadDataEx)(module, image, numOptions, options, optionValues)
 *     return err
 */
  __pyx_tuple__54 = PyTuple_Pack(1, __pyx_kp_u_Function_cuModuleLoadDataEx_not); if (unlikely(!__pyx_tuple__54)) __PYX_ERR(0, 3103, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__54);
  __Pyx_GIVEREF(__pyx_tuple__54);

  /* "cuda/_cuda/ccuda.pyx":3112
 *     if __cuModuleLoadFatBinary == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuModuleLoadFatBinary" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUmodule*, const void*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuModuleLoadFatBinary)(module, fatCubin)
 *     return err
 */
  __pyx_tuple__55 = PyTuple_Pack(1, __pyx_kp_u_Function_cuModuleLoadFatBinary_n); if (unlikely(!__pyx_tuple__55)) __PYX_ERR(0, 3112, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__55);
  __Pyx_GIVEREF(__pyx_tuple__55);

  /* "cuda/_cuda/ccuda.pyx":3121
 *     if __cuModuleUnload == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuModuleUnload" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUmodule) except ?CUDA_ERROR_NOT_FOUND nogil> __cuModuleUnload)(hmod)
 *     return err
 */
  __pyx_tuple__56 = PyTuple_Pack(1, __pyx_kp_u_Function_cuModuleUnload_not_foun); if (unlikely(!__pyx_tuple__56)) __PYX_ERR(0, 3121, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__56);
  __Pyx_GIVEREF(__pyx_tuple__56);

  /* "cuda/_cuda/ccuda.pyx":3130
 *     if __cuModuleGetLoadingMode == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuModuleGetLoadingMode" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUmoduleLoadingMode*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuModuleGetLoadingMode)(mode)
 *     return err
 */
  __pyx_tuple__57 = PyTuple_Pack(1, __pyx_kp_u_Function_cuModuleGetLoadingMode); if (unlikely(!__pyx_tuple__57)) __PYX_ERR(0, 3130, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__57);
  __Pyx_GIVEREF(__pyx_tuple__57);

  /* "cuda/_cuda/ccuda.pyx":3139
 *     if __cuModuleGetFunction == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuModuleGetFunction" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUfunction*, CUmodule, const char*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuModuleGetFunction)(hfunc, hmod, name)
 *     return err
 */
  __pyx_tuple__58 = PyTuple_Pack(1, __pyx_kp_u_Function_cuModuleGetFunction_not); if (unlikely(!__pyx_tuple__58)) __PYX_ERR(0, 3139, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__58);
  __Pyx_GIVEREF(__pyx_tuple__58);

  /* "cuda/_cuda/ccuda.pyx":3148
 *     if __cuModuleGetFunctionCount == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuModuleGetFunctionCount" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(unsigned int*, CUmodule) except ?CUDA_ERROR_NOT_FOUND nogil> __cuModuleGetFunctionCount)(count, mod)
 *     return err
 */
  __pyx_tuple__59 = PyTuple_Pack(1, __pyx_kp_u_Function_cuModuleGetFunctionCoun); if (unlikely(!__pyx_tuple__59)) __PYX_ERR(0, 3148, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__59);
  __Pyx_GIVEREF(__pyx_tuple__59);

  /* "cuda/_cuda/ccuda.pyx":3157
 *     if __cuModuleEnumerateFunctions == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuModuleEnumerateFunctions" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUfunction*, unsigned int, CUmodule) except ?CUDA_ERROR_NOT_FOUND nogil> __cuModuleEnumerateFunctions)(functions, numFunctions, mod)
 *     return err
 */
  __pyx_tuple__60 = PyTuple_Pack(1, __pyx_kp_u_Function_cuModuleEnumerateFuncti); if (unlikely(!__pyx_tuple__60)) __PYX_ERR(0, 3157, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__60);
  __Pyx_GIVEREF(__pyx_tuple__60);

  /* "cuda/_cuda/ccuda.pyx":3166
 *     if __cuModuleGetGlobal_v2 == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuModuleGetGlobal_v2" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUdeviceptr*, size_t*, CUmodule, const char*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuModuleGetGlobal_v2)(dptr, numbytes, hmod, name)
 *     return err
 */
  __pyx_tuple__61 = PyTuple_Pack(1, __pyx_kp_u_Function_cuModuleGetGlobal_v2_no); if (unlikely(!__pyx_tuple__61)) __PYX_ERR(0, 3166, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__61);
  __Pyx_GIVEREF(__pyx_tuple__61);

  /* "cuda/_cuda/ccuda.pyx":3175
 *     if __cuLinkCreate_v2 == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuLinkCreate_v2" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(unsigned int, CUjit_option*, void**, CUlinkState*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuLinkCreate_v2)(numOptions, options, optionValues, stateOut)
 *     return err
 */
  __pyx_tuple__62 = PyTuple_Pack(1, __pyx_kp_u_Function_cuLinkCreate_v2_not_fou); if (unlikely(!__pyx_tuple__62)) __PYX_ERR(0, 3175, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__62);
  __Pyx_GIVEREF(__pyx_tuple__62);

  /* "cuda/_cuda/ccuda.pyx":3184
 *     if __cuLinkAddData_v2 == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuLinkAddData_v2" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUlinkState, CUjitInputType, void*, size_t, const char*, unsigned int, CUjit_option*, void**) except ?CUDA_ERROR_NOT_FOUND nogil> __cuLinkAddData_v2)(state, typename, data, size, name, numOptions, options, optionValues)
 *     return err
 */
  __pyx_tuple__63 = PyTuple_Pack(1, __pyx_kp_u_Function_cuLinkAddData_v2_not_fo); if (unlikely(!__pyx_tuple__63)) __PYX_ERR(0, 3184, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__63);
  __Pyx_GIVEREF(__pyx_tuple__63);

  /* "cuda/_cuda/ccuda.pyx":3193
 *     if __cuLinkAddFile_v2 == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuLinkAddFile_v2" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUlinkState, CUjitInputType, const char*, unsigned int, CUjit_option*, void**) except ?CUDA_ERROR_NOT_FOUND nogil> __cuLinkAddFile_v2)(state, typename, path, numOptions, options, optionValues)
 *     return err
 */
  __pyx_tuple__64 = PyTuple_Pack(1, __pyx_kp_u_Function_cuLinkAddFile_v2_not_fo); if (unlikely(!__pyx_tuple__64)) __PYX_ERR(0, 3193, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__64);
  __Pyx_GIVEREF(__pyx_tuple__64);

  /* "cuda/_cuda/ccuda.pyx":3202
 *     if __cuLinkComplete == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuLinkComplete" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUlinkState, void**, size_t*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuLinkComplete)(state, cubinOut, sizeOut)
 *     return err
 */
  __pyx_tuple__65 = PyTuple_Pack(1, __pyx_kp_u_Function_cuLinkComplete_not_foun); if (unlikely(!__pyx_tuple__65)) __PYX_ERR(0, 3202, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__65);
  __Pyx_GIVEREF(__pyx_tuple__65);

  /* "cuda/_cuda/ccuda.pyx":3211
 *     if __cuLinkDestroy == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuLinkDestroy" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUlinkState) except ?CUDA_ERROR_NOT_FOUND nogil> __cuLinkDestroy)(state)
 *     return err
 */
  __pyx_tuple__66 = PyTuple_Pack(1, __pyx_kp_u_Function_cuLinkDestroy_not_found); if (unlikely(!__pyx_tuple__66)) __PYX_ERR(0, 3211, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__66);
  __Pyx_GIVEREF(__pyx_tuple__66);

  /* "cuda/_cuda/ccuda.pyx":3220
 *     if __cuModuleGetTexRef == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuModuleGetTexRef" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUtexref*, CUmodule, const char*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuModuleGetTexRef)(pTexRef, hmod, name)
 *     return err
 */
  __pyx_tuple__67 = PyTuple_Pack(1, __pyx_kp_u_Function_cuModuleGetTexRef_not_f); if (unlikely(!__pyx_tuple__67)) __PYX_ERR(0, 3220, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__67);
  __Pyx_GIVEREF(__pyx_tuple__67);

  /* "cuda/_cuda/ccuda.pyx":3229
 *     if __cuModuleGetSurfRef == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuModuleGetSurfRef" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUsurfref*, CUmodule, const char*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuModuleGetSurfRef)(pSurfRef, hmod, name)
 *     return err
 */
  __pyx_tuple__68 = PyTuple_Pack(1, __pyx_kp_u_Function_cuModuleGetSurfRef_not); if (unlikely(!__pyx_tuple__68)) __PYX_ERR(0, 3229, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__68);
  __Pyx_GIVEREF(__pyx_tuple__68);

  /* "cuda/_cuda/ccuda.pyx":3238
 *     if __cuLibraryLoadData == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuLibraryLoadData" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUlibrary*, const void*, CUjit_option*, void**, unsigned int, CUlibraryOption*, void**, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuLibraryLoadData)(library, code, jitOptions, jitOptionsValues, numJitOptions, libraryOptions, libraryOptionValues, numLibraryOptions)
 *     return err
 */
  __pyx_tuple__69 = PyTuple_Pack(1, __pyx_kp_u_Function_cuLibraryLoadData_not_f); if (unlikely(!__pyx_tuple__69)) __PYX_ERR(0, 3238, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__69);
  __Pyx_GIVEREF(__pyx_tuple__69);

  /* "cuda/_cuda/ccuda.pyx":3247
 *     if __cuLibraryLoadFromFile == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuLibraryLoadFromFile" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUlibrary*, const char*, CUjit_option*, void**, unsigned int, CUlibraryOption*, void**, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuLibraryLoadFromFile)(library, fileName, jitOptions, jitOptionsValues, numJitOptions, libraryOptions, libraryOptionValues, numLibraryOptions)
 *     return err
 */
  __pyx_tuple__70 = PyTuple_Pack(1, __pyx_kp_u_Function_cuLibraryLoadFromFile_n); if (unlikely(!__pyx_tuple__70)) __PYX_ERR(0, 3247, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__70);
  __Pyx_GIVEREF(__pyx_tuple__70);

  /* "cuda/_cuda/ccuda.pyx":3256
 *     if __cuLibraryUnload == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuLibraryUnload" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUlibrary) except ?CUDA_ERROR_NOT_FOUND nogil> __cuLibraryUnload)(library)
 *     return err
 */
  __pyx_tuple__71 = PyTuple_Pack(1, __pyx_kp_u_Function_cuLibraryUnload_not_fou); if (unlikely(!__pyx_tuple__71)) __PYX_ERR(0, 3256, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__71);
  __Pyx_GIVEREF(__pyx_tuple__71);

  /* "cuda/_cuda/ccuda.pyx":3265
 *     if __cuLibraryGetKernel == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuLibraryGetKernel" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUkernel*, CUlibrary, const char*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuLibraryGetKernel)(pKernel, library, name)
 *     return err
 */
  __pyx_tuple__72 = PyTuple_Pack(1, __pyx_kp_u_Function_cuLibraryGetKernel_not); if (unlikely(!__pyx_tuple__72)) __PYX_ERR(0, 3265, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__72);
  __Pyx_GIVEREF(__pyx_tuple__72);

  /* "cuda/_cuda/ccuda.pyx":3274
 *     if __cuLibraryGetKernelCount == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuLibraryGetKernelCount" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(unsigned int*, CUlibrary) except ?CUDA_ERROR_NOT_FOUND nogil> __cuLibraryGetKernelCount)(count, lib)
 *     return err
 */
  __pyx_tuple__73 = PyTuple_Pack(1, __pyx_kp_u_Function_cuLibraryGetKernelCount); if (unlikely(!__pyx_tuple__73)) __PYX_ERR(0, 3274, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__73);
  __Pyx_GIVEREF(__pyx_tuple__73);

  /* "cuda/_cuda/ccuda.pyx":3283
 *     if __cuLibraryEnumerateKernels == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuLibraryEnumerateKernels" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUkernel*, unsigned int, CUlibrary) except ?CUDA_ERROR_NOT_FOUND nogil> __cuLibraryEnumerateKernels)(kernels, numKernels, lib)
 *     return err
 */
  __pyx_tuple__74 = PyTuple_Pack(1, __pyx_kp_u_Function_cuLibraryEnumerateKerne); if (unlikely(!__pyx_tuple__74)) __PYX_ERR(0, 3283, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__74);
  __Pyx_GIVEREF(__pyx_tuple__74);

  /* "cuda/_cuda/ccuda.pyx":3292
 *     if __cuLibraryGetModule == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuLibraryGetModule" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUmodule*, CUlibrary) except ?CUDA_ERROR_NOT_FOUND nogil> __cuLibraryGetModule)(pMod, library)
 *     return err
 */
  __pyx_tuple__75 = PyTuple_Pack(1, __pyx_kp_u_Function_cuLibraryGetModule_not); if (unlikely(!__pyx_tuple__75)) __PYX_ERR(0, 3292, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__75);
  __Pyx_GIVEREF(__pyx_tuple__75);

  /* "cuda/_cuda/ccuda.pyx":3301
 *     if __cuKernelGetFunction == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuKernelGetFunction" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUfunction*, CUkernel) except ?CUDA_ERROR_NOT_FOUND nogil> __cuKernelGetFunction)(pFunc, kernel)
 *     return err
 */
  __pyx_tuple__76 = PyTuple_Pack(1, __pyx_kp_u_Function_cuKernelGetFunction_not); if (unlikely(!__pyx_tuple__76)) __PYX_ERR(0, 3301, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__76);
  __Pyx_GIVEREF(__pyx_tuple__76);

  /* "cuda/_cuda/ccuda.pyx":3310
 *     if __cuLibraryGetGlobal == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuLibraryGetGlobal" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUdeviceptr*, size_t*, CUlibrary, const char*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuLibraryGetGlobal)(dptr, numbytes, library, name)
 *     return err
 */
  __pyx_tuple__77 = PyTuple_Pack(1, __pyx_kp_u_Function_cuLibraryGetGlobal_not); if (unlikely(!__pyx_tuple__77)) __PYX_ERR(0, 3310, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__77);
  __Pyx_GIVEREF(__pyx_tuple__77);

  /* "cuda/_cuda/ccuda.pyx":3319
 *     if __cuLibraryGetManaged == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuLibraryGetManaged" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUdeviceptr*, size_t*, CUlibrary, const char*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuLibraryGetManaged)(dptr, numbytes, library, name)
 *     return err
 */
  __pyx_tuple__78 = PyTuple_Pack(1, __pyx_kp_u_Function_cuLibraryGetManaged_not); if (unlikely(!__pyx_tuple__78)) __PYX_ERR(0, 3319, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__78);
  __Pyx_GIVEREF(__pyx_tuple__78);

  /* "cuda/_cuda/ccuda.pyx":3328
 *     if __cuLibraryGetUnifiedFunction == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuLibraryGetUnifiedFunction" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(void**, CUlibrary, const char*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuLibraryGetUnifiedFunction)(fptr, library, symbol)
 *     return err
 */
  __pyx_tuple__79 = PyTuple_Pack(1, __pyx_kp_u_Function_cuLibraryGetUnifiedFunc); if (unlikely(!__pyx_tuple__79)) __PYX_ERR(0, 3328, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__79);
  __Pyx_GIVEREF(__pyx_tuple__79);

  /* "cuda/_cuda/ccuda.pyx":3337
 *     if __cuKernelGetAttribute == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuKernelGetAttribute" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(int*, CUfunction_attribute, CUkernel, CUdevice) except ?CUDA_ERROR_NOT_FOUND nogil> __cuKernelGetAttribute)(pi, attrib, kernel, dev)
 *     return err
 */
  __pyx_tuple__80 = PyTuple_Pack(1, __pyx_kp_u_Function_cuKernelGetAttribute_no); if (unlikely(!__pyx_tuple__80)) __PYX_ERR(0, 3337, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__80);
  __Pyx_GIVEREF(__pyx_tuple__80);

  /* "cuda/_cuda/ccuda.pyx":3346
 *     if __cuKernelSetAttribute == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuKernelSetAttribute" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUfunction_attribute, int, CUkernel, CUdevice) except ?CUDA_ERROR_NOT_FOUND nogil> __cuKernelSetAttribute)(attrib, val, kernel, dev)
 *     return err
 */
  __pyx_tuple__81 = PyTuple_Pack(1, __pyx_kp_u_Function_cuKernelSetAttribute_no); if (unlikely(!__pyx_tuple__81)) __PYX_ERR(0, 3346, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__81);
  __Pyx_GIVEREF(__pyx_tuple__81);

  /* "cuda/_cuda/ccuda.pyx":3355
 *     if __cuKernelSetCacheConfig == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuKernelSetCacheConfig" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUkernel, CUfunc_cache, CUdevice) except ?CUDA_ERROR_NOT_FOUND nogil> __cuKernelSetCacheConfig)(kernel, config, dev)
 *     return err
 */
  __pyx_tuple__82 = PyTuple_Pack(1, __pyx_kp_u_Function_cuKernelSetCacheConfig); if (unlikely(!__pyx_tuple__82)) __PYX_ERR(0, 3355, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__82);
  __Pyx_GIVEREF(__pyx_tuple__82);

  /* "cuda/_cuda/ccuda.pyx":3364
 *     if __cuKernelGetName == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuKernelGetName" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(const char**, CUkernel) except ?CUDA_ERROR_NOT_FOUND nogil> __cuKernelGetName)(name, hfunc)
 *     return err
 */
  __pyx_tuple__83 = PyTuple_Pack(1, __pyx_kp_u_Function_cuKernelGetName_not_fou); if (unlikely(!__pyx_tuple__83)) __PYX_ERR(0, 3364, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__83);
  __Pyx_GIVEREF(__pyx_tuple__83);

  /* "cuda/_cuda/ccuda.pyx":3373
 *     if __cuKernelGetParamInfo == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuKernelGetParamInfo" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUkernel, size_t, size_t*, size_t*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuKernelGetParamInfo)(kernel, paramIndex, paramOffset, paramSize)
 *     return err
 */
  __pyx_tuple__84 = PyTuple_Pack(1, __pyx_kp_u_Function_cuKernelGetParamInfo_no); if (unlikely(!__pyx_tuple__84)) __PYX_ERR(0, 3373, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__84);
  __Pyx_GIVEREF(__pyx_tuple__84);

  /* "cuda/_cuda/ccuda.pyx":3382
 *     if __cuMemGetInfo_v2 == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuMemGetInfo_v2" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(size_t*, size_t*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemGetInfo_v2)(free, total)
 *     return err
 */
  __pyx_tuple__85 = PyTuple_Pack(1, __pyx_kp_u_Function_cuMemGetInfo_v2_not_fou); if (unlikely(!__pyx_tuple__85)) __PYX_ERR(0, 3382, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__85);
  __Pyx_GIVEREF(__pyx_tuple__85);

  /* "cuda/_cuda/ccuda.pyx":3391
 *     if __cuMemAlloc_v2 == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuMemAlloc_v2" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUdeviceptr*, size_t) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemAlloc_v2)(dptr, bytesize)
 *     return err
 */
  __pyx_tuple__86 = PyTuple_Pack(1, __pyx_kp_u_Function_cuMemAlloc_v2_not_found); if (unlikely(!__pyx_tuple__86)) __PYX_ERR(0, 3391, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__86);
  __Pyx_GIVEREF(__pyx_tuple__86);

  /* "cuda/_cuda/ccuda.pyx":3400
 *     if __cuMemAllocPitch_v2 == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuMemAllocPitch_v2" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUdeviceptr*, size_t*, size_t, size_t, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemAllocPitch_v2)(dptr, pPitch, WidthInBytes, Height, ElementSizeBytes)
 *     return err
 */
  __pyx_tuple__87 = PyTuple_Pack(1, __pyx_kp_u_Function_cuMemAllocPitch_v2_not); if (unlikely(!__pyx_tuple__87)) __PYX_ERR(0, 3400, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__87);
  __Pyx_GIVEREF(__pyx_tuple__87);

  /* "cuda/_cuda/ccuda.pyx":3409
 *     if __cuMemFree_v2 == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuMemFree_v2" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUdeviceptr) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemFree_v2)(dptr)
 *     return err
 */
  __pyx_tuple__88 = PyTuple_Pack(1, __pyx_kp_u_Function_cuMemFree_v2_not_found); if (unlikely(!__pyx_tuple__88)) __PYX_ERR(0, 3409, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__88);
  __Pyx_GIVEREF(__pyx_tuple__88);

  /* "cuda/_cuda/ccuda.pyx":3418
 *     if __cuMemGetAddressRange_v2 == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuMemGetAddressRange_v2" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUdeviceptr*, size_t*, CUdeviceptr) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemGetAddressRange_v2)(pbase, psize, dptr)
 *     return err
 */
  __pyx_tuple__89 = PyTuple_Pack(1, __pyx_kp_u_Function_cuMemGetAddressRange_v2); if (unlikely(!__pyx_tuple__89)) __PYX_ERR(0, 3418, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__89);
  __Pyx_GIVEREF(__pyx_tuple__89);

  /* "cuda/_cuda/ccuda.pyx":3427
 *     if __cuMemAllocHost_v2 == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuMemAllocHost_v2" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(void**, size_t) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemAllocHost_v2)(pp, bytesize)
 *     return err
 */
  __pyx_tuple__90 = PyTuple_Pack(1, __pyx_kp_u_Function_cuMemAllocHost_v2_not_f); if (unlikely(!__pyx_tuple__90)) __PYX_ERR(0, 3427, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__90);
  __Pyx_GIVEREF(__pyx_tuple__90);

  /* "cuda/_cuda/ccuda.pyx":3436
 *     if __cuMemFreeHost == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuMemFreeHost" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(void*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemFreeHost)(p)
 *     return err
 */
  __pyx_tuple__91 = PyTuple_Pack(1, __pyx_kp_u_Function_cuMemFreeHost_not_found); if (unlikely(!__pyx_tuple__91)) __PYX_ERR(0, 3436, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__91);
  __Pyx_GIVEREF(__pyx_tuple__91);

  /* "cuda/_cuda/ccuda.pyx":3445
 *     if __cuMemHostAlloc == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuMemHostAlloc" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(void**, size_t, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemHostAlloc)(pp, bytesize, Flags)
 *     return err
 */
  __pyx_tuple__92 = PyTuple_Pack(1, __pyx_kp_u_Function_cuMemHostAlloc_not_foun); if (unlikely(!__pyx_tuple__92)) __PYX_ERR(0, 3445, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__92);
  __Pyx_GIVEREF(__pyx_tuple__92);

  /* "cuda/_cuda/ccuda.pyx":3454
 *     if __cuMemHostGetDevicePointer_v2 == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuMemHostGetDevicePointer_v2" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUdeviceptr*, void*, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemHostGetDevicePointer_v2)(pdptr, p, Flags)
 *     return err
 */
  __pyx_tuple__93 = PyTuple_Pack(1, __pyx_kp_u_Function_cuMemHostGetDevicePoint); if (unlikely(!__pyx_tuple__93)) __PYX_ERR(0, 3454, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__93);
  __Pyx_GIVEREF(__pyx_tuple__93);

  /* "cuda/_cuda/ccuda.pyx":3463
 *     if __cuMemHostGetFlags == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuMemHostGetFlags" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(unsigned int*, void*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemHostGetFlags)(pFlags, p)
 *     return err
 */
  __pyx_tuple__94 = PyTuple_Pack(1, __pyx_kp_u_Function_cuMemHostGetFlags_not_f); if (unlikely(!__pyx_tuple__94)) __PYX_ERR(0, 3463, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__94);
  __Pyx_GIVEREF(__pyx_tuple__94);

  /* "cuda/_cuda/ccuda.pyx":3472
 *     if __cuMemAllocManaged == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuMemAllocManaged" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUdeviceptr*, size_t, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemAllocManaged)(dptr, bytesize, flags)
 *     return err
 */
  __pyx_tuple__95 = PyTuple_Pack(1, __pyx_kp_u_Function_cuMemAllocManaged_not_f); if (unlikely(!__pyx_tuple__95)) __PYX_ERR(0, 3472, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__95);
  __Pyx_GIVEREF(__pyx_tuple__95);

  /* "cuda/_cuda/ccuda.pyx":3481
 *     if __cuDeviceRegisterAsyncNotification == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuDeviceRegisterAsyncNotification" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUdevice, CUasyncCallback, void*, CUasyncCallbackHandle*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuDeviceRegisterAsyncNotification)(device, callbackFunc, userData, callback)
 *     return err
 */
  __pyx_tuple__96 = PyTuple_Pack(1, __pyx_kp_u_Function_cuDeviceRegisterAsyncNo); if (unlikely(!__pyx_tuple__96)) __PYX_ERR(0, 3481, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__96);
  __Pyx_GIVEREF(__pyx_tuple__96);

  /* "cuda/_cuda/ccuda.pyx":3490
 *     if __cuDeviceUnregisterAsyncNotification == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuDeviceUnregisterAsyncNotification" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUdevice, CUasyncCallbackHandle) except ?CUDA_ERROR_NOT_FOUND nogil> __cuDeviceUnregisterAsyncNotification)(device, callback)
 *     return err
 */
  __pyx_tuple__97 = PyTuple_Pack(1, __pyx_kp_u_Function_cuDeviceUnregisterAsync); if (unlikely(!__pyx_tuple__97)) __PYX_ERR(0, 3490, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__97);
  __Pyx_GIVEREF(__pyx_tuple__97);

  /* "cuda/_cuda/ccuda.pyx":3499
 *     if __cuDeviceGetByPCIBusId == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuDeviceGetByPCIBusId" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUdevice*, const char*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuDeviceGetByPCIBusId)(dev, pciBusId)
 *     return err
 */
  __pyx_tuple__98 = PyTuple_Pack(1, __pyx_kp_u_Function_cuDeviceGetByPCIBusId_n); if (unlikely(!__pyx_tuple__98)) __PYX_ERR(0, 3499, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__98);
  __Pyx_GIVEREF(__pyx_tuple__98);

  /* "cuda/_cuda/ccuda.pyx":3508
 *     if __cuDeviceGetPCIBusId == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuDeviceGetPCIBusId" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(char*, int, CUdevice) except ?CUDA_ERROR_NOT_FOUND nogil> __cuDeviceGetPCIBusId)(pciBusId, length, dev)
 *     return err
 */
  __pyx_tuple__99 = PyTuple_Pack(1, __pyx_kp_u_Function_cuDeviceGetPCIBusId_not); if (unlikely(!__pyx_tuple__99)) __PYX_ERR(0, 3508, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__99);
  __Pyx_GIVEREF(__pyx_tuple__99);

  /* "cuda/_cuda/ccuda.pyx":3517
 *     if __cuIpcGetEventHandle == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuIpcGetEventHandle" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUipcEventHandle*, CUevent) except ?CUDA_ERROR_NOT_FOUND nogil> __cuIpcGetEventHandle)(pHandle, event)
 *     return err
 */
  __pyx_tuple__100 = PyTuple_Pack(1, __pyx_kp_u_Function_cuIpcGetEventHandle_not); if (unlikely(!__pyx_tuple__100)) __PYX_ERR(0, 3517, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__100);
  __Pyx_GIVEREF(__pyx_tuple__100);

  /* "cuda/_cuda/ccuda.pyx":3526
 *     if __cuIpcOpenEventHandle == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuIpcOpenEventHandle" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUevent*, CUipcEventHandle) except ?CUDA_ERROR_NOT_FOUND nogil> __cuIpcOpenEventHandle)(phEvent, handle)
 *     return err
 */
  __pyx_tuple__101 = PyTuple_Pack(1, __pyx_kp_u_Function_cuIpcOpenEventHandle_no); if (unlikely(!__pyx_tuple__101)) __PYX_ERR(0, 3526, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__101);
  __Pyx_GIVEREF(__pyx_tuple__101);

  /* "cuda/_cuda/ccuda.pyx":3535
 *     if __cuIpcGetMemHandle == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuIpcGetMemHandle" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUipcMemHandle*, CUdeviceptr) except ?CUDA_ERROR_NOT_FOUND nogil> __cuIpcGetMemHandle)(pHandle, dptr)
 *     return err
 */
  __pyx_tuple__102 = PyTuple_Pack(1, __pyx_kp_u_Function_cuIpcGetMemHandle_not_f); if (unlikely(!__pyx_tuple__102)) __PYX_ERR(0, 3535, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__102);
  __Pyx_GIVEREF(__pyx_tuple__102);

  /* "cuda/_cuda/ccuda.pyx":3544
 *     if __cuIpcOpenMemHandle_v2 == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuIpcOpenMemHandle_v2" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUdeviceptr*, CUipcMemHandle, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuIpcOpenMemHandle_v2)(pdptr, handle, Flags)
 *     return err
 */
  __pyx_tuple__103 = PyTuple_Pack(1, __pyx_kp_u_Function_cuIpcOpenMemHandle_v2_n); if (unlikely(!__pyx_tuple__103)) __PYX_ERR(0, 3544, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__103);
  __Pyx_GIVEREF(__pyx_tuple__103);

  /* "cuda/_cuda/ccuda.pyx":3553
 *     if __cuIpcCloseMemHandle == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuIpcCloseMemHandle" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUdeviceptr) except ?CUDA_ERROR_NOT_FOUND nogil> __cuIpcCloseMemHandle)(dptr)
 *     return err
 */
  __pyx_tuple__104 = PyTuple_Pack(1, __pyx_kp_u_Function_cuIpcCloseMemHandle_not); if (unlikely(!__pyx_tuple__104)) __PYX_ERR(0, 3553, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__104);
  __Pyx_GIVEREF(__pyx_tuple__104);

  /* "cuda/_cuda/ccuda.pyx":3562
 *     if __cuMemHostRegister_v2 == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuMemHostRegister_v2" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(void*, size_t, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemHostRegister_v2)(p, bytesize, Flags)
 *     return err
 */
  __pyx_tuple__105 = PyTuple_Pack(1, __pyx_kp_u_Function_cuMemHostRegister_v2_no); if (unlikely(!__pyx_tuple__105)) __PYX_ERR(0, 3562, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__105);
  __Pyx_GIVEREF(__pyx_tuple__105);

  /* "cuda/_cuda/ccuda.pyx":3571
 *     if __cuMemHostUnregister == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuMemHostUnregister" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(void*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemHostUnregister)(p)
 *     return err
 */
  __pyx_tuple__106 = PyTuple_Pack(1, __pyx_kp_u_Function_cuMemHostUnregister_not); if (unlikely(!__pyx_tuple__106)) __PYX_ERR(0, 3571, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__106);
  __Pyx_GIVEREF(__pyx_tuple__106);

  /* "cuda/_cuda/ccuda.pyx":3580
 *     if __cuMemcpy == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuMemcpy" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUdeviceptr, CUdeviceptr, size_t) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemcpy)(dst, src, ByteCount)
 *     return err
 */
  __pyx_tuple__107 = PyTuple_Pack(1, __pyx_kp_u_Function_cuMemcpy_not_found); if (unlikely(!__pyx_tuple__107)) __PYX_ERR(0, 3580, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__107);
  __Pyx_GIVEREF(__pyx_tuple__107);

  /* "cuda/_cuda/ccuda.pyx":3589
 *     if __cuMemcpyPeer == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuMemcpyPeer" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUdeviceptr, CUcontext, CUdeviceptr, CUcontext, size_t) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemcpyPeer)(dstDevice, dstContext, srcDevice, srcContext, ByteCount)
 *     return err
 */
  __pyx_tuple__108 = PyTuple_Pack(1, __pyx_kp_u_Function_cuMemcpyPeer_not_found); if (unlikely(!__pyx_tuple__108)) __PYX_ERR(0, 3589, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__108);
  __Pyx_GIVEREF(__pyx_tuple__108);

  /* "cuda/_cuda/ccuda.pyx":3598
 *     if __cuMemcpyHtoD_v2 == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuMemcpyHtoD_v2" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUdeviceptr, const void*, size_t) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemcpyHtoD_v2)(dstDevice, srcHost, ByteCount)
 *     return err
 */
  __pyx_tuple__109 = PyTuple_Pack(1, __pyx_kp_u_Function_cuMemcpyHtoD_v2_not_fou); if (unlikely(!__pyx_tuple__109)) __PYX_ERR(0, 3598, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__109);
  __Pyx_GIVEREF(__pyx_tuple__109);

  /* "cuda/_cuda/ccuda.pyx":3607
 *     if __cuMemcpyDtoH_v2 == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuMemcpyDtoH_v2" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(void*, CUdeviceptr, size_t) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemcpyDtoH_v2)(dstHost, srcDevice, ByteCount)
 *     return err
 */
  __pyx_tuple__110 = PyTuple_Pack(1, __pyx_kp_u_Function_cuMemcpyDtoH_v2_not_fou); if (unlikely(!__pyx_tuple__110)) __PYX_ERR(0, 3607, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__110);
  __Pyx_GIVEREF(__pyx_tuple__110);

  /* "cuda/_cuda/ccuda.pyx":3616
 *     if __cuMemcpyDtoD_v2 == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuMemcpyDtoD_v2" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUdeviceptr, CUdeviceptr, size_t) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemcpyDtoD_v2)(dstDevice, srcDevice, ByteCount)
 *     return err
 */
  __pyx_tuple__111 = PyTuple_Pack(1, __pyx_kp_u_Function_cuMemcpyDtoD_v2_not_fou); if (unlikely(!__pyx_tuple__111)) __PYX_ERR(0, 3616, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__111);
  __Pyx_GIVEREF(__pyx_tuple__111);

  /* "cuda/_cuda/ccuda.pyx":3625
 *     if __cuMemcpyDtoA_v2 == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuMemcpyDtoA_v2" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUarray, size_t, CUdeviceptr, size_t) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemcpyDtoA_v2)(dstArray, dstOffset, srcDevice, ByteCount)
 *     return err
 */
  __pyx_tuple__112 = PyTuple_Pack(1, __pyx_kp_u_Function_cuMemcpyDtoA_v2_not_fou); if (unlikely(!__pyx_tuple__112)) __PYX_ERR(0, 3625, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__112);
  __Pyx_GIVEREF(__pyx_tuple__112);

  /* "cuda/_cuda/ccuda.pyx":3634
 *     if __cuMemcpyAtoD_v2 == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuMemcpyAtoD_v2" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUdeviceptr, CUarray, size_t, size_t) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemcpyAtoD_v2)(dstDevice, srcArray, srcOffset, ByteCount)
 *     return err
 */
  __pyx_tuple__113 = PyTuple_Pack(1, __pyx_kp_u_Function_cuMemcpyAtoD_v2_not_fou); if (unlikely(!__pyx_tuple__113)) __PYX_ERR(0, 3634, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__113);
  __Pyx_GIVEREF(__pyx_tuple__113);

  /* "cuda/_cuda/ccuda.pyx":3643
 *     if __cuMemcpyHtoA_v2 == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuMemcpyHtoA_v2" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUarray, size_t, const void*, size_t) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemcpyHtoA_v2)(dstArray, dstOffset, srcHost, ByteCount)
 *     return err
 */
  __pyx_tuple__114 = PyTuple_Pack(1, __pyx_kp_u_Function_cuMemcpyHtoA_v2_not_fou); if (unlikely(!__pyx_tuple__114)) __PYX_ERR(0, 3643, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__114);
  __Pyx_GIVEREF(__pyx_tuple__114);

  /* "cuda/_cuda/ccuda.pyx":3652
 *     if __cuMemcpyAtoH_v2 == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuMemcpyAtoH_v2" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(void*, CUarray, size_t, size_t) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemcpyAtoH_v2)(dstHost, srcArray, srcOffset, ByteCount)
 *     return err
 */
  __pyx_tuple__115 = PyTuple_Pack(1, __pyx_kp_u_Function_cuMemcpyAtoH_v2_not_fou); if (unlikely(!__pyx_tuple__115)) __PYX_ERR(0, 3652, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__115);
  __Pyx_GIVEREF(__pyx_tuple__115);

  /* "cuda/_cuda/ccuda.pyx":3661
 *     if __cuMemcpyAtoA_v2 == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuMemcpyAtoA_v2" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUarray, size_t, CUarray, size_t, size_t) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemcpyAtoA_v2)(dstArray, dstOffset, srcArray, srcOffset, ByteCount)
 *     return err
 */
  __pyx_tuple__116 = PyTuple_Pack(1, __pyx_kp_u_Function_cuMemcpyAtoA_v2_not_fou); if (unlikely(!__pyx_tuple__116)) __PYX_ERR(0, 3661, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__116);
  __Pyx_GIVEREF(__pyx_tuple__116);

  /* "cuda/_cuda/ccuda.pyx":3670
 *     if __cuMemcpy2D_v2 == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuMemcpy2D_v2" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(const CUDA_MEMCPY2D*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemcpy2D_v2)(pCopy)
 *     return err
 */
  __pyx_tuple__117 = PyTuple_Pack(1, __pyx_kp_u_Function_cuMemcpy2D_v2_not_found); if (unlikely(!__pyx_tuple__117)) __PYX_ERR(0, 3670, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__117);
  __Pyx_GIVEREF(__pyx_tuple__117);

  /* "cuda/_cuda/ccuda.pyx":3679
 *     if __cuMemcpy2DUnaligned_v2 == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuMemcpy2DUnaligned_v2" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(const CUDA_MEMCPY2D*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemcpy2DUnaligned_v2)(pCopy)
 *     return err
 */
  __pyx_tuple__118 = PyTuple_Pack(1, __pyx_kp_u_Function_cuMemcpy2DUnaligned_v2); if (unlikely(!__pyx_tuple__118)) __PYX_ERR(0, 3679, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__118);
  __Pyx_GIVEREF(__pyx_tuple__118);

  /* "cuda/_cuda/ccuda.pyx":3688
 *     if __cuMemcpy3D_v2 == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuMemcpy3D_v2" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(const CUDA_MEMCPY3D*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemcpy3D_v2)(pCopy)
 *     return err
 */
  __pyx_tuple__119 = PyTuple_Pack(1, __pyx_kp_u_Function_cuMemcpy3D_v2_not_found); if (unlikely(!__pyx_tuple__119)) __PYX_ERR(0, 3688, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__119);
  __Pyx_GIVEREF(__pyx_tuple__119);

  /* "cuda/_cuda/ccuda.pyx":3697
 *     if __cuMemcpy3DPeer == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuMemcpy3DPeer" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(const CUDA_MEMCPY3D_PEER*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemcpy3DPeer)(pCopy)
 *     return err
 */
  __pyx_tuple__120 = PyTuple_Pack(1, __pyx_kp_u_Function_cuMemcpy3DPeer_not_foun); if (unlikely(!__pyx_tuple__120)) __PYX_ERR(0, 3697, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__120);
  __Pyx_GIVEREF(__pyx_tuple__120);

  /* "cuda/_cuda/ccuda.pyx":3706
 *     if __cuMemcpyAsync == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuMemcpyAsync" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUdeviceptr, CUdeviceptr, size_t, CUstream) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemcpyAsync)(dst, src, ByteCount, hStream)
 *     return err
 */
  __pyx_tuple__121 = PyTuple_Pack(1, __pyx_kp_u_Function_cuMemcpyAsync_not_found); if (unlikely(!__pyx_tuple__121)) __PYX_ERR(0, 3706, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__121);
  __Pyx_GIVEREF(__pyx_tuple__121);

  /* "cuda/_cuda/ccuda.pyx":3715
 *     if __cuMemcpyPeerAsync == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuMemcpyPeerAsync" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUdeviceptr, CUcontext, CUdeviceptr, CUcontext, size_t, CUstream) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemcpyPeerAsync)(dstDevice, dstContext, srcDevice, srcContext, ByteCount, hStream)
 *     return err
 */
  __pyx_tuple__122 = PyTuple_Pack(1, __pyx_kp_u_Function_cuMemcpyPeerAsync_not_f); if (unlikely(!__pyx_tuple__122)) __PYX_ERR(0, 3715, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__122);
  __Pyx_GIVEREF(__pyx_tuple__122);

  /* "cuda/_cuda/ccuda.pyx":3724
 *     if __cuMemcpyHtoDAsync_v2 == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuMemcpyHtoDAsync_v2" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUdeviceptr, const void*, size_t, CUstream) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemcpyHtoDAsync_v2)(dstDevice, srcHost, ByteCount, hStream)
 *     return err
 */
  __pyx_tuple__123 = PyTuple_Pack(1, __pyx_kp_u_Function_cuMemcpyHtoDAsync_v2_no); if (unlikely(!__pyx_tuple__123)) __PYX_ERR(0, 3724, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__123);
  __Pyx_GIVEREF(__pyx_tuple__123);

  /* "cuda/_cuda/ccuda.pyx":3733
 *     if __cuMemcpyDtoHAsync_v2 == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuMemcpyDtoHAsync_v2" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(void*, CUdeviceptr, size_t, CUstream) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemcpyDtoHAsync_v2)(dstHost, srcDevice, ByteCount, hStream)
 *     return err
 */
  __pyx_tuple__124 = PyTuple_Pack(1, __pyx_kp_u_Function_cuMemcpyDtoHAsync_v2_no); if (unlikely(!__pyx_tuple__124)) __PYX_ERR(0, 3733, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__124);
  __Pyx_GIVEREF(__pyx_tuple__124);

  /* "cuda/_cuda/ccuda.pyx":3742
 *     if __cuMemcpyDtoDAsync_v2 == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuMemcpyDtoDAsync_v2" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUdeviceptr, CUdeviceptr, size_t, CUstream) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemcpyDtoDAsync_v2)(dstDevice, srcDevice, ByteCount, hStream)
 *     return err
 */
  __pyx_tuple__125 = PyTuple_Pack(1, __pyx_kp_u_Function_cuMemcpyDtoDAsync_v2_no); if (unlikely(!__pyx_tuple__125)) __PYX_ERR(0, 3742, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__125);
  __Pyx_GIVEREF(__pyx_tuple__125);

  /* "cuda/_cuda/ccuda.pyx":3751
 *     if __cuMemcpyHtoAAsync_v2 == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuMemcpyHtoAAsync_v2" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUarray, size_t, const void*, size_t, CUstream) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemcpyHtoAAsync_v2)(dstArray, dstOffset, srcHost, ByteCount, hStream)
 *     return err
 */
  __pyx_tuple__126 = PyTuple_Pack(1, __pyx_kp_u_Function_cuMemcpyHtoAAsync_v2_no); if (unlikely(!__pyx_tuple__126)) __PYX_ERR(0, 3751, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__126);
  __Pyx_GIVEREF(__pyx_tuple__126);

  /* "cuda/_cuda/ccuda.pyx":3760
 *     if __cuMemcpyAtoHAsync_v2 == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuMemcpyAtoHAsync_v2" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(void*, CUarray, size_t, size_t, CUstream) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemcpyAtoHAsync_v2)(dstHost, srcArray, srcOffset, ByteCount, hStream)
 *     return err
 */
  __pyx_tuple__127 = PyTuple_Pack(1, __pyx_kp_u_Function_cuMemcpyAtoHAsync_v2_no); if (unlikely(!__pyx_tuple__127)) __PYX_ERR(0, 3760, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__127);
  __Pyx_GIVEREF(__pyx_tuple__127);

  /* "cuda/_cuda/ccuda.pyx":3769
 *     if __cuMemcpy2DAsync_v2 == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuMemcpy2DAsync_v2" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(const CUDA_MEMCPY2D*, CUstream) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemcpy2DAsync_v2)(pCopy, hStream)
 *     return err
 */
  __pyx_tuple__128 = PyTuple_Pack(1, __pyx_kp_u_Function_cuMemcpy2DAsync_v2_not); if (unlikely(!__pyx_tuple__128)) __PYX_ERR(0, 3769, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__128);
  __Pyx_GIVEREF(__pyx_tuple__128);

  /* "cuda/_cuda/ccuda.pyx":3778
 *     if __cuMemcpy3DAsync_v2 == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuMemcpy3DAsync_v2" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(const CUDA_MEMCPY3D*, CUstream) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemcpy3DAsync_v2)(pCopy, hStream)
 *     return err
 */
  __pyx_tuple__129 = PyTuple_Pack(1, __pyx_kp_u_Function_cuMemcpy3DAsync_v2_not); if (unlikely(!__pyx_tuple__129)) __PYX_ERR(0, 3778, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__129);
  __Pyx_GIVEREF(__pyx_tuple__129);

  /* "cuda/_cuda/ccuda.pyx":3787
 *     if __cuMemcpy3DPeerAsync == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuMemcpy3DPeerAsync" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(const CUDA_MEMCPY3D_PEER*, CUstream) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemcpy3DPeerAsync)(pCopy, hStream)
 *     return err
 */
  __pyx_tuple__130 = PyTuple_Pack(1, __pyx_kp_u_Function_cuMemcpy3DPeerAsync_not); if (unlikely(!__pyx_tuple__130)) __PYX_ERR(0, 3787, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__130);
  __Pyx_GIVEREF(__pyx_tuple__130);

  /* "cuda/_cuda/ccuda.pyx":3796
 *     if __cuMemsetD8_v2 == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuMemsetD8_v2" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUdeviceptr, unsigned char, size_t) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemsetD8_v2)(dstDevice, uc, N)
 *     return err
 */
  __pyx_tuple__131 = PyTuple_Pack(1, __pyx_kp_u_Function_cuMemsetD8_v2_not_found); if (unlikely(!__pyx_tuple__131)) __PYX_ERR(0, 3796, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__131);
  __Pyx_GIVEREF(__pyx_tuple__131);

  /* "cuda/_cuda/ccuda.pyx":3805
 *     if __cuMemsetD16_v2 == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuMemsetD16_v2" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUdeviceptr, unsigned short, size_t) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemsetD16_v2)(dstDevice, us, N)
 *     return err
 */
  __pyx_tuple__132 = PyTuple_Pack(1, __pyx_kp_u_Function_cuMemsetD16_v2_not_foun); if (unlikely(!__pyx_tuple__132)) __PYX_ERR(0, 3805, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__132);
  __Pyx_GIVEREF(__pyx_tuple__132);

  /* "cuda/_cuda/ccuda.pyx":3814
 *     if __cuMemsetD32_v2 == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuMemsetD32_v2" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUdeviceptr, unsigned int, size_t) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemsetD32_v2)(dstDevice, ui, N)
 *     return err
 */
  __pyx_tuple__133 = PyTuple_Pack(1, __pyx_kp_u_Function_cuMemsetD32_v2_not_foun); if (unlikely(!__pyx_tuple__133)) __PYX_ERR(0, 3814, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__133);
  __Pyx_GIVEREF(__pyx_tuple__133);

  /* "cuda/_cuda/ccuda.pyx":3823
 *     if __cuMemsetD2D8_v2 == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuMemsetD2D8_v2" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUdeviceptr, size_t, unsigned char, size_t, size_t) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemsetD2D8_v2)(dstDevice, dstPitch, uc, Width, Height)
 *     return err
 */
  __pyx_tuple__134 = PyTuple_Pack(1, __pyx_kp_u_Function_cuMemsetD2D8_v2_not_fou); if (unlikely(!__pyx_tuple__134)) __PYX_ERR(0, 3823, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__134);
  __Pyx_GIVEREF(__pyx_tuple__134);

  /* "cuda/_cuda/ccuda.pyx":3832
 *     if __cuMemsetD2D16_v2 == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuMemsetD2D16_v2" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUdeviceptr, size_t, unsigned short, size_t, size_t) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemsetD2D16_v2)(dstDevice, dstPitch, us, Width, Height)
 *     return err
 */
  __pyx_tuple__135 = PyTuple_Pack(1, __pyx_kp_u_Function_cuMemsetD2D16_v2_not_fo); if (unlikely(!__pyx_tuple__135)) __PYX_ERR(0, 3832, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__135);
  __Pyx_GIVEREF(__pyx_tuple__135);

  /* "cuda/_cuda/ccuda.pyx":3841
 *     if __cuMemsetD2D32_v2 == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuMemsetD2D32_v2" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUdeviceptr, size_t, unsigned int, size_t, size_t) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemsetD2D32_v2)(dstDevice, dstPitch, ui, Width, Height)
 *     return err
 */
  __pyx_tuple__136 = PyTuple_Pack(1, __pyx_kp_u_Function_cuMemsetD2D32_v2_not_fo); if (unlikely(!__pyx_tuple__136)) __PYX_ERR(0, 3841, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__136);
  __Pyx_GIVEREF(__pyx_tuple__136);

  /* "cuda/_cuda/ccuda.pyx":3850
 *     if __cuMemsetD8Async == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuMemsetD8Async" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUdeviceptr, unsigned char, size_t, CUstream) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemsetD8Async)(dstDevice, uc, N, hStream)
 *     return err
 */
  __pyx_tuple__137 = PyTuple_Pack(1, __pyx_kp_u_Function_cuMemsetD8Async_not_fou); if (unlikely(!__pyx_tuple__137)) __PYX_ERR(0, 3850, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__137);
  __Pyx_GIVEREF(__pyx_tuple__137);

  /* "cuda/_cuda/ccuda.pyx":3859
 *     if __cuMemsetD16Async == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuMemsetD16Async" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUdeviceptr, unsigned short, size_t, CUstream) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemsetD16Async)(dstDevice, us, N, hStream)
 *     return err
 */
  __pyx_tuple__138 = PyTuple_Pack(1, __pyx_kp_u_Function_cuMemsetD16Async_not_fo); if (unlikely(!__pyx_tuple__138)) __PYX_ERR(0, 3859, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__138);
  __Pyx_GIVEREF(__pyx_tuple__138);

  /* "cuda/_cuda/ccuda.pyx":3868
 *     if __cuMemsetD32Async == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuMemsetD32Async" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUdeviceptr, unsigned int, size_t, CUstream) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemsetD32Async)(dstDevice, ui, N, hStream)
 *     return err
 */
  __pyx_tuple__139 = PyTuple_Pack(1, __pyx_kp_u_Function_cuMemsetD32Async_not_fo); if (unlikely(!__pyx_tuple__139)) __PYX_ERR(0, 3868, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__139);
  __Pyx_GIVEREF(__pyx_tuple__139);

  /* "cuda/_cuda/ccuda.pyx":3877
 *     if __cuMemsetD2D8Async == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuMemsetD2D8Async" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUdeviceptr, size_t, unsigned char, size_t, size_t, CUstream) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemsetD2D8Async)(dstDevice, dstPitch, uc, Width, Height, hStream)
 *     return err
 */
  __pyx_tuple__140 = PyTuple_Pack(1, __pyx_kp_u_Function_cuMemsetD2D8Async_not_f); if (unlikely(!__pyx_tuple__140)) __PYX_ERR(0, 3877, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__140);
  __Pyx_GIVEREF(__pyx_tuple__140);

  /* "cuda/_cuda/ccuda.pyx":3886
 *     if __cuMemsetD2D16Async == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuMemsetD2D16Async" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUdeviceptr, size_t, unsigned short, size_t, size_t, CUstream) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemsetD2D16Async)(dstDevice, dstPitch, us, Width, Height, hStream)
 *     return err
 */
  __pyx_tuple__141 = PyTuple_Pack(1, __pyx_kp_u_Function_cuMemsetD2D16Async_not); if (unlikely(!__pyx_tuple__141)) __PYX_ERR(0, 3886, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__141);
  __Pyx_GIVEREF(__pyx_tuple__141);

  /* "cuda/_cuda/ccuda.pyx":3895
 *     if __cuMemsetD2D32Async == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuMemsetD2D32Async" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUdeviceptr, size_t, unsigned int, size_t, size_t, CUstream) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemsetD2D32Async)(dstDevice, dstPitch, ui, Width, Height, hStream)
 *     return err
 */
  __pyx_tuple__142 = PyTuple_Pack(1, __pyx_kp_u_Function_cuMemsetD2D32Async_not); if (unlikely(!__pyx_tuple__142)) __PYX_ERR(0, 3895, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__142);
  __Pyx_GIVEREF(__pyx_tuple__142);

  /* "cuda/_cuda/ccuda.pyx":3904
 *     if __cuArrayCreate_v2 == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuArrayCreate_v2" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUarray*, const CUDA_ARRAY_DESCRIPTOR*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuArrayCreate_v2)(pHandle, pAllocateArray)
 *     return err
 */
  __pyx_tuple__143 = PyTuple_Pack(1, __pyx_kp_u_Function_cuArrayCreate_v2_not_fo); if (unlikely(!__pyx_tuple__143)) __PYX_ERR(0, 3904, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__143);
  __Pyx_GIVEREF(__pyx_tuple__143);

  /* "cuda/_cuda/ccuda.pyx":3913
 *     if __cuArrayGetDescriptor_v2 == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuArrayGetDescriptor_v2" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUDA_ARRAY_DESCRIPTOR*, CUarray) except ?CUDA_ERROR_NOT_FOUND nogil> __cuArrayGetDescriptor_v2)(pArrayDescriptor, hArray)
 *     return err
 */
  __pyx_tuple__144 = PyTuple_Pack(1, __pyx_kp_u_Function_cuArrayGetDescriptor_v2); if (unlikely(!__pyx_tuple__144)) __PYX_ERR(0, 3913, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__144);
  __Pyx_GIVEREF(__pyx_tuple__144);

  /* "cuda/_cuda/ccuda.pyx":3922
 *     if __cuArrayGetSparseProperties == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuArrayGetSparseProperties" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUDA_ARRAY_SPARSE_PROPERTIES*, CUarray) except ?CUDA_ERROR_NOT_FOUND nogil> __cuArrayGetSparseProperties)(sparseProperties, array)
 *     return err
 */
  __pyx_tuple__145 = PyTuple_Pack(1, __pyx_kp_u_Function_cuArrayGetSparsePropert); if (unlikely(!__pyx_tuple__145)) __PYX_ERR(0, 3922, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__145);
  __Pyx_GIVEREF(__pyx_tuple__145);

  /* "cuda/_cuda/ccuda.pyx":3931
 *     if __cuMipmappedArrayGetSparseProperties == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuMipmappedArrayGetSparseProperties" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUDA_ARRAY_SPARSE_PROPERTIES*, CUmipmappedArray) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMipmappedArrayGetSparseProperties)(sparseProperties, mipmap)
 *     return err
 */
  __pyx_tuple__146 = PyTuple_Pack(1, __pyx_kp_u_Function_cuMipmappedArrayGetSpar); if (unlikely(!__pyx_tuple__146)) __PYX_ERR(0, 3931, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__146);
  __Pyx_GIVEREF(__pyx_tuple__146);

  /* "cuda/_cuda/ccuda.pyx":3940
 *     if __cuArrayGetMemoryRequirements == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuArrayGetMemoryRequirements" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUDA_ARRAY_MEMORY_REQUIREMENTS*, CUarray, CUdevice) except ?CUDA_ERROR_NOT_FOUND nogil> __cuArrayGetMemoryRequirements)(memoryRequirements, array, device)
 *     return err
 */
  __pyx_tuple__147 = PyTuple_Pack(1, __pyx_kp_u_Function_cuArrayGetMemoryRequire); if (unlikely(!__pyx_tuple__147)) __PYX_ERR(0, 3940, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__147);
  __Pyx_GIVEREF(__pyx_tuple__147);

  /* "cuda/_cuda/ccuda.pyx":3949
 *     if __cuMipmappedArrayGetMemoryRequirements == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuMipmappedArrayGetMemoryRequirements" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUDA_ARRAY_MEMORY_REQUIREMENTS*, CUmipmappedArray, CUdevice) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMipmappedArrayGetMemoryRequirements)(memoryRequirements, mipmap, device)
 *     return err
 */
  __pyx_tuple__148 = PyTuple_Pack(1, __pyx_kp_u_Function_cuMipmappedArrayGetMemo); if (unlikely(!__pyx_tuple__148)) __PYX_ERR(0, 3949, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__148);
  __Pyx_GIVEREF(__pyx_tuple__148);

  /* "cuda/_cuda/ccuda.pyx":3958
 *     if __cuArrayGetPlane == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuArrayGetPlane" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUarray*, CUarray, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuArrayGetPlane)(pPlaneArray, hArray, planeIdx)
 *     return err
 */
  __pyx_tuple__149 = PyTuple_Pack(1, __pyx_kp_u_Function_cuArrayGetPlane_not_fou); if (unlikely(!__pyx_tuple__149)) __PYX_ERR(0, 3958, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__149);
  __Pyx_GIVEREF(__pyx_tuple__149);

  /* "cuda/_cuda/ccuda.pyx":3967
 *     if __cuArrayDestroy == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuArrayDestroy" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUarray) except ?CUDA_ERROR_NOT_FOUND nogil> __cuArrayDestroy)(hArray)
 *     return err
 */
  __pyx_tuple__150 = PyTuple_Pack(1, __pyx_kp_u_Function_cuArrayDestroy_not_foun); if (unlikely(!__pyx_tuple__150)) __PYX_ERR(0, 3967, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__150);
  __Pyx_GIVEREF(__pyx_tuple__150);

  /* "cuda/_cuda/ccuda.pyx":3976
 *     if __cuArray3DCreate_v2 == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuArray3DCreate_v2" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUarray*, const CUDA_ARRAY3D_DESCRIPTOR*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuArray3DCreate_v2)(pHandle, pAllocateArray)
 *     return err
 */
  __pyx_tuple__151 = PyTuple_Pack(1, __pyx_kp_u_Function_cuArray3DCreate_v2_not); if (unlikely(!__pyx_tuple__151)) __PYX_ERR(0, 3976, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__151);
  __Pyx_GIVEREF(__pyx_tuple__151);

  /* "cuda/_cuda/ccuda.pyx":3985
 *     if __cuArray3DGetDescriptor_v2 == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuArray3DGetDescriptor_v2" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUDA_ARRAY3D_DESCRIPTOR*, CUarray) except ?CUDA_ERROR_NOT_FOUND nogil> __cuArray3DGetDescriptor_v2)(pArrayDescriptor, hArray)
 *     return err
 */
  __pyx_tuple__152 = PyTuple_Pack(1, __pyx_kp_u_Function_cuArray3DGetDescriptor); if (unlikely(!__pyx_tuple__152)) __PYX_ERR(0, 3985, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__152);
  __Pyx_GIVEREF(__pyx_tuple__152);

  /* "cuda/_cuda/ccuda.pyx":3994
 *     if __cuMipmappedArrayCreate == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuMipmappedArrayCreate" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUmipmappedArray*, const CUDA_ARRAY3D_DESCRIPTOR*, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMipmappedArrayCreate)(pHandle, pMipmappedArrayDesc, numMipmapLevels)
 *     return err
 */
  __pyx_tuple__153 = PyTuple_Pack(1, __pyx_kp_u_Function_cuMipmappedArrayCreate); if (unlikely(!__pyx_tuple__153)) __PYX_ERR(0, 3994, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__153);
  __Pyx_GIVEREF(__pyx_tuple__153);

  /* "cuda/_cuda/ccuda.pyx":4003
 *     if __cuMipmappedArrayGetLevel == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuMipmappedArrayGetLevel" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUarray*, CUmipmappedArray, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMipmappedArrayGetLevel)(pLevelArray, hMipmappedArray, level)
 *     return err
 */
  __pyx_tuple__154 = PyTuple_Pack(1, __pyx_kp_u_Function_cuMipmappedArrayGetLeve); if (unlikely(!__pyx_tuple__154)) __PYX_ERR(0, 4003, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__154);
  __Pyx_GIVEREF(__pyx_tuple__154);

  /* "cuda/_cuda/ccuda.pyx":4012
 *     if __cuMipmappedArrayDestroy == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuMipmappedArrayDestroy" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUmipmappedArray) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMipmappedArrayDestroy)(hMipmappedArray)
 *     return err
 */
  __pyx_tuple__155 = PyTuple_Pack(1, __pyx_kp_u_Function_cuMipmappedArrayDestroy); if (unlikely(!__pyx_tuple__155)) __PYX_ERR(0, 4012, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__155);
  __Pyx_GIVEREF(__pyx_tuple__155);

  /* "cuda/_cuda/ccuda.pyx":4021
 *     if __cuMemGetHandleForAddressRange == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuMemGetHandleForAddressRange" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(void*, CUdeviceptr, size_t, CUmemRangeHandleType, unsigned long long) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemGetHandleForAddressRange)(handle, dptr, size, handleType, flags)
 *     return err
 */
  __pyx_tuple__156 = PyTuple_Pack(1, __pyx_kp_u_Function_cuMemGetHandleForAddres); if (unlikely(!__pyx_tuple__156)) __PYX_ERR(0, 4021, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__156);
  __Pyx_GIVEREF(__pyx_tuple__156);

  /* "cuda/_cuda/ccuda.pyx":4030
 *     if __cuMemAddressReserve == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuMemAddressReserve" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUdeviceptr*, size_t, size_t, CUdeviceptr, unsigned long long) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemAddressReserve)(ptr, size, alignment, addr, flags)
 *     return err
 */
  __pyx_tuple__157 = PyTuple_Pack(1, __pyx_kp_u_Function_cuMemAddressReserve_not); if (unlikely(!__pyx_tuple__157)) __PYX_ERR(0, 4030, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__157);
  __Pyx_GIVEREF(__pyx_tuple__157);

  /* "cuda/_cuda/ccuda.pyx":4039
 *     if __cuMemAddressFree == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuMemAddressFree" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUdeviceptr, size_t) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemAddressFree)(ptr, size)
 *     return err
 */
  __pyx_tuple__158 = PyTuple_Pack(1, __pyx_kp_u_Function_cuMemAddressFree_not_fo); if (unlikely(!__pyx_tuple__158)) __PYX_ERR(0, 4039, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__158);
  __Pyx_GIVEREF(__pyx_tuple__158);

  /* "cuda/_cuda/ccuda.pyx":4048
 *     if __cuMemCreate == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuMemCreate" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUmemGenericAllocationHandle*, size_t, const CUmemAllocationProp*, unsigned long long) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemCreate)(handle, size, prop, flags)
 *     return err
 */
  __pyx_tuple__159 = PyTuple_Pack(1, __pyx_kp_u_Function_cuMemCreate_not_found); if (unlikely(!__pyx_tuple__159)) __PYX_ERR(0, 4048, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__159);
  __Pyx_GIVEREF(__pyx_tuple__159);

  /* "cuda/_cuda/ccuda.pyx":4057
 *     if __cuMemRelease == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuMemRelease" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUmemGenericAllocationHandle) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemRelease)(handle)
 *     return err
 */
  __pyx_tuple__160 = PyTuple_Pack(1, __pyx_kp_u_Function_cuMemRelease_not_found); if (unlikely(!__pyx_tuple__160)) __PYX_ERR(0, 4057, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__160);
  __Pyx_GIVEREF(__pyx_tuple__160);

  /* "cuda/_cuda/ccuda.pyx":4066
 *     if __cuMemMap == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuMemMap" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUdeviceptr, size_t, size_t, CUmemGenericAllocationHandle, unsigned long long) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemMap)(ptr, size, offset, handle, flags)
 *     return err
 */
  __pyx_tuple__161 = PyTuple_Pack(1, __pyx_kp_u_Function_cuMemMap_not_found); if (unlikely(!__pyx_tuple__161)) __PYX_ERR(0, 4066, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__161);
  __Pyx_GIVEREF(__pyx_tuple__161);

  /* "cuda/_cuda/ccuda.pyx":4075
 *     if __cuMemMapArrayAsync == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuMemMapArrayAsync" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUarrayMapInfo*, unsigned int, CUstream) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemMapArrayAsync)(mapInfoList, count, hStream)
 *     return err
 */
  __pyx_tuple__162 = PyTuple_Pack(1, __pyx_kp_u_Function_cuMemMapArrayAsync_not); if (unlikely(!__pyx_tuple__162)) __PYX_ERR(0, 4075, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__162);
  __Pyx_GIVEREF(__pyx_tuple__162);

  /* "cuda/_cuda/ccuda.pyx":4084
 *     if __cuMemUnmap == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuMemUnmap" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUdeviceptr, size_t) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemUnmap)(ptr, size)
 *     return err
 */
  __pyx_tuple__163 = PyTuple_Pack(1, __pyx_kp_u_Function_cuMemUnmap_not_found); if (unlikely(!__pyx_tuple__163)) __PYX_ERR(0, 4084, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__163);
  __Pyx_GIVEREF(__pyx_tuple__163);

  /* "cuda/_cuda/ccuda.pyx":4093
 *     if __cuMemSetAccess == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuMemSetAccess" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUdeviceptr, size_t, const CUmemAccessDesc*, size_t) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemSetAccess)(ptr, size, desc, count)
 *     return err
 */
  __pyx_tuple__164 = PyTuple_Pack(1, __pyx_kp_u_Function_cuMemSetAccess_not_foun); if (unlikely(!__pyx_tuple__164)) __PYX_ERR(0, 4093, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__164);
  __Pyx_GIVEREF(__pyx_tuple__164);

  /* "cuda/_cuda/ccuda.pyx":4102
 *     if __cuMemGetAccess == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuMemGetAccess" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(unsigned long long*, const CUmemLocation*, CUdeviceptr) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemGetAccess)(flags, location, ptr)
 *     return err
 */
  __pyx_tuple__165 = PyTuple_Pack(1, __pyx_kp_u_Function_cuMemGetAccess_not_foun); if (unlikely(!__pyx_tuple__165)) __PYX_ERR(0, 4102, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__165);
  __Pyx_GIVEREF(__pyx_tuple__165);

  /* "cuda/_cuda/ccuda.pyx":4111
 *     if __cuMemExportToShareableHandle == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuMemExportToShareableHandle" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(void*, CUmemGenericAllocationHandle, CUmemAllocationHandleType, unsigned long long) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemExportToShareableHandle)(shareableHandle, handle, handleType, flags)
 *     return err
 */
  __pyx_tuple__166 = PyTuple_Pack(1, __pyx_kp_u_Function_cuMemExportToShareableH); if (unlikely(!__pyx_tuple__166)) __PYX_ERR(0, 4111, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__166);
  __Pyx_GIVEREF(__pyx_tuple__166);

  /* "cuda/_cuda/ccuda.pyx":4120
 *     if __cuMemImportFromShareableHandle == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuMemImportFromShareableHandle" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUmemGenericAllocationHandle*, void*, CUmemAllocationHandleType) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemImportFromShareableHandle)(handle, osHandle, shHandleType)
 *     return err
 */
  __pyx_tuple__167 = PyTuple_Pack(1, __pyx_kp_u_Function_cuMemImportFromShareabl); if (unlikely(!__pyx_tuple__167)) __PYX_ERR(0, 4120, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__167);
  __Pyx_GIVEREF(__pyx_tuple__167);

  /* "cuda/_cuda/ccuda.pyx":4129
 *     if __cuMemGetAllocationGranularity == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuMemGetAllocationGranularity" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(size_t*, const CUmemAllocationProp*, CUmemAllocationGranularity_flags) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemGetAllocationGranularity)(granularity, prop, option)
 *     return err
 */
  __pyx_tuple__168 = PyTuple_Pack(1, __pyx_kp_u_Function_cuMemGetAllocationGranu); if (unlikely(!__pyx_tuple__168)) __PYX_ERR(0, 4129, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__168);
  __Pyx_GIVEREF(__pyx_tuple__168);

  /* "cuda/_cuda/ccuda.pyx":4138
 *     if __cuMemGetAllocationPropertiesFromHandle == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuMemGetAllocationPropertiesFromHandle" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUmemAllocationProp*, CUmemGenericAllocationHandle) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemGetAllocationPropertiesFromHandle)(prop, handle)
 *     return err
 */
  __pyx_tuple__169 = PyTuple_Pack(1, __pyx_kp_u_Function_cuMemGetAllocationPrope); if (unlikely(!__pyx_tuple__169)) __PYX_ERR(0, 4138, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__169);
  __Pyx_GIVEREF(__pyx_tuple__169);

  /* "cuda/_cuda/ccuda.pyx":4147
 *     if __cuMemRetainAllocationHandle == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuMemRetainAllocationHandle" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUmemGenericAllocationHandle*, void*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemRetainAllocationHandle)(handle, addr)
 *     return err
 */
  __pyx_tuple__170 = PyTuple_Pack(1, __pyx_kp_u_Function_cuMemRetainAllocationHa); if (unlikely(!__pyx_tuple__170)) __PYX_ERR(0, 4147, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__170);
  __Pyx_GIVEREF(__pyx_tuple__170);

  /* "cuda/_cuda/ccuda.pyx":4156
 *     if __cuMemFreeAsync == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuMemFreeAsync" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUdeviceptr, CUstream) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemFreeAsync)(dptr, hStream)
 *     return err
 */
  __pyx_tuple__171 = PyTuple_Pack(1, __pyx_kp_u_Function_cuMemFreeAsync_not_foun); if (unlikely(!__pyx_tuple__171)) __PYX_ERR(0, 4156, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__171);
  __Pyx_GIVEREF(__pyx_tuple__171);

  /* "cuda/_cuda/ccuda.pyx":4165
 *     if __cuMemAllocAsync == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuMemAllocAsync" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUdeviceptr*, size_t, CUstream) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemAllocAsync)(dptr, bytesize, hStream)
 *     return err
 */
  __pyx_tuple__172 = PyTuple_Pack(1, __pyx_kp_u_Function_cuMemAllocAsync_not_fou); if (unlikely(!__pyx_tuple__172)) __PYX_ERR(0, 4165, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__172);
  __Pyx_GIVEREF(__pyx_tuple__172);

  /* "cuda/_cuda/ccuda.pyx":4174
 *     if __cuMemPoolTrimTo == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuMemPoolTrimTo" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUmemoryPool, size_t) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemPoolTrimTo)(pool, minBytesToKeep)
 *     return err
 */
  __pyx_tuple__173 = PyTuple_Pack(1, __pyx_kp_u_Function_cuMemPoolTrimTo_not_fou); if (unlikely(!__pyx_tuple__173)) __PYX_ERR(0, 4174, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__173);
  __Pyx_GIVEREF(__pyx_tuple__173);

  /* "cuda/_cuda/ccuda.pyx":4183
 *     if __cuMemPoolSetAttribute == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuMemPoolSetAttribute" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUmemoryPool, CUmemPool_attribute, void*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemPoolSetAttribute)(pool, attr, value)
 *     return err
 */
  __pyx_tuple__174 = PyTuple_Pack(1, __pyx_kp_u_Function_cuMemPoolSetAttribute_n); if (unlikely(!__pyx_tuple__174)) __PYX_ERR(0, 4183, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__174);
  __Pyx_GIVEREF(__pyx_tuple__174);

  /* "cuda/_cuda/ccuda.pyx":4192
 *     if __cuMemPoolGetAttribute == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuMemPoolGetAttribute" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUmemoryPool, CUmemPool_attribute, void*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemPoolGetAttribute)(pool, attr, value)
 *     return err
 */
  __pyx_tuple__175 = PyTuple_Pack(1, __pyx_kp_u_Function_cuMemPoolGetAttribute_n); if (unlikely(!__pyx_tuple__175)) __PYX_ERR(0, 4192, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__175);
  __Pyx_GIVEREF(__pyx_tuple__175);

  /* "cuda/_cuda/ccuda.pyx":4201
 *     if __cuMemPoolSetAccess == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuMemPoolSetAccess" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUmemoryPool, const CUmemAccessDesc*, size_t) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemPoolSetAccess)(pool, map, count)
 *     return err
 */
  __pyx_tuple__176 = PyTuple_Pack(1, __pyx_kp_u_Function_cuMemPoolSetAccess_not); if (unlikely(!__pyx_tuple__176)) __PYX_ERR(0, 4201, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__176);
  __Pyx_GIVEREF(__pyx_tuple__176);

  /* "cuda/_cuda/ccuda.pyx":4210
 *     if __cuMemPoolGetAccess == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuMemPoolGetAccess" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUmemAccess_flags*, CUmemoryPool, CUmemLocation*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemPoolGetAccess)(flags, memPool, location)
 *     return err
 */
  __pyx_tuple__177 = PyTuple_Pack(1, __pyx_kp_u_Function_cuMemPoolGetAccess_not); if (unlikely(!__pyx_tuple__177)) __PYX_ERR(0, 4210, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__177);
  __Pyx_GIVEREF(__pyx_tuple__177);

  /* "cuda/_cuda/ccuda.pyx":4219
 *     if __cuMemPoolCreate == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuMemPoolCreate" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUmemoryPool*, const CUmemPoolProps*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemPoolCreate)(pool, poolProps)
 *     return err
 */
  __pyx_tuple__178 = PyTuple_Pack(1, __pyx_kp_u_Function_cuMemPoolCreate_not_fou); if (unlikely(!__pyx_tuple__178)) __PYX_ERR(0, 4219, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__178);
  __Pyx_GIVEREF(__pyx_tuple__178);

  /* "cuda/_cuda/ccuda.pyx":4228
 *     if __cuMemPoolDestroy == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuMemPoolDestroy" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUmemoryPool) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemPoolDestroy)(pool)
 *     return err
 */
  __pyx_tuple__179 = PyTuple_Pack(1, __pyx_kp_u_Function_cuMemPoolDestroy_not_fo); if (unlikely(!__pyx_tuple__179)) __PYX_ERR(0, 4228, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__179);
  __Pyx_GIVEREF(__pyx_tuple__179);

  /* "cuda/_cuda/ccuda.pyx":4237
 *     if __cuMemAllocFromPoolAsync == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuMemAllocFromPoolAsync" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUdeviceptr*, size_t, CUmemoryPool, CUstream) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemAllocFromPoolAsync)(dptr, bytesize, pool, hStream)
 *     return err
 */
  __pyx_tuple__180 = PyTuple_Pack(1, __pyx_kp_u_Function_cuMemAllocFromPoolAsync); if (unlikely(!__pyx_tuple__180)) __PYX_ERR(0, 4237, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__180);
  __Pyx_GIVEREF(__pyx_tuple__180);

  /* "cuda/_cuda/ccuda.pyx":4246
 *     if __cuMemPoolExportToShareableHandle == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuMemPoolExportToShareableHandle" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(void*, CUmemoryPool, CUmemAllocationHandleType, unsigned long long) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemPoolExportToShareableHandle)(handle_out, pool, handleType, flags)
 *     return err
 */
  __pyx_tuple__181 = PyTuple_Pack(1, __pyx_kp_u_Function_cuMemPoolExportToSharea); if (unlikely(!__pyx_tuple__181)) __PYX_ERR(0, 4246, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__181);
  __Pyx_GIVEREF(__pyx_tuple__181);

  /* "cuda/_cuda/ccuda.pyx":4255
 *     if __cuMemPoolImportFromShareableHandle == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuMemPoolImportFromShareableHandle" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUmemoryPool*, void*, CUmemAllocationHandleType, unsigned long long) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemPoolImportFromShareableHandle)(pool_out, handle, handleType, flags)
 *     return err
 */
  __pyx_tuple__182 = PyTuple_Pack(1, __pyx_kp_u_Function_cuMemPoolImportFromShar); if (unlikely(!__pyx_tuple__182)) __PYX_ERR(0, 4255, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__182);
  __Pyx_GIVEREF(__pyx_tuple__182);

  /* "cuda/_cuda/ccuda.pyx":4264
 *     if __cuMemPoolExportPointer == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuMemPoolExportPointer" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUmemPoolPtrExportData*, CUdeviceptr) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemPoolExportPointer)(shareData_out, ptr)
 *     return err
 */
  __pyx_tuple__183 = PyTuple_Pack(1, __pyx_kp_u_Function_cuMemPoolExportPointer); if (unlikely(!__pyx_tuple__183)) __PYX_ERR(0, 4264, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__183);
  __Pyx_GIVEREF(__pyx_tuple__183);

  /* "cuda/_cuda/ccuda.pyx":4273
 *     if __cuMemPoolImportPointer == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuMemPoolImportPointer" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUdeviceptr*, CUmemoryPool, CUmemPoolPtrExportData*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemPoolImportPointer)(ptr_out, pool, shareData)
 *     return err
 */
  __pyx_tuple__184 = PyTuple_Pack(1, __pyx_kp_u_Function_cuMemPoolImportPointer); if (unlikely(!__pyx_tuple__184)) __PYX_ERR(0, 4273, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__184);
  __Pyx_GIVEREF(__pyx_tuple__184);

  /* "cuda/_cuda/ccuda.pyx":4282
 *     if __cuMulticastCreate == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuMulticastCreate" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUmemGenericAllocationHandle*, const CUmulticastObjectProp*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMulticastCreate)(mcHandle, prop)
 *     return err
 */
  __pyx_tuple__185 = PyTuple_Pack(1, __pyx_kp_u_Function_cuMulticastCreate_not_f); if (unlikely(!__pyx_tuple__185)) __PYX_ERR(0, 4282, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__185);
  __Pyx_GIVEREF(__pyx_tuple__185);

  /* "cuda/_cuda/ccuda.pyx":4291
 *     if __cuMulticastAddDevice == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuMulticastAddDevice" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUmemGenericAllocationHandle, CUdevice) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMulticastAddDevice)(mcHandle, dev)
 *     return err
 */
  __pyx_tuple__186 = PyTuple_Pack(1, __pyx_kp_u_Function_cuMulticastAddDevice_no); if (unlikely(!__pyx_tuple__186)) __PYX_ERR(0, 4291, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__186);
  __Pyx_GIVEREF(__pyx_tuple__186);

  /* "cuda/_cuda/ccuda.pyx":4300
 *     if __cuMulticastBindMem == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuMulticastBindMem" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUmemGenericAllocationHandle, size_t, CUmemGenericAllocationHandle, size_t, size_t, unsigned long long) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMulticastBindMem)(mcHandle, mcOffset, memHandle, memOffset, size, flags)
 *     return err
 */
  __pyx_tuple__187 = PyTuple_Pack(1, __pyx_kp_u_Function_cuMulticastBindMem_not); if (unlikely(!__pyx_tuple__187)) __PYX_ERR(0, 4300, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__187);
  __Pyx_GIVEREF(__pyx_tuple__187);

  /* "cuda/_cuda/ccuda.pyx":4309
 *     if __cuMulticastBindAddr == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuMulticastBindAddr" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUmemGenericAllocationHandle, size_t, CUdeviceptr, size_t, unsigned long long) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMulticastBindAddr)(mcHandle, mcOffset, memptr, size, flags)
 *     return err
 */
  __pyx_tuple__188 = PyTuple_Pack(1, __pyx_kp_u_Function_cuMulticastBindAddr_not); if (unlikely(!__pyx_tuple__188)) __PYX_ERR(0, 4309, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__188);
  __Pyx_GIVEREF(__pyx_tuple__188);

  /* "cuda/_cuda/ccuda.pyx":4318
 *     if __cuMulticastUnbind == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuMulticastUnbind" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUmemGenericAllocationHandle, CUdevice, size_t, size_t) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMulticastUnbind)(mcHandle, dev, mcOffset, size)
 *     return err
 */
  __pyx_tuple__189 = PyTuple_Pack(1, __pyx_kp_u_Function_cuMulticastUnbind_not_f); if (unlikely(!__pyx_tuple__189)) __PYX_ERR(0, 4318, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__189);
  __Pyx_GIVEREF(__pyx_tuple__189);

  /* "cuda/_cuda/ccuda.pyx":4327
 *     if __cuMulticastGetGranularity == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuMulticastGetGranularity" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(size_t*, const CUmulticastObjectProp*, CUmulticastGranularity_flags) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMulticastGetGranularity)(granularity, prop, option)
 *     return err
 */
  __pyx_tuple__190 = PyTuple_Pack(1, __pyx_kp_u_Function_cuMulticastGetGranulari); if (unlikely(!__pyx_tuple__190)) __PYX_ERR(0, 4327, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__190);
  __Pyx_GIVEREF(__pyx_tuple__190);

  /* "cuda/_cuda/ccuda.pyx":4336
 *     if __cuPointerGetAttribute == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuPointerGetAttribute" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(void*, CUpointer_attribute, CUdeviceptr) except ?CUDA_ERROR_NOT_FOUND nogil> __cuPointerGetAttribute)(data, attribute, ptr)
 *     return err
 */
  __pyx_tuple__191 = PyTuple_Pack(1, __pyx_kp_u_Function_cuPointerGetAttribute_n); if (unlikely(!__pyx_tuple__191)) __PYX_ERR(0, 4336, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__191);
  __Pyx_GIVEREF(__pyx_tuple__191);

  /* "cuda/_cuda/ccuda.pyx":4345
 *     if __cuMemPrefetchAsync == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuMemPrefetchAsync" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUdeviceptr, size_t, CUdevice, CUstream) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemPrefetchAsync)(devPtr, count, dstDevice, hStream)
 *     return err
 */
  __pyx_tuple__192 = PyTuple_Pack(1, __pyx_kp_u_Function_cuMemPrefetchAsync_not); if (unlikely(!__pyx_tuple__192)) __PYX_ERR(0, 4345, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__192);
  __Pyx_GIVEREF(__pyx_tuple__192);

  /* "cuda/_cuda/ccuda.pyx":4354
 *     if __cuMemPrefetchAsync_v2 == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuMemPrefetchAsync_v2" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUdeviceptr, size_t, CUmemLocation, unsigned int, CUstream) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemPrefetchAsync_v2)(devPtr, count, location, flags, hStream)
 *     return err
 */
  __pyx_tuple__193 = PyTuple_Pack(1, __pyx_kp_u_Function_cuMemPrefetchAsync_v2_n); if (unlikely(!__pyx_tuple__193)) __PYX_ERR(0, 4354, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__193);
  __Pyx_GIVEREF(__pyx_tuple__193);

  /* "cuda/_cuda/ccuda.pyx":4363
 *     if __cuMemAdvise == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuMemAdvise" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUdeviceptr, size_t, CUmem_advise, CUdevice) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemAdvise)(devPtr, count, advice, device)
 *     return err
 */
  __pyx_tuple__194 = PyTuple_Pack(1, __pyx_kp_u_Function_cuMemAdvise_not_found); if (unlikely(!__pyx_tuple__194)) __PYX_ERR(0, 4363, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__194);
  __Pyx_GIVEREF(__pyx_tuple__194);

  /* "cuda/_cuda/ccuda.pyx":4372
 *     if __cuMemAdvise_v2 == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuMemAdvise_v2" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUdeviceptr, size_t, CUmem_advise, CUmemLocation) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemAdvise_v2)(devPtr, count, advice, location)
 *     return err
 */
  __pyx_tuple__195 = PyTuple_Pack(1, __pyx_kp_u_Function_cuMemAdvise_v2_not_foun); if (unlikely(!__pyx_tuple__195)) __PYX_ERR(0, 4372, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__195);
  __Pyx_GIVEREF(__pyx_tuple__195);

  /* "cuda/_cuda/ccuda.pyx":4381
 *     if __cuMemRangeGetAttribute == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuMemRangeGetAttribute" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(void*, size_t, CUmem_range_attribute, CUdeviceptr, size_t) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemRangeGetAttribute)(data, dataSize, attribute, devPtr, count)
 *     return err
 */
  __pyx_tuple__196 = PyTuple_Pack(1, __pyx_kp_u_Function_cuMemRangeGetAttribute); if (unlikely(!__pyx_tuple__196)) __PYX_ERR(0, 4381, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__196);
  __Pyx_GIVEREF(__pyx_tuple__196);

  /* "cuda/_cuda/ccuda.pyx":4390
 *     if __cuMemRangeGetAttributes == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuMemRangeGetAttributes" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(void**, size_t*, CUmem_range_attribute*, size_t, CUdeviceptr, size_t) except ?CUDA_ERROR_NOT_FOUND nogil> __cuMemRangeGetAttributes)(data, dataSizes, attributes, numAttributes, devPtr, count)
 *     return err
 */
  __pyx_tuple__197 = PyTuple_Pack(1, __pyx_kp_u_Function_cuMemRangeGetAttributes); if (unlikely(!__pyx_tuple__197)) __PYX_ERR(0, 4390, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__197);
  __Pyx_GIVEREF(__pyx_tuple__197);

  /* "cuda/_cuda/ccuda.pyx":4399
 *     if __cuPointerSetAttribute == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuPointerSetAttribute" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(const void*, CUpointer_attribute, CUdeviceptr) except ?CUDA_ERROR_NOT_FOUND nogil> __cuPointerSetAttribute)(value, attribute, ptr)
 *     return err
 */
  __pyx_tuple__198 = PyTuple_Pack(1, __pyx_kp_u_Function_cuPointerSetAttribute_n); if (unlikely(!__pyx_tuple__198)) __PYX_ERR(0, 4399, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__198);
  __Pyx_GIVEREF(__pyx_tuple__198);

  /* "cuda/_cuda/ccuda.pyx":4408
 *     if __cuPointerGetAttributes == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuPointerGetAttributes" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(unsigned int, CUpointer_attribute*, void**, CUdeviceptr) except ?CUDA_ERROR_NOT_FOUND nogil> __cuPointerGetAttributes)(numAttributes, attributes, data, ptr)
 *     return err
 */
  __pyx_tuple__199 = PyTuple_Pack(1, __pyx_kp_u_Function_cuPointerGetAttributes); if (unlikely(!__pyx_tuple__199)) __PYX_ERR(0, 4408, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__199);
  __Pyx_GIVEREF(__pyx_tuple__199);

  /* "cuda/_cuda/ccuda.pyx":4417
 *     if __cuStreamCreate == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuStreamCreate" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUstream*, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuStreamCreate)(phStream, Flags)
 *     return err
 */
  __pyx_tuple__200 = PyTuple_Pack(1, __pyx_kp_u_Function_cuStreamCreate_not_foun); if (unlikely(!__pyx_tuple__200)) __PYX_ERR(0, 4417, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__200);
  __Pyx_GIVEREF(__pyx_tuple__200);

  /* "cuda/_cuda/ccuda.pyx":4426
 *     if __cuStreamCreateWithPriority == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuStreamCreateWithPriority" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUstream*, unsigned int, int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuStreamCreateWithPriority)(phStream, flags, priority)
 *     return err
 */
  __pyx_tuple__201 = PyTuple_Pack(1, __pyx_kp_u_Function_cuStreamCreateWithPrior); if (unlikely(!__pyx_tuple__201)) __PYX_ERR(0, 4426, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__201);
  __Pyx_GIVEREF(__pyx_tuple__201);

  /* "cuda/_cuda/ccuda.pyx":4435
 *     if __cuStreamGetPriority == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuStreamGetPriority" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUstream, int*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuStreamGetPriority)(hStream, priority)
 *     return err
 */
  __pyx_tuple__202 = PyTuple_Pack(1, __pyx_kp_u_Function_cuStreamGetPriority_not); if (unlikely(!__pyx_tuple__202)) __PYX_ERR(0, 4435, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__202);
  __Pyx_GIVEREF(__pyx_tuple__202);

  /* "cuda/_cuda/ccuda.pyx":4444
 *     if __cuStreamGetFlags == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuStreamGetFlags" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUstream, unsigned int*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuStreamGetFlags)(hStream, flags)
 *     return err
 */
  __pyx_tuple__203 = PyTuple_Pack(1, __pyx_kp_u_Function_cuStreamGetFlags_not_fo); if (unlikely(!__pyx_tuple__203)) __PYX_ERR(0, 4444, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__203);
  __Pyx_GIVEREF(__pyx_tuple__203);

  /* "cuda/_cuda/ccuda.pyx":4453
 *     if __cuStreamGetId == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuStreamGetId" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUstream, unsigned long long*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuStreamGetId)(hStream, streamId)
 *     return err
 */
  __pyx_tuple__204 = PyTuple_Pack(1, __pyx_kp_u_Function_cuStreamGetId_not_found); if (unlikely(!__pyx_tuple__204)) __PYX_ERR(0, 4453, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__204);
  __Pyx_GIVEREF(__pyx_tuple__204);

  /* "cuda/_cuda/ccuda.pyx":4462
 *     if __cuStreamGetCtx == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuStreamGetCtx" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUstream, CUcontext*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuStreamGetCtx)(hStream, pctx)
 *     return err
 */
  __pyx_tuple__205 = PyTuple_Pack(1, __pyx_kp_u_Function_cuStreamGetCtx_not_foun); if (unlikely(!__pyx_tuple__205)) __PYX_ERR(0, 4462, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__205);
  __Pyx_GIVEREF(__pyx_tuple__205);

  /* "cuda/_cuda/ccuda.pyx":4471
 *     if __cuStreamWaitEvent == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuStreamWaitEvent" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUstream, CUevent, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuStreamWaitEvent)(hStream, hEvent, Flags)
 *     return err
 */
  __pyx_tuple__206 = PyTuple_Pack(1, __pyx_kp_u_Function_cuStreamWaitEvent_not_f); if (unlikely(!__pyx_tuple__206)) __PYX_ERR(0, 4471, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__206);
  __Pyx_GIVEREF(__pyx_tuple__206);

  /* "cuda/_cuda/ccuda.pyx":4480
 *     if __cuStreamAddCallback == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuStreamAddCallback" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUstream, CUstreamCallback, void*, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuStreamAddCallback)(hStream, callback, userData, flags)
 *     return err
 */
  __pyx_tuple__207 = PyTuple_Pack(1, __pyx_kp_u_Function_cuStreamAddCallback_not); if (unlikely(!__pyx_tuple__207)) __PYX_ERR(0, 4480, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__207);
  __Pyx_GIVEREF(__pyx_tuple__207);

  /* "cuda/_cuda/ccuda.pyx":4489
 *     if __cuStreamBeginCapture_v2 == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuStreamBeginCapture_v2" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUstream, CUstreamCaptureMode) except ?CUDA_ERROR_NOT_FOUND nogil> __cuStreamBeginCapture_v2)(hStream, mode)
 *     return err
 */
  __pyx_tuple__208 = PyTuple_Pack(1, __pyx_kp_u_Function_cuStreamBeginCapture_v2); if (unlikely(!__pyx_tuple__208)) __PYX_ERR(0, 4489, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__208);
  __Pyx_GIVEREF(__pyx_tuple__208);

  /* "cuda/_cuda/ccuda.pyx":4498
 *     if __cuStreamBeginCaptureToGraph == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuStreamBeginCaptureToGraph" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUstream, CUgraph, const CUgraphNode*, const CUgraphEdgeData*, size_t, CUstreamCaptureMode) except ?CUDA_ERROR_NOT_FOUND nogil> __cuStreamBeginCaptureToGraph)(hStream, hGraph, dependencies, dependencyData, numDependencies, mode)
 *     return err
 */
  __pyx_tuple__209 = PyTuple_Pack(1, __pyx_kp_u_Function_cuStreamBeginCaptureToG); if (unlikely(!__pyx_tuple__209)) __PYX_ERR(0, 4498, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__209);
  __Pyx_GIVEREF(__pyx_tuple__209);

  /* "cuda/_cuda/ccuda.pyx":4507
 *     if __cuThreadExchangeStreamCaptureMode == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuThreadExchangeStreamCaptureMode" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUstreamCaptureMode*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuThreadExchangeStreamCaptureMode)(mode)
 *     return err
 */
  __pyx_tuple__210 = PyTuple_Pack(1, __pyx_kp_u_Function_cuThreadExchangeStreamC); if (unlikely(!__pyx_tuple__210)) __PYX_ERR(0, 4507, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__210);
  __Pyx_GIVEREF(__pyx_tuple__210);

  /* "cuda/_cuda/ccuda.pyx":4516
 *     if __cuStreamEndCapture == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuStreamEndCapture" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUstream, CUgraph*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuStreamEndCapture)(hStream, phGraph)
 *     return err
 */
  __pyx_tuple__211 = PyTuple_Pack(1, __pyx_kp_u_Function_cuStreamEndCapture_not); if (unlikely(!__pyx_tuple__211)) __PYX_ERR(0, 4516, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__211);
  __Pyx_GIVEREF(__pyx_tuple__211);

  /* "cuda/_cuda/ccuda.pyx":4525
 *     if __cuStreamIsCapturing == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuStreamIsCapturing" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUstream, CUstreamCaptureStatus*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuStreamIsCapturing)(hStream, captureStatus)
 *     return err
 */
  __pyx_tuple__212 = PyTuple_Pack(1, __pyx_kp_u_Function_cuStreamIsCapturing_not); if (unlikely(!__pyx_tuple__212)) __PYX_ERR(0, 4525, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__212);
  __Pyx_GIVEREF(__pyx_tuple__212);

  /* "cuda/_cuda/ccuda.pyx":4534
 *     if __cuStreamGetCaptureInfo_v2 == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuStreamGetCaptureInfo_v2" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUstream, CUstreamCaptureStatus*, cuuint64_t*, CUgraph*, const CUgraphNode**, size_t*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuStreamGetCaptureInfo_v2)(hStream, captureStatus_out, id_out, graph_out, dependencies_out, numDependencies_out)
 *     return err
 */
  __pyx_tuple__213 = PyTuple_Pack(1, __pyx_kp_u_Function_cuStreamGetCaptureInfo); if (unlikely(!__pyx_tuple__213)) __PYX_ERR(0, 4534, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__213);
  __Pyx_GIVEREF(__pyx_tuple__213);

  /* "cuda/_cuda/ccuda.pyx":4543
 *     if __cuStreamGetCaptureInfo_v3 == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuStreamGetCaptureInfo_v3" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUstream, CUstreamCaptureStatus*, cuuint64_t*, CUgraph*, const CUgraphNode**, const CUgraphEdgeData**, size_t*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuStreamGetCaptureInfo_v3)(hStream, captureStatus_out, id_out, graph_out, dependencies_out, edgeData_out, numDependencies_out)
 *     return err
 */
  __pyx_tuple__214 = PyTuple_Pack(1, __pyx_kp_u_Function_cuStreamGetCaptureInfo_2); if (unlikely(!__pyx_tuple__214)) __PYX_ERR(0, 4543, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__214);
  __Pyx_GIVEREF(__pyx_tuple__214);

  /* "cuda/_cuda/ccuda.pyx":4552
 *     if __cuStreamUpdateCaptureDependencies == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuStreamUpdateCaptureDependencies" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUstream, CUgraphNode*, size_t, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuStreamUpdateCaptureDependencies)(hStream, dependencies, numDependencies, flags)
 *     return err
 */
  __pyx_tuple__215 = PyTuple_Pack(1, __pyx_kp_u_Function_cuStreamUpdateCaptureDe); if (unlikely(!__pyx_tuple__215)) __PYX_ERR(0, 4552, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__215);
  __Pyx_GIVEREF(__pyx_tuple__215);

  /* "cuda/_cuda/ccuda.pyx":4561
 *     if __cuStreamUpdateCaptureDependencies_v2 == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuStreamUpdateCaptureDependencies_v2" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUstream, CUgraphNode*, const CUgraphEdgeData*, size_t, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuStreamUpdateCaptureDependencies_v2)(hStream, dependencies, dependencyData, numDependencies, flags)
 *     return err
 */
  __pyx_tuple__216 = PyTuple_Pack(1, __pyx_kp_u_Function_cuStreamUpdateCaptureDe_2); if (unlikely(!__pyx_tuple__216)) __PYX_ERR(0, 4561, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__216);
  __Pyx_GIVEREF(__pyx_tuple__216);

  /* "cuda/_cuda/ccuda.pyx":4570
 *     if __cuStreamAttachMemAsync == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuStreamAttachMemAsync" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUstream, CUdeviceptr, size_t, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuStreamAttachMemAsync)(hStream, dptr, length, flags)
 *     return err
 */
  __pyx_tuple__217 = PyTuple_Pack(1, __pyx_kp_u_Function_cuStreamAttachMemAsync); if (unlikely(!__pyx_tuple__217)) __PYX_ERR(0, 4570, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__217);
  __Pyx_GIVEREF(__pyx_tuple__217);

  /* "cuda/_cuda/ccuda.pyx":4579
 *     if __cuStreamQuery == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuStreamQuery" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUstream) except ?CUDA_ERROR_NOT_FOUND nogil> __cuStreamQuery)(hStream)
 *     return err
 */
  __pyx_tuple__218 = PyTuple_Pack(1, __pyx_kp_u_Function_cuStreamQuery_not_found); if (unlikely(!__pyx_tuple__218)) __PYX_ERR(0, 4579, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__218);
  __Pyx_GIVEREF(__pyx_tuple__218);

  /* "cuda/_cuda/ccuda.pyx":4588
 *     if __cuStreamSynchronize == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuStreamSynchronize" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUstream) except ?CUDA_ERROR_NOT_FOUND nogil> __cuStreamSynchronize)(hStream)
 *     return err
 */
  __pyx_tuple__219 = PyTuple_Pack(1, __pyx_kp_u_Function_cuStreamSynchronize_not); if (unlikely(!__pyx_tuple__219)) __PYX_ERR(0, 4588, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__219);
  __Pyx_GIVEREF(__pyx_tuple__219);

  /* "cuda/_cuda/ccuda.pyx":4597
 *     if __cuStreamDestroy_v2 == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuStreamDestroy_v2" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUstream) except ?CUDA_ERROR_NOT_FOUND nogil> __cuStreamDestroy_v2)(hStream)
 *     return err
 */
  __pyx_tuple__220 = PyTuple_Pack(1, __pyx_kp_u_Function_cuStreamDestroy_v2_not); if (unlikely(!__pyx_tuple__220)) __PYX_ERR(0, 4597, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__220);
  __Pyx_GIVEREF(__pyx_tuple__220);

  /* "cuda/_cuda/ccuda.pyx":4606
 *     if __cuStreamCopyAttributes == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuStreamCopyAttributes" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUstream, CUstream) except ?CUDA_ERROR_NOT_FOUND nogil> __cuStreamCopyAttributes)(dst, src)
 *     return err
 */
  __pyx_tuple__221 = PyTuple_Pack(1, __pyx_kp_u_Function_cuStreamCopyAttributes); if (unlikely(!__pyx_tuple__221)) __PYX_ERR(0, 4606, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__221);
  __Pyx_GIVEREF(__pyx_tuple__221);

  /* "cuda/_cuda/ccuda.pyx":4615
 *     if __cuStreamGetAttribute == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuStreamGetAttribute" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUstream, CUstreamAttrID, CUstreamAttrValue*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuStreamGetAttribute)(hStream, attr, value_out)
 *     return err
 */
  __pyx_tuple__222 = PyTuple_Pack(1, __pyx_kp_u_Function_cuStreamGetAttribute_no); if (unlikely(!__pyx_tuple__222)) __PYX_ERR(0, 4615, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__222);
  __Pyx_GIVEREF(__pyx_tuple__222);

  /* "cuda/_cuda/ccuda.pyx":4624
 *     if __cuStreamSetAttribute == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuStreamSetAttribute" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUstream, CUstreamAttrID, const CUstreamAttrValue*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuStreamSetAttribute)(hStream, attr, value)
 *     return err
 */
  __pyx_tuple__223 = PyTuple_Pack(1, __pyx_kp_u_Function_cuStreamSetAttribute_no); if (unlikely(!__pyx_tuple__223)) __PYX_ERR(0, 4624, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__223);
  __Pyx_GIVEREF(__pyx_tuple__223);

  /* "cuda/_cuda/ccuda.pyx":4633
 *     if __cuEventCreate == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuEventCreate" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUevent*, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuEventCreate)(phEvent, Flags)
 *     return err
 */
  __pyx_tuple__224 = PyTuple_Pack(1, __pyx_kp_u_Function_cuEventCreate_not_found); if (unlikely(!__pyx_tuple__224)) __PYX_ERR(0, 4633, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__224);
  __Pyx_GIVEREF(__pyx_tuple__224);

  /* "cuda/_cuda/ccuda.pyx":4642
 *     if __cuEventRecord == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuEventRecord" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUevent, CUstream) except ?CUDA_ERROR_NOT_FOUND nogil> __cuEventRecord)(hEvent, hStream)
 *     return err
 */
  __pyx_tuple__225 = PyTuple_Pack(1, __pyx_kp_u_Function_cuEventRecord_not_found); if (unlikely(!__pyx_tuple__225)) __PYX_ERR(0, 4642, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__225);
  __Pyx_GIVEREF(__pyx_tuple__225);

  /* "cuda/_cuda/ccuda.pyx":4651
 *     if __cuEventRecordWithFlags == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuEventRecordWithFlags" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUevent, CUstream, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuEventRecordWithFlags)(hEvent, hStream, flags)
 *     return err
 */
  __pyx_tuple__226 = PyTuple_Pack(1, __pyx_kp_u_Function_cuEventRecordWithFlags); if (unlikely(!__pyx_tuple__226)) __PYX_ERR(0, 4651, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__226);
  __Pyx_GIVEREF(__pyx_tuple__226);

  /* "cuda/_cuda/ccuda.pyx":4660
 *     if __cuEventQuery == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuEventQuery" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUevent) except ?CUDA_ERROR_NOT_FOUND nogil> __cuEventQuery)(hEvent)
 *     return err
 */
  __pyx_tuple__227 = PyTuple_Pack(1, __pyx_kp_u_Function_cuEventQuery_not_found); if (unlikely(!__pyx_tuple__227)) __PYX_ERR(0, 4660, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__227);
  __Pyx_GIVEREF(__pyx_tuple__227);

  /* "cuda/_cuda/ccuda.pyx":4669
 *     if __cuEventSynchronize == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuEventSynchronize" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUevent) except ?CUDA_ERROR_NOT_FOUND nogil> __cuEventSynchronize)(hEvent)
 *     return err
 */
  __pyx_tuple__228 = PyTuple_Pack(1, __pyx_kp_u_Function_cuEventSynchronize_not); if (unlikely(!__pyx_tuple__228)) __PYX_ERR(0, 4669, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__228);
  __Pyx_GIVEREF(__pyx_tuple__228);

  /* "cuda/_cuda/ccuda.pyx":4678
 *     if __cuEventDestroy_v2 == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuEventDestroy_v2" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUevent) except ?CUDA_ERROR_NOT_FOUND nogil> __cuEventDestroy_v2)(hEvent)
 *     return err
 */
  __pyx_tuple__229 = PyTuple_Pack(1, __pyx_kp_u_Function_cuEventDestroy_v2_not_f); if (unlikely(!__pyx_tuple__229)) __PYX_ERR(0, 4678, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__229);
  __Pyx_GIVEREF(__pyx_tuple__229);

  /* "cuda/_cuda/ccuda.pyx":4687
 *     if __cuEventElapsedTime == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuEventElapsedTime" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(float*, CUevent, CUevent) except ?CUDA_ERROR_NOT_FOUND nogil> __cuEventElapsedTime)(pMilliseconds, hStart, hEnd)
 *     return err
 */
  __pyx_tuple__230 = PyTuple_Pack(1, __pyx_kp_u_Function_cuEventElapsedTime_not); if (unlikely(!__pyx_tuple__230)) __PYX_ERR(0, 4687, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__230);
  __Pyx_GIVEREF(__pyx_tuple__230);

  /* "cuda/_cuda/ccuda.pyx":4696
 *     if __cuImportExternalMemory == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuImportExternalMemory" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUexternalMemory*, const CUDA_EXTERNAL_MEMORY_HANDLE_DESC*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuImportExternalMemory)(extMem_out, memHandleDesc)
 *     return err
 */
  __pyx_tuple__231 = PyTuple_Pack(1, __pyx_kp_u_Function_cuImportExternalMemory); if (unlikely(!__pyx_tuple__231)) __PYX_ERR(0, 4696, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__231);
  __Pyx_GIVEREF(__pyx_tuple__231);

  /* "cuda/_cuda/ccuda.pyx":4705
 *     if __cuExternalMemoryGetMappedBuffer == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuExternalMemoryGetMappedBuffer" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUdeviceptr*, CUexternalMemory, const CUDA_EXTERNAL_MEMORY_BUFFER_DESC*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuExternalMemoryGetMappedBuffer)(devPtr, extMem, bufferDesc)
 *     return err
 */
  __pyx_tuple__232 = PyTuple_Pack(1, __pyx_kp_u_Function_cuExternalMemoryGetMapp); if (unlikely(!__pyx_tuple__232)) __PYX_ERR(0, 4705, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__232);
  __Pyx_GIVEREF(__pyx_tuple__232);

  /* "cuda/_cuda/ccuda.pyx":4714
 *     if __cuExternalMemoryGetMappedMipmappedArray == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuExternalMemoryGetMappedMipmappedArray" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUmipmappedArray*, CUexternalMemory, const CUDA_EXTERNAL_MEMORY_MIPMAPPED_ARRAY_DESC*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuExternalMemoryGetMappedMipmappedArray)(mipmap, extMem, mipmapDesc)
 *     return err
 */
  __pyx_tuple__233 = PyTuple_Pack(1, __pyx_kp_u_Function_cuExternalMemoryGetMapp_2); if (unlikely(!__pyx_tuple__233)) __PYX_ERR(0, 4714, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__233);
  __Pyx_GIVEREF(__pyx_tuple__233);

  /* "cuda/_cuda/ccuda.pyx":4723
 *     if __cuDestroyExternalMemory == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuDestroyExternalMemory" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUexternalMemory) except ?CUDA_ERROR_NOT_FOUND nogil> __cuDestroyExternalMemory)(extMem)
 *     return err
 */
  __pyx_tuple__234 = PyTuple_Pack(1, __pyx_kp_u_Function_cuDestroyExternalMemory); if (unlikely(!__pyx_tuple__234)) __PYX_ERR(0, 4723, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__234);
  __Pyx_GIVEREF(__pyx_tuple__234);

  /* "cuda/_cuda/ccuda.pyx":4732
 *     if __cuImportExternalSemaphore == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuImportExternalSemaphore" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUexternalSemaphore*, const CUDA_EXTERNAL_SEMAPHORE_HANDLE_DESC*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuImportExternalSemaphore)(extSem_out, semHandleDesc)
 *     return err
 */
  __pyx_tuple__235 = PyTuple_Pack(1, __pyx_kp_u_Function_cuImportExternalSemapho); if (unlikely(!__pyx_tuple__235)) __PYX_ERR(0, 4732, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__235);
  __Pyx_GIVEREF(__pyx_tuple__235);

  /* "cuda/_cuda/ccuda.pyx":4741
 *     if __cuSignalExternalSemaphoresAsync == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuSignalExternalSemaphoresAsync" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(const CUexternalSemaphore*, const CUDA_EXTERNAL_SEMAPHORE_SIGNAL_PARAMS*, unsigned int, CUstream) except ?CUDA_ERROR_NOT_FOUND nogil> __cuSignalExternalSemaphoresAsync)(extSemArray, paramsArray, numExtSems, stream)
 *     return err
 */
  __pyx_tuple__236 = PyTuple_Pack(1, __pyx_kp_u_Function_cuSignalExternalSemapho); if (unlikely(!__pyx_tuple__236)) __PYX_ERR(0, 4741, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__236);
  __Pyx_GIVEREF(__pyx_tuple__236);

  /* "cuda/_cuda/ccuda.pyx":4750
 *     if __cuWaitExternalSemaphoresAsync == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuWaitExternalSemaphoresAsync" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(const CUexternalSemaphore*, const CUDA_EXTERNAL_SEMAPHORE_WAIT_PARAMS*, unsigned int, CUstream) except ?CUDA_ERROR_NOT_FOUND nogil> __cuWaitExternalSemaphoresAsync)(extSemArray, paramsArray, numExtSems, stream)
 *     return err
 */
  __pyx_tuple__237 = PyTuple_Pack(1, __pyx_kp_u_Function_cuWaitExternalSemaphore); if (unlikely(!__pyx_tuple__237)) __PYX_ERR(0, 4750, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__237);
  __Pyx_GIVEREF(__pyx_tuple__237);

  /* "cuda/_cuda/ccuda.pyx":4759
 *     if __cuDestroyExternalSemaphore == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuDestroyExternalSemaphore" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUexternalSemaphore) except ?CUDA_ERROR_NOT_FOUND nogil> __cuDestroyExternalSemaphore)(extSem)
 *     return err
 */
  __pyx_tuple__238 = PyTuple_Pack(1, __pyx_kp_u_Function_cuDestroyExternalSemaph); if (unlikely(!__pyx_tuple__238)) __PYX_ERR(0, 4759, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__238);
  __Pyx_GIVEREF(__pyx_tuple__238);

  /* "cuda/_cuda/ccuda.pyx":4768
 *     if __cuStreamWaitValue32_v2 == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuStreamWaitValue32_v2" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUstream, CUdeviceptr, cuuint32_t, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuStreamWaitValue32_v2)(stream, addr, value, flags)
 *     return err
 */
  __pyx_tuple__239 = PyTuple_Pack(1, __pyx_kp_u_Function_cuStreamWaitValue32_v2); if (unlikely(!__pyx_tuple__239)) __PYX_ERR(0, 4768, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__239);
  __Pyx_GIVEREF(__pyx_tuple__239);

  /* "cuda/_cuda/ccuda.pyx":4777
 *     if __cuStreamWaitValue64_v2 == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuStreamWaitValue64_v2" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUstream, CUdeviceptr, cuuint64_t, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuStreamWaitValue64_v2)(stream, addr, value, flags)
 *     return err
 */
  __pyx_tuple__240 = PyTuple_Pack(1, __pyx_kp_u_Function_cuStreamWaitValue64_v2); if (unlikely(!__pyx_tuple__240)) __PYX_ERR(0, 4777, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__240);
  __Pyx_GIVEREF(__pyx_tuple__240);

  /* "cuda/_cuda/ccuda.pyx":4786
 *     if __cuStreamWriteValue32_v2 == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuStreamWriteValue32_v2" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUstream, CUdeviceptr, cuuint32_t, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuStreamWriteValue32_v2)(stream, addr, value, flags)
 *     return err
 */
  __pyx_tuple__241 = PyTuple_Pack(1, __pyx_kp_u_Function_cuStreamWriteValue32_v2); if (unlikely(!__pyx_tuple__241)) __PYX_ERR(0, 4786, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__241);
  __Pyx_GIVEREF(__pyx_tuple__241);

  /* "cuda/_cuda/ccuda.pyx":4795
 *     if __cuStreamWriteValue64_v2 == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuStreamWriteValue64_v2" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUstream, CUdeviceptr, cuuint64_t, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuStreamWriteValue64_v2)(stream, addr, value, flags)
 *     return err
 */
  __pyx_tuple__242 = PyTuple_Pack(1, __pyx_kp_u_Function_cuStreamWriteValue64_v2); if (unlikely(!__pyx_tuple__242)) __PYX_ERR(0, 4795, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__242);
  __Pyx_GIVEREF(__pyx_tuple__242);

  /* "cuda/_cuda/ccuda.pyx":4804
 *     if __cuStreamBatchMemOp_v2 == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuStreamBatchMemOp_v2" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUstream, unsigned int, CUstreamBatchMemOpParams*, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuStreamBatchMemOp_v2)(stream, count, paramArray, flags)
 *     return err
 */
  __pyx_tuple__243 = PyTuple_Pack(1, __pyx_kp_u_Function_cuStreamBatchMemOp_v2_n); if (unlikely(!__pyx_tuple__243)) __PYX_ERR(0, 4804, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__243);
  __Pyx_GIVEREF(__pyx_tuple__243);

  /* "cuda/_cuda/ccuda.pyx":4813
 *     if __cuFuncGetAttribute == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuFuncGetAttribute" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(int*, CUfunction_attribute, CUfunction) except ?CUDA_ERROR_NOT_FOUND nogil> __cuFuncGetAttribute)(pi, attrib, hfunc)
 *     return err
 */
  __pyx_tuple__244 = PyTuple_Pack(1, __pyx_kp_u_Function_cuFuncGetAttribute_not); if (unlikely(!__pyx_tuple__244)) __PYX_ERR(0, 4813, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__244);
  __Pyx_GIVEREF(__pyx_tuple__244);

  /* "cuda/_cuda/ccuda.pyx":4822
 *     if __cuFuncSetAttribute == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuFuncSetAttribute" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUfunction, CUfunction_attribute, int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuFuncSetAttribute)(hfunc, attrib, value)
 *     return err
 */
  __pyx_tuple__245 = PyTuple_Pack(1, __pyx_kp_u_Function_cuFuncSetAttribute_not); if (unlikely(!__pyx_tuple__245)) __PYX_ERR(0, 4822, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__245);
  __Pyx_GIVEREF(__pyx_tuple__245);

  /* "cuda/_cuda/ccuda.pyx":4831
 *     if __cuFuncSetCacheConfig == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuFuncSetCacheConfig" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUfunction, CUfunc_cache) except ?CUDA_ERROR_NOT_FOUND nogil> __cuFuncSetCacheConfig)(hfunc, config)
 *     return err
 */
  __pyx_tuple__246 = PyTuple_Pack(1, __pyx_kp_u_Function_cuFuncSetCacheConfig_no); if (unlikely(!__pyx_tuple__246)) __PYX_ERR(0, 4831, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__246);
  __Pyx_GIVEREF(__pyx_tuple__246);

  /* "cuda/_cuda/ccuda.pyx":4840
 *     if __cuFuncGetModule == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuFuncGetModule" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUmodule*, CUfunction) except ?CUDA_ERROR_NOT_FOUND nogil> __cuFuncGetModule)(hmod, hfunc)
 *     return err
 */
  __pyx_tuple__247 = PyTuple_Pack(1, __pyx_kp_u_Function_cuFuncGetModule_not_fou); if (unlikely(!__pyx_tuple__247)) __PYX_ERR(0, 4840, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__247);
  __Pyx_GIVEREF(__pyx_tuple__247);

  /* "cuda/_cuda/ccuda.pyx":4849
 *     if __cuFuncGetName == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuFuncGetName" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(const char**, CUfunction) except ?CUDA_ERROR_NOT_FOUND nogil> __cuFuncGetName)(name, hfunc)
 *     return err
 */
  __pyx_tuple__248 = PyTuple_Pack(1, __pyx_kp_u_Function_cuFuncGetName_not_found); if (unlikely(!__pyx_tuple__248)) __PYX_ERR(0, 4849, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__248);
  __Pyx_GIVEREF(__pyx_tuple__248);

  /* "cuda/_cuda/ccuda.pyx":4858
 *     if __cuFuncGetParamInfo == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuFuncGetParamInfo" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUfunction, size_t, size_t*, size_t*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuFuncGetParamInfo)(func, paramIndex, paramOffset, paramSize)
 *     return err
 */
  __pyx_tuple__249 = PyTuple_Pack(1, __pyx_kp_u_Function_cuFuncGetParamInfo_not); if (unlikely(!__pyx_tuple__249)) __PYX_ERR(0, 4858, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__249);
  __Pyx_GIVEREF(__pyx_tuple__249);

  /* "cuda/_cuda/ccuda.pyx":4867
 *     if __cuFuncIsLoaded == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuFuncIsLoaded" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUfunctionLoadingState*, CUfunction) except ?CUDA_ERROR_NOT_FOUND nogil> __cuFuncIsLoaded)(state, function)
 *     return err
 */
  __pyx_tuple__250 = PyTuple_Pack(1, __pyx_kp_u_Function_cuFuncIsLoaded_not_foun); if (unlikely(!__pyx_tuple__250)) __PYX_ERR(0, 4867, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__250);
  __Pyx_GIVEREF(__pyx_tuple__250);

  /* "cuda/_cuda/ccuda.pyx":4876
 *     if __cuFuncLoad == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuFuncLoad" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUfunction) except ?CUDA_ERROR_NOT_FOUND nogil> __cuFuncLoad)(function)
 *     return err
 */
  __pyx_tuple__251 = PyTuple_Pack(1, __pyx_kp_u_Function_cuFuncLoad_not_found); if (unlikely(!__pyx_tuple__251)) __PYX_ERR(0, 4876, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__251);
  __Pyx_GIVEREF(__pyx_tuple__251);

  /* "cuda/_cuda/ccuda.pyx":4885
 *     if __cuLaunchKernel == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuLaunchKernel" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUfunction, unsigned int, unsigned int, unsigned int, unsigned int, unsigned int, unsigned int, unsigned int, CUstream, void**, void**) except ?CUDA_ERROR_NOT_FOUND nogil> __cuLaunchKernel)(f, gridDimX, gridDimY, gridDimZ, blockDimX, blockDimY, blockDimZ, sharedMemBytes, hStream, kernelParams, extra)
 *     return err
 */
  __pyx_tuple__252 = PyTuple_Pack(1, __pyx_kp_u_Function_cuLaunchKernel_not_foun); if (unlikely(!__pyx_tuple__252)) __PYX_ERR(0, 4885, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__252);
  __Pyx_GIVEREF(__pyx_tuple__252);

  /* "cuda/_cuda/ccuda.pyx":4894
 *     if __cuLaunchKernelEx == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuLaunchKernelEx" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(const CUlaunchConfig*, CUfunction, void**, void**) except ?CUDA_ERROR_NOT_FOUND nogil> __cuLaunchKernelEx)(config, f, kernelParams, extra)
 *     return err
 */
  __pyx_tuple__253 = PyTuple_Pack(1, __pyx_kp_u_Function_cuLaunchKernelEx_not_fo); if (unlikely(!__pyx_tuple__253)) __PYX_ERR(0, 4894, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__253);
  __Pyx_GIVEREF(__pyx_tuple__253);

  /* "cuda/_cuda/ccuda.pyx":4903
 *     if __cuLaunchCooperativeKernel == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuLaunchCooperativeKernel" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUfunction, unsigned int, unsigned int, unsigned int, unsigned int, unsigned int, unsigned int, unsigned int, CUstream, void**) except ?CUDA_ERROR_NOT_FOUND nogil> __cuLaunchCooperativeKernel)(f, gridDimX, gridDimY, gridDimZ, blockDimX, blockDimY, blockDimZ, sharedMemBytes, hStream, kernelParams)
 *     return err
 */
  __pyx_tuple__254 = PyTuple_Pack(1, __pyx_kp_u_Function_cuLaunchCooperativeKern); if (unlikely(!__pyx_tuple__254)) __PYX_ERR(0, 4903, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__254);
  __Pyx_GIVEREF(__pyx_tuple__254);

  /* "cuda/_cuda/ccuda.pyx":4912
 *     if __cuLaunchCooperativeKernelMultiDevice == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuLaunchCooperativeKernelMultiDevice" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUDA_LAUNCH_PARAMS*, unsigned int, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuLaunchCooperativeKernelMultiDevice)(launchParamsList, numDevices, flags)
 *     return err
 */
  __pyx_tuple__255 = PyTuple_Pack(1, __pyx_kp_u_Function_cuLaunchCooperativeKern_2); if (unlikely(!__pyx_tuple__255)) __PYX_ERR(0, 4912, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__255);
  __Pyx_GIVEREF(__pyx_tuple__255);

  /* "cuda/_cuda/ccuda.pyx":4921
 *     if __cuLaunchHostFunc == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuLaunchHostFunc" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUstream, CUhostFn, void*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuLaunchHostFunc)(hStream, fn, userData)
 *     return err
 */
  __pyx_tuple__256 = PyTuple_Pack(1, __pyx_kp_u_Function_cuLaunchHostFunc_not_fo); if (unlikely(!__pyx_tuple__256)) __PYX_ERR(0, 4921, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__256);
  __Pyx_GIVEREF(__pyx_tuple__256);

  /* "cuda/_cuda/ccuda.pyx":4930
 *     if __cuFuncSetBlockShape == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuFuncSetBlockShape" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUfunction, int, int, int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuFuncSetBlockShape)(hfunc, x, y, z)
 *     return err
 */
  __pyx_tuple__257 = PyTuple_Pack(1, __pyx_kp_u_Function_cuFuncSetBlockShape_not); if (unlikely(!__pyx_tuple__257)) __PYX_ERR(0, 4930, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__257);
  __Pyx_GIVEREF(__pyx_tuple__257);

  /* "cuda/_cuda/ccuda.pyx":4939
 *     if __cuFuncSetSharedSize == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuFuncSetSharedSize" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUfunction, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuFuncSetSharedSize)(hfunc, numbytes)
 *     return err
 */
  __pyx_tuple__258 = PyTuple_Pack(1, __pyx_kp_u_Function_cuFuncSetSharedSize_not); if (unlikely(!__pyx_tuple__258)) __PYX_ERR(0, 4939, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__258);
  __Pyx_GIVEREF(__pyx_tuple__258);

  /* "cuda/_cuda/ccuda.pyx":4948
 *     if __cuParamSetSize == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuParamSetSize" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUfunction, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuParamSetSize)(hfunc, numbytes)
 *     return err
 */
  __pyx_tuple__259 = PyTuple_Pack(1, __pyx_kp_u_Function_cuParamSetSize_not_foun); if (unlikely(!__pyx_tuple__259)) __PYX_ERR(0, 4948, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__259);
  __Pyx_GIVEREF(__pyx_tuple__259);

  /* "cuda/_cuda/ccuda.pyx":4957
 *     if __cuParamSeti == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuParamSeti" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUfunction, int, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuParamSeti)(hfunc, offset, value)
 *     return err
 */
  __pyx_tuple__260 = PyTuple_Pack(1, __pyx_kp_u_Function_cuParamSeti_not_found); if (unlikely(!__pyx_tuple__260)) __PYX_ERR(0, 4957, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__260);
  __Pyx_GIVEREF(__pyx_tuple__260);

  /* "cuda/_cuda/ccuda.pyx":4966
 *     if __cuParamSetf == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuParamSetf" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUfunction, int, float) except ?CUDA_ERROR_NOT_FOUND nogil> __cuParamSetf)(hfunc, offset, value)
 *     return err
 */
  __pyx_tuple__261 = PyTuple_Pack(1, __pyx_kp_u_Function_cuParamSetf_not_found); if (unlikely(!__pyx_tuple__261)) __PYX_ERR(0, 4966, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__261);
  __Pyx_GIVEREF(__pyx_tuple__261);

  /* "cuda/_cuda/ccuda.pyx":4975
 *     if __cuParamSetv == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuParamSetv" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUfunction, int, void*, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuParamSetv)(hfunc, offset, ptr, numbytes)
 *     return err
 */
  __pyx_tuple__262 = PyTuple_Pack(1, __pyx_kp_u_Function_cuParamSetv_not_found); if (unlikely(!__pyx_tuple__262)) __PYX_ERR(0, 4975, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__262);
  __Pyx_GIVEREF(__pyx_tuple__262);

  /* "cuda/_cuda/ccuda.pyx":4984
 *     if __cuLaunch == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuLaunch" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUfunction) except ?CUDA_ERROR_NOT_FOUND nogil> __cuLaunch)(f)
 *     return err
 */
  __pyx_tuple__263 = PyTuple_Pack(1, __pyx_kp_u_Function_cuLaunch_not_found); if (unlikely(!__pyx_tuple__263)) __PYX_ERR(0, 4984, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__263);
  __Pyx_GIVEREF(__pyx_tuple__263);

  /* "cuda/_cuda/ccuda.pyx":4993
 *     if __cuLaunchGrid == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuLaunchGrid" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUfunction, int, int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuLaunchGrid)(f, grid_width, grid_height)
 *     return err
 */
  __pyx_tuple__264 = PyTuple_Pack(1, __pyx_kp_u_Function_cuLaunchGrid_not_found); if (unlikely(!__pyx_tuple__264)) __PYX_ERR(0, 4993, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__264);
  __Pyx_GIVEREF(__pyx_tuple__264);

  /* "cuda/_cuda/ccuda.pyx":5002
 *     if __cuLaunchGridAsync == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuLaunchGridAsync" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUfunction, int, int, CUstream) except ?CUDA_ERROR_NOT_FOUND nogil> __cuLaunchGridAsync)(f, grid_width, grid_height, hStream)
 *     return err
 */
  __pyx_tuple__265 = PyTuple_Pack(1, __pyx_kp_u_Function_cuLaunchGridAsync_not_f); if (unlikely(!__pyx_tuple__265)) __PYX_ERR(0, 5002, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__265);
  __Pyx_GIVEREF(__pyx_tuple__265);

  /* "cuda/_cuda/ccuda.pyx":5011
 *     if __cuParamSetTexRef == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuParamSetTexRef" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUfunction, int, CUtexref) except ?CUDA_ERROR_NOT_FOUND nogil> __cuParamSetTexRef)(hfunc, texunit, hTexRef)
 *     return err
 */
  __pyx_tuple__266 = PyTuple_Pack(1, __pyx_kp_u_Function_cuParamSetTexRef_not_fo); if (unlikely(!__pyx_tuple__266)) __PYX_ERR(0, 5011, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__266);
  __Pyx_GIVEREF(__pyx_tuple__266);

  /* "cuda/_cuda/ccuda.pyx":5020
 *     if __cuFuncSetSharedMemConfig == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuFuncSetSharedMemConfig" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUfunction, CUsharedconfig) except ?CUDA_ERROR_NOT_FOUND nogil> __cuFuncSetSharedMemConfig)(hfunc, config)
 *     return err
 */
  __pyx_tuple__267 = PyTuple_Pack(1, __pyx_kp_u_Function_cuFuncSetSharedMemConfi); if (unlikely(!__pyx_tuple__267)) __PYX_ERR(0, 5020, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__267);
  __Pyx_GIVEREF(__pyx_tuple__267);

  /* "cuda/_cuda/ccuda.pyx":5029
 *     if __cuGraphCreate == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuGraphCreate" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUgraph*, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphCreate)(phGraph, flags)
 *     return err
 */
  __pyx_tuple__268 = PyTuple_Pack(1, __pyx_kp_u_Function_cuGraphCreate_not_found); if (unlikely(!__pyx_tuple__268)) __PYX_ERR(0, 5029, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__268);
  __Pyx_GIVEREF(__pyx_tuple__268);

  /* "cuda/_cuda/ccuda.pyx":5038
 *     if __cuGraphAddKernelNode_v2 == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuGraphAddKernelNode_v2" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUgraphNode*, CUgraph, const CUgraphNode*, size_t, const CUDA_KERNEL_NODE_PARAMS*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphAddKernelNode_v2)(phGraphNode, hGraph, dependencies, numDependencies, nodeParams)
 *     return err
 */
  __pyx_tuple__269 = PyTuple_Pack(1, __pyx_kp_u_Function_cuGraphAddKernelNode_v2); if (unlikely(!__pyx_tuple__269)) __PYX_ERR(0, 5038, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__269);
  __Pyx_GIVEREF(__pyx_tuple__269);

  /* "cuda/_cuda/ccuda.pyx":5047
 *     if __cuGraphKernelNodeGetParams_v2 == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuGraphKernelNodeGetParams_v2" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUgraphNode, CUDA_KERNEL_NODE_PARAMS*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphKernelNodeGetParams_v2)(hNode, nodeParams)
 *     return err
 */
  __pyx_tuple__270 = PyTuple_Pack(1, __pyx_kp_u_Function_cuGraphKernelNodeGetPar); if (unlikely(!__pyx_tuple__270)) __PYX_ERR(0, 5047, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__270);
  __Pyx_GIVEREF(__pyx_tuple__270);

  /* "cuda/_cuda/ccuda.pyx":5056
 *     if __cuGraphKernelNodeSetParams_v2 == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuGraphKernelNodeSetParams_v2" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUgraphNode, const CUDA_KERNEL_NODE_PARAMS*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphKernelNodeSetParams_v2)(hNode, nodeParams)
 *     return err
 */
  __pyx_tuple__271 = PyTuple_Pack(1, __pyx_kp_u_Function_cuGraphKernelNodeSetPar); if (unlikely(!__pyx_tuple__271)) __PYX_ERR(0, 5056, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__271);
  __Pyx_GIVEREF(__pyx_tuple__271);

  /* "cuda/_cuda/ccuda.pyx":5065
 *     if __cuGraphAddMemcpyNode == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuGraphAddMemcpyNode" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUgraphNode*, CUgraph, const CUgraphNode*, size_t, const CUDA_MEMCPY3D*, CUcontext) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphAddMemcpyNode)(phGraphNode, hGraph, dependencies, numDependencies, copyParams, ctx)
 *     return err
 */
  __pyx_tuple__272 = PyTuple_Pack(1, __pyx_kp_u_Function_cuGraphAddMemcpyNode_no); if (unlikely(!__pyx_tuple__272)) __PYX_ERR(0, 5065, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__272);
  __Pyx_GIVEREF(__pyx_tuple__272);

  /* "cuda/_cuda/ccuda.pyx":5074
 *     if __cuGraphMemcpyNodeGetParams == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuGraphMemcpyNodeGetParams" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUgraphNode, CUDA_MEMCPY3D*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphMemcpyNodeGetParams)(hNode, nodeParams)
 *     return err
 */
  __pyx_tuple__273 = PyTuple_Pack(1, __pyx_kp_u_Function_cuGraphMemcpyNodeGetPar); if (unlikely(!__pyx_tuple__273)) __PYX_ERR(0, 5074, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__273);
  __Pyx_GIVEREF(__pyx_tuple__273);

  /* "cuda/_cuda/ccuda.pyx":5083
 *     if __cuGraphMemcpyNodeSetParams == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuGraphMemcpyNodeSetParams" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUgraphNode, const CUDA_MEMCPY3D*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphMemcpyNodeSetParams)(hNode, nodeParams)
 *     return err
 */
  __pyx_tuple__274 = PyTuple_Pack(1, __pyx_kp_u_Function_cuGraphMemcpyNodeSetPar); if (unlikely(!__pyx_tuple__274)) __PYX_ERR(0, 5083, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__274);
  __Pyx_GIVEREF(__pyx_tuple__274);

  /* "cuda/_cuda/ccuda.pyx":5092
 *     if __cuGraphAddMemsetNode == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuGraphAddMemsetNode" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUgraphNode*, CUgraph, const CUgraphNode*, size_t, const CUDA_MEMSET_NODE_PARAMS*, CUcontext) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphAddMemsetNode)(phGraphNode, hGraph, dependencies, numDependencies, memsetParams, ctx)
 *     return err
 */
  __pyx_tuple__275 = PyTuple_Pack(1, __pyx_kp_u_Function_cuGraphAddMemsetNode_no); if (unlikely(!__pyx_tuple__275)) __PYX_ERR(0, 5092, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__275);
  __Pyx_GIVEREF(__pyx_tuple__275);

  /* "cuda/_cuda/ccuda.pyx":5101
 *     if __cuGraphMemsetNodeGetParams == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuGraphMemsetNodeGetParams" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUgraphNode, CUDA_MEMSET_NODE_PARAMS*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphMemsetNodeGetParams)(hNode, nodeParams)
 *     return err
 */
  __pyx_tuple__276 = PyTuple_Pack(1, __pyx_kp_u_Function_cuGraphMemsetNodeGetPar); if (unlikely(!__pyx_tuple__276)) __PYX_ERR(0, 5101, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__276);
  __Pyx_GIVEREF(__pyx_tuple__276);

  /* "cuda/_cuda/ccuda.pyx":5110
 *     if __cuGraphMemsetNodeSetParams == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuGraphMemsetNodeSetParams" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUgraphNode, const CUDA_MEMSET_NODE_PARAMS*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphMemsetNodeSetParams)(hNode, nodeParams)
 *     return err
 */
  __pyx_tuple__277 = PyTuple_Pack(1, __pyx_kp_u_Function_cuGraphMemsetNodeSetPar); if (unlikely(!__pyx_tuple__277)) __PYX_ERR(0, 5110, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__277);
  __Pyx_GIVEREF(__pyx_tuple__277);

  /* "cuda/_cuda/ccuda.pyx":5119
 *     if __cuGraphAddHostNode == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuGraphAddHostNode" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUgraphNode*, CUgraph, const CUgraphNode*, size_t, const CUDA_HOST_NODE_PARAMS*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphAddHostNode)(phGraphNode, hGraph, dependencies, numDependencies, nodeParams)
 *     return err
 */
  __pyx_tuple__278 = PyTuple_Pack(1, __pyx_kp_u_Function_cuGraphAddHostNode_not); if (unlikely(!__pyx_tuple__278)) __PYX_ERR(0, 5119, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__278);
  __Pyx_GIVEREF(__pyx_tuple__278);

  /* "cuda/_cuda/ccuda.pyx":5128
 *     if __cuGraphHostNodeGetParams == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuGraphHostNodeGetParams" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUgraphNode, CUDA_HOST_NODE_PARAMS*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphHostNodeGetParams)(hNode, nodeParams)
 *     return err
 */
  __pyx_tuple__279 = PyTuple_Pack(1, __pyx_kp_u_Function_cuGraphHostNodeGetParam); if (unlikely(!__pyx_tuple__279)) __PYX_ERR(0, 5128, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__279);
  __Pyx_GIVEREF(__pyx_tuple__279);

  /* "cuda/_cuda/ccuda.pyx":5137
 *     if __cuGraphHostNodeSetParams == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuGraphHostNodeSetParams" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUgraphNode, const CUDA_HOST_NODE_PARAMS*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphHostNodeSetParams)(hNode, nodeParams)
 *     return err
 */
  __pyx_tuple__280 = PyTuple_Pack(1, __pyx_kp_u_Function_cuGraphHostNodeSetParam); if (unlikely(!__pyx_tuple__280)) __PYX_ERR(0, 5137, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__280);
  __Pyx_GIVEREF(__pyx_tuple__280);

  /* "cuda/_cuda/ccuda.pyx":5146
 *     if __cuGraphAddChildGraphNode == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuGraphAddChildGraphNode" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUgraphNode*, CUgraph, const CUgraphNode*, size_t, CUgraph) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphAddChildGraphNode)(phGraphNode, hGraph, dependencies, numDependencies, childGraph)
 *     return err
 */
  __pyx_tuple__281 = PyTuple_Pack(1, __pyx_kp_u_Function_cuGraphAddChildGraphNod); if (unlikely(!__pyx_tuple__281)) __PYX_ERR(0, 5146, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__281);
  __Pyx_GIVEREF(__pyx_tuple__281);

  /* "cuda/_cuda/ccuda.pyx":5155
 *     if __cuGraphChildGraphNodeGetGraph == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuGraphChildGraphNodeGetGraph" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUgraphNode, CUgraph*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphChildGraphNodeGetGraph)(hNode, phGraph)
 *     return err
 */
  __pyx_tuple__282 = PyTuple_Pack(1, __pyx_kp_u_Function_cuGraphChildGraphNodeGe); if (unlikely(!__pyx_tuple__282)) __PYX_ERR(0, 5155, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__282);
  __Pyx_GIVEREF(__pyx_tuple__282);

  /* "cuda/_cuda/ccuda.pyx":5164
 *     if __cuGraphAddEmptyNode == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuGraphAddEmptyNode" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUgraphNode*, CUgraph, const CUgraphNode*, size_t) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphAddEmptyNode)(phGraphNode, hGraph, dependencies, numDependencies)
 *     return err
 */
  __pyx_tuple__283 = PyTuple_Pack(1, __pyx_kp_u_Function_cuGraphAddEmptyNode_not); if (unlikely(!__pyx_tuple__283)) __PYX_ERR(0, 5164, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__283);
  __Pyx_GIVEREF(__pyx_tuple__283);

  /* "cuda/_cuda/ccuda.pyx":5173
 *     if __cuGraphAddEventRecordNode == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuGraphAddEventRecordNode" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUgraphNode*, CUgraph, const CUgraphNode*, size_t, CUevent) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphAddEventRecordNode)(phGraphNode, hGraph, dependencies, numDependencies, event)
 *     return err
 */
  __pyx_tuple__284 = PyTuple_Pack(1, __pyx_kp_u_Function_cuGraphAddEventRecordNo); if (unlikely(!__pyx_tuple__284)) __PYX_ERR(0, 5173, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__284);
  __Pyx_GIVEREF(__pyx_tuple__284);

  /* "cuda/_cuda/ccuda.pyx":5182
 *     if __cuGraphEventRecordNodeGetEvent == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuGraphEventRecordNodeGetEvent" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUgraphNode, CUevent*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphEventRecordNodeGetEvent)(hNode, event_out)
 *     return err
 */
  __pyx_tuple__285 = PyTuple_Pack(1, __pyx_kp_u_Function_cuGraphEventRecordNodeG); if (unlikely(!__pyx_tuple__285)) __PYX_ERR(0, 5182, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__285);
  __Pyx_GIVEREF(__pyx_tuple__285);

  /* "cuda/_cuda/ccuda.pyx":5191
 *     if __cuGraphEventRecordNodeSetEvent == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuGraphEventRecordNodeSetEvent" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUgraphNode, CUevent) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphEventRecordNodeSetEvent)(hNode, event)
 *     return err
 */
  __pyx_tuple__286 = PyTuple_Pack(1, __pyx_kp_u_Function_cuGraphEventRecordNodeS); if (unlikely(!__pyx_tuple__286)) __PYX_ERR(0, 5191, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__286);
  __Pyx_GIVEREF(__pyx_tuple__286);

  /* "cuda/_cuda/ccuda.pyx":5200
 *     if __cuGraphAddEventWaitNode == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuGraphAddEventWaitNode" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUgraphNode*, CUgraph, const CUgraphNode*, size_t, CUevent) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphAddEventWaitNode)(phGraphNode, hGraph, dependencies, numDependencies, event)
 *     return err
 */
  __pyx_tuple__287 = PyTuple_Pack(1, __pyx_kp_u_Function_cuGraphAddEventWaitNode); if (unlikely(!__pyx_tuple__287)) __PYX_ERR(0, 5200, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__287);
  __Pyx_GIVEREF(__pyx_tuple__287);

  /* "cuda/_cuda/ccuda.pyx":5209
 *     if __cuGraphEventWaitNodeGetEvent == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuGraphEventWaitNodeGetEvent" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUgraphNode, CUevent*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphEventWaitNodeGetEvent)(hNode, event_out)
 *     return err
 */
  __pyx_tuple__288 = PyTuple_Pack(1, __pyx_kp_u_Function_cuGraphEventWaitNodeGet); if (unlikely(!__pyx_tuple__288)) __PYX_ERR(0, 5209, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__288);
  __Pyx_GIVEREF(__pyx_tuple__288);

  /* "cuda/_cuda/ccuda.pyx":5218
 *     if __cuGraphEventWaitNodeSetEvent == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuGraphEventWaitNodeSetEvent" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUgraphNode, CUevent) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphEventWaitNodeSetEvent)(hNode, event)
 *     return err
 */
  __pyx_tuple__289 = PyTuple_Pack(1, __pyx_kp_u_Function_cuGraphEventWaitNodeSet); if (unlikely(!__pyx_tuple__289)) __PYX_ERR(0, 5218, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__289);
  __Pyx_GIVEREF(__pyx_tuple__289);

  /* "cuda/_cuda/ccuda.pyx":5227
 *     if __cuGraphAddExternalSemaphoresSignalNode == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuGraphAddExternalSemaphoresSignalNode" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUgraphNode*, CUgraph, const CUgraphNode*, size_t, const CUDA_EXT_SEM_SIGNAL_NODE_PARAMS*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphAddExternalSemaphoresSignalNode)(phGraphNode, hGraph, dependencies, numDependencies, nodeParams)
 *     return err
 */
  __pyx_tuple__290 = PyTuple_Pack(1, __pyx_kp_u_Function_cuGraphAddExternalSemap); if (unlikely(!__pyx_tuple__290)) __PYX_ERR(0, 5227, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__290);
  __Pyx_GIVEREF(__pyx_tuple__290);

  /* "cuda/_cuda/ccuda.pyx":5236
 *     if __cuGraphExternalSemaphoresSignalNodeGetParams == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuGraphExternalSemaphoresSignalNodeGetParams" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUgraphNode, CUDA_EXT_SEM_SIGNAL_NODE_PARAMS*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphExternalSemaphoresSignalNodeGetParams)(hNode, params_out)
 *     return err
 */
  __pyx_tuple__291 = PyTuple_Pack(1, __pyx_kp_u_Function_cuGraphExternalSemaphor); if (unlikely(!__pyx_tuple__291)) __PYX_ERR(0, 5236, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__291);
  __Pyx_GIVEREF(__pyx_tuple__291);

  /* "cuda/_cuda/ccuda.pyx":5245
 *     if __cuGraphExternalSemaphoresSignalNodeSetParams == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuGraphExternalSemaphoresSignalNodeSetParams" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUgraphNode, const CUDA_EXT_SEM_SIGNAL_NODE_PARAMS*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphExternalSemaphoresSignalNodeSetParams)(hNode, nodeParams)
 *     return err
 */
  __pyx_tuple__292 = PyTuple_Pack(1, __pyx_kp_u_Function_cuGraphExternalSemaphor_2); if (unlikely(!__pyx_tuple__292)) __PYX_ERR(0, 5245, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__292);
  __Pyx_GIVEREF(__pyx_tuple__292);

  /* "cuda/_cuda/ccuda.pyx":5254
 *     if __cuGraphAddExternalSemaphoresWaitNode == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuGraphAddExternalSemaphoresWaitNode" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUgraphNode*, CUgraph, const CUgraphNode*, size_t, const CUDA_EXT_SEM_WAIT_NODE_PARAMS*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphAddExternalSemaphoresWaitNode)(phGraphNode, hGraph, dependencies, numDependencies, nodeParams)
 *     return err
 */
  __pyx_tuple__293 = PyTuple_Pack(1, __pyx_kp_u_Function_cuGraphAddExternalSemap_2); if (unlikely(!__pyx_tuple__293)) __PYX_ERR(0, 5254, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__293);
  __Pyx_GIVEREF(__pyx_tuple__293);

  /* "cuda/_cuda/ccuda.pyx":5263
 *     if __cuGraphExternalSemaphoresWaitNodeGetParams == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuGraphExternalSemaphoresWaitNodeGetParams" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUgraphNode, CUDA_EXT_SEM_WAIT_NODE_PARAMS*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphExternalSemaphoresWaitNodeGetParams)(hNode, params_out)
 *     return err
 */
  __pyx_tuple__294 = PyTuple_Pack(1, __pyx_kp_u_Function_cuGraphExternalSemaphor_3); if (unlikely(!__pyx_tuple__294)) __PYX_ERR(0, 5263, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__294);
  __Pyx_GIVEREF(__pyx_tuple__294);

  /* "cuda/_cuda/ccuda.pyx":5272
 *     if __cuGraphExternalSemaphoresWaitNodeSetParams == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuGraphExternalSemaphoresWaitNodeSetParams" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUgraphNode, const CUDA_EXT_SEM_WAIT_NODE_PARAMS*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphExternalSemaphoresWaitNodeSetParams)(hNode, nodeParams)
 *     return err
 */
  __pyx_tuple__295 = PyTuple_Pack(1, __pyx_kp_u_Function_cuGraphExternalSemaphor_4); if (unlikely(!__pyx_tuple__295)) __PYX_ERR(0, 5272, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__295);
  __Pyx_GIVEREF(__pyx_tuple__295);

  /* "cuda/_cuda/ccuda.pyx":5281
 *     if __cuGraphAddBatchMemOpNode == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuGraphAddBatchMemOpNode" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUgraphNode*, CUgraph, const CUgraphNode*, size_t, const CUDA_BATCH_MEM_OP_NODE_PARAMS*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphAddBatchMemOpNode)(phGraphNode, hGraph, dependencies, numDependencies, nodeParams)
 *     return err
 */
  __pyx_tuple__296 = PyTuple_Pack(1, __pyx_kp_u_Function_cuGraphAddBatchMemOpNod); if (unlikely(!__pyx_tuple__296)) __PYX_ERR(0, 5281, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__296);
  __Pyx_GIVEREF(__pyx_tuple__296);

  /* "cuda/_cuda/ccuda.pyx":5290
 *     if __cuGraphBatchMemOpNodeGetParams == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuGraphBatchMemOpNodeGetParams" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUgraphNode, CUDA_BATCH_MEM_OP_NODE_PARAMS*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphBatchMemOpNodeGetParams)(hNode, nodeParams_out)
 *     return err
 */
  __pyx_tuple__297 = PyTuple_Pack(1, __pyx_kp_u_Function_cuGraphBatchMemOpNodeGe); if (unlikely(!__pyx_tuple__297)) __PYX_ERR(0, 5290, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__297);
  __Pyx_GIVEREF(__pyx_tuple__297);

  /* "cuda/_cuda/ccuda.pyx":5299
 *     if __cuGraphBatchMemOpNodeSetParams == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuGraphBatchMemOpNodeSetParams" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUgraphNode, const CUDA_BATCH_MEM_OP_NODE_PARAMS*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphBatchMemOpNodeSetParams)(hNode, nodeParams)
 *     return err
 */
  __pyx_tuple__298 = PyTuple_Pack(1, __pyx_kp_u_Function_cuGraphBatchMemOpNodeSe); if (unlikely(!__pyx_tuple__298)) __PYX_ERR(0, 5299, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__298);
  __Pyx_GIVEREF(__pyx_tuple__298);

  /* "cuda/_cuda/ccuda.pyx":5308
 *     if __cuGraphExecBatchMemOpNodeSetParams == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuGraphExecBatchMemOpNodeSetParams" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUgraphExec, CUgraphNode, const CUDA_BATCH_MEM_OP_NODE_PARAMS*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphExecBatchMemOpNodeSetParams)(hGraphExec, hNode, nodeParams)
 *     return err
 */
  __pyx_tuple__299 = PyTuple_Pack(1, __pyx_kp_u_Function_cuGraphExecBatchMemOpNo); if (unlikely(!__pyx_tuple__299)) __PYX_ERR(0, 5308, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__299);
  __Pyx_GIVEREF(__pyx_tuple__299);

  /* "cuda/_cuda/ccuda.pyx":5317
 *     if __cuGraphAddMemAllocNode == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuGraphAddMemAllocNode" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUgraphNode*, CUgraph, const CUgraphNode*, size_t, CUDA_MEM_ALLOC_NODE_PARAMS*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphAddMemAllocNode)(phGraphNode, hGraph, dependencies, numDependencies, nodeParams)
 *     return err
 */
  __pyx_tuple__300 = PyTuple_Pack(1, __pyx_kp_u_Function_cuGraphAddMemAllocNode); if (unlikely(!__pyx_tuple__300)) __PYX_ERR(0, 5317, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__300);
  __Pyx_GIVEREF(__pyx_tuple__300);

  /* "cuda/_cuda/ccuda.pyx":5326
 *     if __cuGraphMemAllocNodeGetParams == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuGraphMemAllocNodeGetParams" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUgraphNode, CUDA_MEM_ALLOC_NODE_PARAMS*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphMemAllocNodeGetParams)(hNode, params_out)
 *     return err
 */
  __pyx_tuple__301 = PyTuple_Pack(1, __pyx_kp_u_Function_cuGraphMemAllocNodeGetP); if (unlikely(!__pyx_tuple__301)) __PYX_ERR(0, 5326, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__301);
  __Pyx_GIVEREF(__pyx_tuple__301);

  /* "cuda/_cuda/ccuda.pyx":5335
 *     if __cuGraphAddMemFreeNode == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuGraphAddMemFreeNode" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUgraphNode*, CUgraph, const CUgraphNode*, size_t, CUdeviceptr) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphAddMemFreeNode)(phGraphNode, hGraph, dependencies, numDependencies, dptr)
 *     return err
 */
  __pyx_tuple__302 = PyTuple_Pack(1, __pyx_kp_u_Function_cuGraphAddMemFreeNode_n); if (unlikely(!__pyx_tuple__302)) __PYX_ERR(0, 5335, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__302);
  __Pyx_GIVEREF(__pyx_tuple__302);

  /* "cuda/_cuda/ccuda.pyx":5344
 *     if __cuGraphMemFreeNodeGetParams == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuGraphMemFreeNodeGetParams" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUgraphNode, CUdeviceptr*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphMemFreeNodeGetParams)(hNode, dptr_out)
 *     return err
 */
  __pyx_tuple__303 = PyTuple_Pack(1, __pyx_kp_u_Function_cuGraphMemFreeNodeGetPa); if (unlikely(!__pyx_tuple__303)) __PYX_ERR(0, 5344, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__303);
  __Pyx_GIVEREF(__pyx_tuple__303);

  /* "cuda/_cuda/ccuda.pyx":5353
 *     if __cuDeviceGraphMemTrim == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuDeviceGraphMemTrim" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUdevice) except ?CUDA_ERROR_NOT_FOUND nogil> __cuDeviceGraphMemTrim)(device)
 *     return err
 */
  __pyx_tuple__304 = PyTuple_Pack(1, __pyx_kp_u_Function_cuDeviceGraphMemTrim_no); if (unlikely(!__pyx_tuple__304)) __PYX_ERR(0, 5353, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__304);
  __Pyx_GIVEREF(__pyx_tuple__304);

  /* "cuda/_cuda/ccuda.pyx":5362
 *     if __cuDeviceGetGraphMemAttribute == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuDeviceGetGraphMemAttribute" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUdevice, CUgraphMem_attribute, void*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuDeviceGetGraphMemAttribute)(device, attr, value)
 *     return err
 */
  __pyx_tuple__305 = PyTuple_Pack(1, __pyx_kp_u_Function_cuDeviceGetGraphMemAttr); if (unlikely(!__pyx_tuple__305)) __PYX_ERR(0, 5362, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__305);
  __Pyx_GIVEREF(__pyx_tuple__305);

  /* "cuda/_cuda/ccuda.pyx":5371
 *     if __cuDeviceSetGraphMemAttribute == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuDeviceSetGraphMemAttribute" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUdevice, CUgraphMem_attribute, void*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuDeviceSetGraphMemAttribute)(device, attr, value)
 *     return err
 */
  __pyx_tuple__306 = PyTuple_Pack(1, __pyx_kp_u_Function_cuDeviceSetGraphMemAttr); if (unlikely(!__pyx_tuple__306)) __PYX_ERR(0, 5371, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__306);
  __Pyx_GIVEREF(__pyx_tuple__306);

  /* "cuda/_cuda/ccuda.pyx":5380
 *     if __cuGraphClone == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuGraphClone" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUgraph*, CUgraph) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphClone)(phGraphClone, originalGraph)
 *     return err
 */
  __pyx_tuple__307 = PyTuple_Pack(1, __pyx_kp_u_Function_cuGraphClone_not_found); if (unlikely(!__pyx_tuple__307)) __PYX_ERR(0, 5380, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__307);
  __Pyx_GIVEREF(__pyx_tuple__307);

  /* "cuda/_cuda/ccuda.pyx":5389
 *     if __cuGraphNodeFindInClone == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuGraphNodeFindInClone" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUgraphNode*, CUgraphNode, CUgraph) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphNodeFindInClone)(phNode, hOriginalNode, hClonedGraph)
 *     return err
 */
  __pyx_tuple__308 = PyTuple_Pack(1, __pyx_kp_u_Function_cuGraphNodeFindInClone); if (unlikely(!__pyx_tuple__308)) __PYX_ERR(0, 5389, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__308);
  __Pyx_GIVEREF(__pyx_tuple__308);

  /* "cuda/_cuda/ccuda.pyx":5398
 *     if __cuGraphNodeGetType == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuGraphNodeGetType" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUgraphNode, CUgraphNodeType*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphNodeGetType)(hNode, typename)
 *     return err
 */
  __pyx_tuple__309 = PyTuple_Pack(1, __pyx_kp_u_Function_cuGraphNodeGetType_not); if (unlikely(!__pyx_tuple__309)) __PYX_ERR(0, 5398, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__309);
  __Pyx_GIVEREF(__pyx_tuple__309);

  /* "cuda/_cuda/ccuda.pyx":5407
 *     if __cuGraphGetNodes == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuGraphGetNodes" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUgraph, CUgraphNode*, size_t*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphGetNodes)(hGraph, nodes, numNodes)
 *     return err
 */
  __pyx_tuple__310 = PyTuple_Pack(1, __pyx_kp_u_Function_cuGraphGetNodes_not_fou); if (unlikely(!__pyx_tuple__310)) __PYX_ERR(0, 5407, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__310);
  __Pyx_GIVEREF(__pyx_tuple__310);

  /* "cuda/_cuda/ccuda.pyx":5416
 *     if __cuGraphGetRootNodes == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuGraphGetRootNodes" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUgraph, CUgraphNode*, size_t*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphGetRootNodes)(hGraph, rootNodes, numRootNodes)
 *     return err
 */
  __pyx_tuple__311 = PyTuple_Pack(1, __pyx_kp_u_Function_cuGraphGetRootNodes_not); if (unlikely(!__pyx_tuple__311)) __PYX_ERR(0, 5416, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__311);
  __Pyx_GIVEREF(__pyx_tuple__311);

  /* "cuda/_cuda/ccuda.pyx":5425
 *     if __cuGraphGetEdges == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuGraphGetEdges" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUgraph, CUgraphNode*, CUgraphNode*, size_t*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphGetEdges)(hGraph, from_, to, numEdges)
 *     return err
 */
  __pyx_tuple__312 = PyTuple_Pack(1, __pyx_kp_u_Function_cuGraphGetEdges_not_fou); if (unlikely(!__pyx_tuple__312)) __PYX_ERR(0, 5425, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__312);
  __Pyx_GIVEREF(__pyx_tuple__312);

  /* "cuda/_cuda/ccuda.pyx":5434
 *     if __cuGraphGetEdges_v2 == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuGraphGetEdges_v2" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUgraph, CUgraphNode*, CUgraphNode*, CUgraphEdgeData*, size_t*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphGetEdges_v2)(hGraph, from_, to, edgeData, numEdges)
 *     return err
 */
  __pyx_tuple__313 = PyTuple_Pack(1, __pyx_kp_u_Function_cuGraphGetEdges_v2_not); if (unlikely(!__pyx_tuple__313)) __PYX_ERR(0, 5434, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__313);
  __Pyx_GIVEREF(__pyx_tuple__313);

  /* "cuda/_cuda/ccuda.pyx":5443
 *     if __cuGraphNodeGetDependencies == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuGraphNodeGetDependencies" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUgraphNode, CUgraphNode*, size_t*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphNodeGetDependencies)(hNode, dependencies, numDependencies)
 *     return err
 */
  __pyx_tuple__314 = PyTuple_Pack(1, __pyx_kp_u_Function_cuGraphNodeGetDependenc); if (unlikely(!__pyx_tuple__314)) __PYX_ERR(0, 5443, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__314);
  __Pyx_GIVEREF(__pyx_tuple__314);

  /* "cuda/_cuda/ccuda.pyx":5452
 *     if __cuGraphNodeGetDependencies_v2 == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuGraphNodeGetDependencies_v2" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUgraphNode, CUgraphNode*, CUgraphEdgeData*, size_t*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphNodeGetDependencies_v2)(hNode, dependencies, edgeData, numDependencies)
 *     return err
 */
  __pyx_tuple__315 = PyTuple_Pack(1, __pyx_kp_u_Function_cuGraphNodeGetDependenc_2); if (unlikely(!__pyx_tuple__315)) __PYX_ERR(0, 5452, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__315);
  __Pyx_GIVEREF(__pyx_tuple__315);

  /* "cuda/_cuda/ccuda.pyx":5461
 *     if __cuGraphNodeGetDependentNodes == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuGraphNodeGetDependentNodes" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUgraphNode, CUgraphNode*, size_t*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphNodeGetDependentNodes)(hNode, dependentNodes, numDependentNodes)
 *     return err
 */
  __pyx_tuple__316 = PyTuple_Pack(1, __pyx_kp_u_Function_cuGraphNodeGetDependent); if (unlikely(!__pyx_tuple__316)) __PYX_ERR(0, 5461, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__316);
  __Pyx_GIVEREF(__pyx_tuple__316);

  /* "cuda/_cuda/ccuda.pyx":5470
 *     if __cuGraphNodeGetDependentNodes_v2 == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuGraphNodeGetDependentNodes_v2" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUgraphNode, CUgraphNode*, CUgraphEdgeData*, size_t*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphNodeGetDependentNodes_v2)(hNode, dependentNodes, edgeData, numDependentNodes)
 *     return err
 */
  __pyx_tuple__317 = PyTuple_Pack(1, __pyx_kp_u_Function_cuGraphNodeGetDependent_2); if (unlikely(!__pyx_tuple__317)) __PYX_ERR(0, 5470, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__317);
  __Pyx_GIVEREF(__pyx_tuple__317);

  /* "cuda/_cuda/ccuda.pyx":5479
 *     if __cuGraphAddDependencies == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuGraphAddDependencies" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUgraph, const CUgraphNode*, const CUgraphNode*, size_t) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphAddDependencies)(hGraph, from_, to, numDependencies)
 *     return err
 */
  __pyx_tuple__318 = PyTuple_Pack(1, __pyx_kp_u_Function_cuGraphAddDependencies); if (unlikely(!__pyx_tuple__318)) __PYX_ERR(0, 5479, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__318);
  __Pyx_GIVEREF(__pyx_tuple__318);

  /* "cuda/_cuda/ccuda.pyx":5488
 *     if __cuGraphAddDependencies_v2 == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuGraphAddDependencies_v2" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUgraph, const CUgraphNode*, const CUgraphNode*, const CUgraphEdgeData*, size_t) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphAddDependencies_v2)(hGraph, from_, to, edgeData, numDependencies)
 *     return err
 */
  __pyx_tuple__319 = PyTuple_Pack(1, __pyx_kp_u_Function_cuGraphAddDependencies_2); if (unlikely(!__pyx_tuple__319)) __PYX_ERR(0, 5488, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__319);
  __Pyx_GIVEREF(__pyx_tuple__319);

  /* "cuda/_cuda/ccuda.pyx":5497
 *     if __cuGraphRemoveDependencies == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuGraphRemoveDependencies" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUgraph, const CUgraphNode*, const CUgraphNode*, size_t) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphRemoveDependencies)(hGraph, from_, to, numDependencies)
 *     return err
 */
  __pyx_tuple__320 = PyTuple_Pack(1, __pyx_kp_u_Function_cuGraphRemoveDependenci); if (unlikely(!__pyx_tuple__320)) __PYX_ERR(0, 5497, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__320);
  __Pyx_GIVEREF(__pyx_tuple__320);

  /* "cuda/_cuda/ccuda.pyx":5506
 *     if __cuGraphRemoveDependencies_v2 == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuGraphRemoveDependencies_v2" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUgraph, const CUgraphNode*, const CUgraphNode*, const CUgraphEdgeData*, size_t) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphRemoveDependencies_v2)(hGraph, from_, to, edgeData, numDependencies)
 *     return err
 */
  __pyx_tuple__321 = PyTuple_Pack(1, __pyx_kp_u_Function_cuGraphRemoveDependenci_2); if (unlikely(!__pyx_tuple__321)) __PYX_ERR(0, 5506, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__321);
  __Pyx_GIVEREF(__pyx_tuple__321);

  /* "cuda/_cuda/ccuda.pyx":5515
 *     if __cuGraphDestroyNode == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuGraphDestroyNode" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUgraphNode) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphDestroyNode)(hNode)
 *     return err
 */
  __pyx_tuple__322 = PyTuple_Pack(1, __pyx_kp_u_Function_cuGraphDestroyNode_not); if (unlikely(!__pyx_tuple__322)) __PYX_ERR(0, 5515, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__322);
  __Pyx_GIVEREF(__pyx_tuple__322);

  /* "cuda/_cuda/ccuda.pyx":5524
 *     if __cuGraphInstantiateWithFlags == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuGraphInstantiateWithFlags" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUgraphExec*, CUgraph, unsigned long long) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphInstantiateWithFlags)(phGraphExec, hGraph, flags)
 *     return err
 */
  __pyx_tuple__323 = PyTuple_Pack(1, __pyx_kp_u_Function_cuGraphInstantiateWithF); if (unlikely(!__pyx_tuple__323)) __PYX_ERR(0, 5524, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__323);
  __Pyx_GIVEREF(__pyx_tuple__323);

  /* "cuda/_cuda/ccuda.pyx":5533
 *     if __cuGraphInstantiateWithParams == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuGraphInstantiateWithParams" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUgraphExec*, CUgraph, CUDA_GRAPH_INSTANTIATE_PARAMS*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphInstantiateWithParams)(phGraphExec, hGraph, instantiateParams)
 *     return err
 */
  __pyx_tuple__324 = PyTuple_Pack(1, __pyx_kp_u_Function_cuGraphInstantiateWithP); if (unlikely(!__pyx_tuple__324)) __PYX_ERR(0, 5533, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__324);
  __Pyx_GIVEREF(__pyx_tuple__324);

  /* "cuda/_cuda/ccuda.pyx":5542
 *     if __cuGraphExecGetFlags == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuGraphExecGetFlags" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUgraphExec, cuuint64_t*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphExecGetFlags)(hGraphExec, flags)
 *     return err
 */
  __pyx_tuple__325 = PyTuple_Pack(1, __pyx_kp_u_Function_cuGraphExecGetFlags_not); if (unlikely(!__pyx_tuple__325)) __PYX_ERR(0, 5542, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__325);
  __Pyx_GIVEREF(__pyx_tuple__325);

  /* "cuda/_cuda/ccuda.pyx":5551
 *     if __cuGraphExecKernelNodeSetParams_v2 == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuGraphExecKernelNodeSetParams_v2" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUgraphExec, CUgraphNode, const CUDA_KERNEL_NODE_PARAMS*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphExecKernelNodeSetParams_v2)(hGraphExec, hNode, nodeParams)
 *     return err
 */
  __pyx_tuple__326 = PyTuple_Pack(1, __pyx_kp_u_Function_cuGraphExecKernelNodeSe); if (unlikely(!__pyx_tuple__326)) __PYX_ERR(0, 5551, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__326);
  __Pyx_GIVEREF(__pyx_tuple__326);

  /* "cuda/_cuda/ccuda.pyx":5560
 *     if __cuGraphExecMemcpyNodeSetParams == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuGraphExecMemcpyNodeSetParams" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUgraphExec, CUgraphNode, const CUDA_MEMCPY3D*, CUcontext) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphExecMemcpyNodeSetParams)(hGraphExec, hNode, copyParams, ctx)
 *     return err
 */
  __pyx_tuple__327 = PyTuple_Pack(1, __pyx_kp_u_Function_cuGraphExecMemcpyNodeSe); if (unlikely(!__pyx_tuple__327)) __PYX_ERR(0, 5560, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__327);
  __Pyx_GIVEREF(__pyx_tuple__327);

  /* "cuda/_cuda/ccuda.pyx":5569
 *     if __cuGraphExecMemsetNodeSetParams == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuGraphExecMemsetNodeSetParams" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUgraphExec, CUgraphNode, const CUDA_MEMSET_NODE_PARAMS*, CUcontext) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphExecMemsetNodeSetParams)(hGraphExec, hNode, memsetParams, ctx)
 *     return err
 */
  __pyx_tuple__328 = PyTuple_Pack(1, __pyx_kp_u_Function_cuGraphExecMemsetNodeSe); if (unlikely(!__pyx_tuple__328)) __PYX_ERR(0, 5569, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__328);
  __Pyx_GIVEREF(__pyx_tuple__328);

  /* "cuda/_cuda/ccuda.pyx":5578
 *     if __cuGraphExecHostNodeSetParams == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuGraphExecHostNodeSetParams" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUgraphExec, CUgraphNode, const CUDA_HOST_NODE_PARAMS*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphExecHostNodeSetParams)(hGraphExec, hNode, nodeParams)
 *     return err
 */
  __pyx_tuple__329 = PyTuple_Pack(1, __pyx_kp_u_Function_cuGraphExecHostNodeSetP); if (unlikely(!__pyx_tuple__329)) __PYX_ERR(0, 5578, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__329);
  __Pyx_GIVEREF(__pyx_tuple__329);

  /* "cuda/_cuda/ccuda.pyx":5587
 *     if __cuGraphExecChildGraphNodeSetParams == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuGraphExecChildGraphNodeSetParams" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUgraphExec, CUgraphNode, CUgraph) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphExecChildGraphNodeSetParams)(hGraphExec, hNode, childGraph)
 *     return err
 */
  __pyx_tuple__330 = PyTuple_Pack(1, __pyx_kp_u_Function_cuGraphExecChildGraphNo); if (unlikely(!__pyx_tuple__330)) __PYX_ERR(0, 5587, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__330);
  __Pyx_GIVEREF(__pyx_tuple__330);

  /* "cuda/_cuda/ccuda.pyx":5596
 *     if __cuGraphExecEventRecordNodeSetEvent == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuGraphExecEventRecordNodeSetEvent" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUgraphExec, CUgraphNode, CUevent) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphExecEventRecordNodeSetEvent)(hGraphExec, hNode, event)
 *     return err
 */
  __pyx_tuple__331 = PyTuple_Pack(1, __pyx_kp_u_Function_cuGraphExecEventRecordN); if (unlikely(!__pyx_tuple__331)) __PYX_ERR(0, 5596, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__331);
  __Pyx_GIVEREF(__pyx_tuple__331);

  /* "cuda/_cuda/ccuda.pyx":5605
 *     if __cuGraphExecEventWaitNodeSetEvent == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuGraphExecEventWaitNodeSetEvent" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUgraphExec, CUgraphNode, CUevent) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphExecEventWaitNodeSetEvent)(hGraphExec, hNode, event)
 *     return err
 */
  __pyx_tuple__332 = PyTuple_Pack(1, __pyx_kp_u_Function_cuGraphExecEventWaitNod); if (unlikely(!__pyx_tuple__332)) __PYX_ERR(0, 5605, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__332);
  __Pyx_GIVEREF(__pyx_tuple__332);

  /* "cuda/_cuda/ccuda.pyx":5614
 *     if __cuGraphExecExternalSemaphoresSignalNodeSetParams == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuGraphExecExternalSemaphoresSignalNodeSetParams" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUgraphExec, CUgraphNode, const CUDA_EXT_SEM_SIGNAL_NODE_PARAMS*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphExecExternalSemaphoresSignalNodeSetParams)(hGraphExec, hNode, nodeParams)
 *     return err
 */
  __pyx_tuple__333 = PyTuple_Pack(1, __pyx_kp_u_Function_cuGraphExecExternalSema); if (unlikely(!__pyx_tuple__333)) __PYX_ERR(0, 5614, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__333);
  __Pyx_GIVEREF(__pyx_tuple__333);

  /* "cuda/_cuda/ccuda.pyx":5623
 *     if __cuGraphExecExternalSemaphoresWaitNodeSetParams == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuGraphExecExternalSemaphoresWaitNodeSetParams" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUgraphExec, CUgraphNode, const CUDA_EXT_SEM_WAIT_NODE_PARAMS*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphExecExternalSemaphoresWaitNodeSetParams)(hGraphExec, hNode, nodeParams)
 *     return err
 */
  __pyx_tuple__334 = PyTuple_Pack(1, __pyx_kp_u_Function_cuGraphExecExternalSema_2); if (unlikely(!__pyx_tuple__334)) __PYX_ERR(0, 5623, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__334);
  __Pyx_GIVEREF(__pyx_tuple__334);

  /* "cuda/_cuda/ccuda.pyx":5632
 *     if __cuGraphNodeSetEnabled == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuGraphNodeSetEnabled" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUgraphExec, CUgraphNode, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphNodeSetEnabled)(hGraphExec, hNode, isEnabled)
 *     return err
 */
  __pyx_tuple__335 = PyTuple_Pack(1, __pyx_kp_u_Function_cuGraphNodeSetEnabled_n); if (unlikely(!__pyx_tuple__335)) __PYX_ERR(0, 5632, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__335);
  __Pyx_GIVEREF(__pyx_tuple__335);

  /* "cuda/_cuda/ccuda.pyx":5641
 *     if __cuGraphNodeGetEnabled == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuGraphNodeGetEnabled" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUgraphExec, CUgraphNode, unsigned int*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphNodeGetEnabled)(hGraphExec, hNode, isEnabled)
 *     return err
 */
  __pyx_tuple__336 = PyTuple_Pack(1, __pyx_kp_u_Function_cuGraphNodeGetEnabled_n); if (unlikely(!__pyx_tuple__336)) __PYX_ERR(0, 5641, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__336);
  __Pyx_GIVEREF(__pyx_tuple__336);

  /* "cuda/_cuda/ccuda.pyx":5650
 *     if __cuGraphUpload == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuGraphUpload" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUgraphExec, CUstream) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphUpload)(hGraphExec, hStream)
 *     return err
 */
  __pyx_tuple__337 = PyTuple_Pack(1, __pyx_kp_u_Function_cuGraphUpload_not_found); if (unlikely(!__pyx_tuple__337)) __PYX_ERR(0, 5650, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__337);
  __Pyx_GIVEREF(__pyx_tuple__337);

  /* "cuda/_cuda/ccuda.pyx":5659
 *     if __cuGraphLaunch == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuGraphLaunch" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUgraphExec, CUstream) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphLaunch)(hGraphExec, hStream)
 *     return err
 */
  __pyx_tuple__338 = PyTuple_Pack(1, __pyx_kp_u_Function_cuGraphLaunch_not_found); if (unlikely(!__pyx_tuple__338)) __PYX_ERR(0, 5659, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__338);
  __Pyx_GIVEREF(__pyx_tuple__338);

  /* "cuda/_cuda/ccuda.pyx":5668
 *     if __cuGraphExecDestroy == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuGraphExecDestroy" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUgraphExec) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphExecDestroy)(hGraphExec)
 *     return err
 */
  __pyx_tuple__339 = PyTuple_Pack(1, __pyx_kp_u_Function_cuGraphExecDestroy_not); if (unlikely(!__pyx_tuple__339)) __PYX_ERR(0, 5668, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__339);
  __Pyx_GIVEREF(__pyx_tuple__339);

  /* "cuda/_cuda/ccuda.pyx":5677
 *     if __cuGraphDestroy == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuGraphDestroy" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUgraph) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphDestroy)(hGraph)
 *     return err
 */
  __pyx_tuple__340 = PyTuple_Pack(1, __pyx_kp_u_Function_cuGraphDestroy_not_foun); if (unlikely(!__pyx_tuple__340)) __PYX_ERR(0, 5677, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__340);
  __Pyx_GIVEREF(__pyx_tuple__340);

  /* "cuda/_cuda/ccuda.pyx":5686
 *     if __cuGraphExecUpdate_v2 == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuGraphExecUpdate_v2" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUgraphExec, CUgraph, CUgraphExecUpdateResultInfo*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphExecUpdate_v2)(hGraphExec, hGraph, resultInfo)
 *     return err
 */
  __pyx_tuple__341 = PyTuple_Pack(1, __pyx_kp_u_Function_cuGraphExecUpdate_v2_no); if (unlikely(!__pyx_tuple__341)) __PYX_ERR(0, 5686, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__341);
  __Pyx_GIVEREF(__pyx_tuple__341);

  /* "cuda/_cuda/ccuda.pyx":5695
 *     if __cuGraphKernelNodeCopyAttributes == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuGraphKernelNodeCopyAttributes" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUgraphNode, CUgraphNode) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphKernelNodeCopyAttributes)(dst, src)
 *     return err
 */
  __pyx_tuple__342 = PyTuple_Pack(1, __pyx_kp_u_Function_cuGraphKernelNodeCopyAt); if (unlikely(!__pyx_tuple__342)) __PYX_ERR(0, 5695, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__342);
  __Pyx_GIVEREF(__pyx_tuple__342);

  /* "cuda/_cuda/ccuda.pyx":5704
 *     if __cuGraphKernelNodeGetAttribute == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuGraphKernelNodeGetAttribute" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUgraphNode, CUkernelNodeAttrID, CUkernelNodeAttrValue*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphKernelNodeGetAttribute)(hNode, attr, value_out)
 *     return err
 */
  __pyx_tuple__343 = PyTuple_Pack(1, __pyx_kp_u_Function_cuGraphKernelNodeGetAtt); if (unlikely(!__pyx_tuple__343)) __PYX_ERR(0, 5704, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__343);
  __Pyx_GIVEREF(__pyx_tuple__343);

  /* "cuda/_cuda/ccuda.pyx":5713
 *     if __cuGraphKernelNodeSetAttribute == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuGraphKernelNodeSetAttribute" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUgraphNode, CUkernelNodeAttrID, const CUkernelNodeAttrValue*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphKernelNodeSetAttribute)(hNode, attr, value)
 *     return err
 */
  __pyx_tuple__344 = PyTuple_Pack(1, __pyx_kp_u_Function_cuGraphKernelNodeSetAtt); if (unlikely(!__pyx_tuple__344)) __PYX_ERR(0, 5713, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__344);
  __Pyx_GIVEREF(__pyx_tuple__344);

  /* "cuda/_cuda/ccuda.pyx":5722
 *     if __cuGraphDebugDotPrint == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuGraphDebugDotPrint" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUgraph, const char*, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphDebugDotPrint)(hGraph, path, flags)
 *     return err
 */
  __pyx_tuple__345 = PyTuple_Pack(1, __pyx_kp_u_Function_cuGraphDebugDotPrint_no); if (unlikely(!__pyx_tuple__345)) __PYX_ERR(0, 5722, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__345);
  __Pyx_GIVEREF(__pyx_tuple__345);

  /* "cuda/_cuda/ccuda.pyx":5731
 *     if __cuUserObjectCreate == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuUserObjectCreate" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUuserObject*, void*, CUhostFn, unsigned int, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuUserObjectCreate)(object_out, ptr, destroy, initialRefcount, flags)
 *     return err
 */
  __pyx_tuple__346 = PyTuple_Pack(1, __pyx_kp_u_Function_cuUserObjectCreate_not); if (unlikely(!__pyx_tuple__346)) __PYX_ERR(0, 5731, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__346);
  __Pyx_GIVEREF(__pyx_tuple__346);

  /* "cuda/_cuda/ccuda.pyx":5740
 *     if __cuUserObjectRetain == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuUserObjectRetain" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUuserObject, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuUserObjectRetain)(object, count)
 *     return err
 */
  __pyx_tuple__347 = PyTuple_Pack(1, __pyx_kp_u_Function_cuUserObjectRetain_not); if (unlikely(!__pyx_tuple__347)) __PYX_ERR(0, 5740, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__347);
  __Pyx_GIVEREF(__pyx_tuple__347);

  /* "cuda/_cuda/ccuda.pyx":5749
 *     if __cuUserObjectRelease == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuUserObjectRelease" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUuserObject, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuUserObjectRelease)(object, count)
 *     return err
 */
  __pyx_tuple__348 = PyTuple_Pack(1, __pyx_kp_u_Function_cuUserObjectRelease_not); if (unlikely(!__pyx_tuple__348)) __PYX_ERR(0, 5749, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__348);
  __Pyx_GIVEREF(__pyx_tuple__348);

  /* "cuda/_cuda/ccuda.pyx":5758
 *     if __cuGraphRetainUserObject == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuGraphRetainUserObject" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUgraph, CUuserObject, unsigned int, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphRetainUserObject)(graph, object, count, flags)
 *     return err
 */
  __pyx_tuple__349 = PyTuple_Pack(1, __pyx_kp_u_Function_cuGraphRetainUserObject); if (unlikely(!__pyx_tuple__349)) __PYX_ERR(0, 5758, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__349);
  __Pyx_GIVEREF(__pyx_tuple__349);

  /* "cuda/_cuda/ccuda.pyx":5767
 *     if __cuGraphReleaseUserObject == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuGraphReleaseUserObject" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUgraph, CUuserObject, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphReleaseUserObject)(graph, object, count)
 *     return err
 */
  __pyx_tuple__350 = PyTuple_Pack(1, __pyx_kp_u_Function_cuGraphReleaseUserObjec); if (unlikely(!__pyx_tuple__350)) __PYX_ERR(0, 5767, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__350);
  __Pyx_GIVEREF(__pyx_tuple__350);

  /* "cuda/_cuda/ccuda.pyx":5776
 *     if __cuGraphAddNode == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuGraphAddNode" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUgraphNode*, CUgraph, const CUgraphNode*, size_t, CUgraphNodeParams*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphAddNode)(phGraphNode, hGraph, dependencies, numDependencies, nodeParams)
 *     return err
 */
  __pyx_tuple__351 = PyTuple_Pack(1, __pyx_kp_u_Function_cuGraphAddNode_not_foun); if (unlikely(!__pyx_tuple__351)) __PYX_ERR(0, 5776, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__351);
  __Pyx_GIVEREF(__pyx_tuple__351);

  /* "cuda/_cuda/ccuda.pyx":5785
 *     if __cuGraphAddNode_v2 == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuGraphAddNode_v2" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUgraphNode*, CUgraph, const CUgraphNode*, const CUgraphEdgeData*, size_t, CUgraphNodeParams*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphAddNode_v2)(phGraphNode, hGraph, dependencies, dependencyData, numDependencies, nodeParams)
 *     return err
 */
  __pyx_tuple__352 = PyTuple_Pack(1, __pyx_kp_u_Function_cuGraphAddNode_v2_not_f); if (unlikely(!__pyx_tuple__352)) __PYX_ERR(0, 5785, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__352);
  __Pyx_GIVEREF(__pyx_tuple__352);

  /* "cuda/_cuda/ccuda.pyx":5794
 *     if __cuGraphNodeSetParams == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuGraphNodeSetParams" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUgraphNode, CUgraphNodeParams*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphNodeSetParams)(hNode, nodeParams)
 *     return err
 */
  __pyx_tuple__353 = PyTuple_Pack(1, __pyx_kp_u_Function_cuGraphNodeSetParams_no); if (unlikely(!__pyx_tuple__353)) __PYX_ERR(0, 5794, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__353);
  __Pyx_GIVEREF(__pyx_tuple__353);

  /* "cuda/_cuda/ccuda.pyx":5803
 *     if __cuGraphExecNodeSetParams == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuGraphExecNodeSetParams" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUgraphExec, CUgraphNode, CUgraphNodeParams*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphExecNodeSetParams)(hGraphExec, hNode, nodeParams)
 *     return err
 */
  __pyx_tuple__354 = PyTuple_Pack(1, __pyx_kp_u_Function_cuGraphExecNodeSetParam); if (unlikely(!__pyx_tuple__354)) __PYX_ERR(0, 5803, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__354);
  __Pyx_GIVEREF(__pyx_tuple__354);

  /* "cuda/_cuda/ccuda.pyx":5812
 *     if __cuGraphConditionalHandleCreate == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuGraphConditionalHandleCreate" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUgraphConditionalHandle*, CUgraph, CUcontext, unsigned int, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphConditionalHandleCreate)(pHandle_out, hGraph, ctx, defaultLaunchValue, flags)
 *     return err
 */
  __pyx_tuple__355 = PyTuple_Pack(1, __pyx_kp_u_Function_cuGraphConditionalHandl); if (unlikely(!__pyx_tuple__355)) __PYX_ERR(0, 5812, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__355);
  __Pyx_GIVEREF(__pyx_tuple__355);

  /* "cuda/_cuda/ccuda.pyx":5821
 *     if __cuOccupancyMaxActiveBlocksPerMultiprocessor == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuOccupancyMaxActiveBlocksPerMultiprocessor" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(int*, CUfunction, int, size_t) except ?CUDA_ERROR_NOT_FOUND nogil> __cuOccupancyMaxActiveBlocksPerMultiprocessor)(numBlocks, func, blockSize, dynamicSMemSize)
 *     return err
 */
  __pyx_tuple__356 = PyTuple_Pack(1, __pyx_kp_u_Function_cuOccupancyMaxActiveBlo); if (unlikely(!__pyx_tuple__356)) __PYX_ERR(0, 5821, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__356);
  __Pyx_GIVEREF(__pyx_tuple__356);

  /* "cuda/_cuda/ccuda.pyx":5830
 *     if __cuOccupancyMaxActiveBlocksPerMultiprocessorWithFlags == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuOccupancyMaxActiveBlocksPerMultiprocessorWithFlags" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(int*, CUfunction, int, size_t, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuOccupancyMaxActiveBlocksPerMultiprocessorWithFlags)(numBlocks, func, blockSize, dynamicSMemSize, flags)
 *     return err
 */
  __pyx_tuple__357 = PyTuple_Pack(1, __pyx_kp_u_Function_cuOccupancyMaxActiveBlo_2); if (unlikely(!__pyx_tuple__357)) __PYX_ERR(0, 5830, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__357);
  __Pyx_GIVEREF(__pyx_tuple__357);

  /* "cuda/_cuda/ccuda.pyx":5839
 *     if __cuOccupancyMaxPotentialBlockSize == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuOccupancyMaxPotentialBlockSize" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(int*, int*, CUfunction, CUoccupancyB2DSize, size_t, int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuOccupancyMaxPotentialBlockSize)(minGridSize, blockSize, func, blockSizeToDynamicSMemSize, dynamicSMemSize, blockSizeLimit)
 *     return err
 */
  __pyx_tuple__358 = PyTuple_Pack(1, __pyx_kp_u_Function_cuOccupancyMaxPotential); if (unlikely(!__pyx_tuple__358)) __PYX_ERR(0, 5839, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__358);
  __Pyx_GIVEREF(__pyx_tuple__358);

  /* "cuda/_cuda/ccuda.pyx":5848
 *     if __cuOccupancyMaxPotentialBlockSizeWithFlags == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuOccupancyMaxPotentialBlockSizeWithFlags" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(int*, int*, CUfunction, CUoccupancyB2DSize, size_t, int, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuOccupancyMaxPotentialBlockSizeWithFlags)(minGridSize, blockSize, func, blockSizeToDynamicSMemSize, dynamicSMemSize, blockSizeLimit, flags)
 *     return err
 */
  __pyx_tuple__359 = PyTuple_Pack(1, __pyx_kp_u_Function_cuOccupancyMaxPotential_2); if (unlikely(!__pyx_tuple__359)) __PYX_ERR(0, 5848, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__359);
  __Pyx_GIVEREF(__pyx_tuple__359);

  /* "cuda/_cuda/ccuda.pyx":5857
 *     if __cuOccupancyAvailableDynamicSMemPerBlock == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuOccupancyAvailableDynamicSMemPerBlock" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(size_t*, CUfunction, int, int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuOccupancyAvailableDynamicSMemPerBlock)(dynamicSmemSize, func, numBlocks, blockSize)
 *     return err
 */
  __pyx_tuple__360 = PyTuple_Pack(1, __pyx_kp_u_Function_cuOccupancyAvailableDyn); if (unlikely(!__pyx_tuple__360)) __PYX_ERR(0, 5857, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__360);
  __Pyx_GIVEREF(__pyx_tuple__360);

  /* "cuda/_cuda/ccuda.pyx":5866
 *     if __cuOccupancyMaxPotentialClusterSize == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuOccupancyMaxPotentialClusterSize" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(int*, CUfunction, const CUlaunchConfig*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuOccupancyMaxPotentialClusterSize)(clusterSize, func, config)
 *     return err
 */
  __pyx_tuple__361 = PyTuple_Pack(1, __pyx_kp_u_Function_cuOccupancyMaxPotential_3); if (unlikely(!__pyx_tuple__361)) __PYX_ERR(0, 5866, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__361);
  __Pyx_GIVEREF(__pyx_tuple__361);

  /* "cuda/_cuda/ccuda.pyx":5875
 *     if __cuOccupancyMaxActiveClusters == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuOccupancyMaxActiveClusters" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(int*, CUfunction, const CUlaunchConfig*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuOccupancyMaxActiveClusters)(numClusters, func, config)
 *     return err
 */
  __pyx_tuple__362 = PyTuple_Pack(1, __pyx_kp_u_Function_cuOccupancyMaxActiveClu); if (unlikely(!__pyx_tuple__362)) __PYX_ERR(0, 5875, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__362);
  __Pyx_GIVEREF(__pyx_tuple__362);

  /* "cuda/_cuda/ccuda.pyx":5884
 *     if __cuTexRefSetArray == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuTexRefSetArray" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUtexref, CUarray, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuTexRefSetArray)(hTexRef, hArray, Flags)
 *     return err
 */
  __pyx_tuple__363 = PyTuple_Pack(1, __pyx_kp_u_Function_cuTexRefSetArray_not_fo); if (unlikely(!__pyx_tuple__363)) __PYX_ERR(0, 5884, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__363);
  __Pyx_GIVEREF(__pyx_tuple__363);

  /* "cuda/_cuda/ccuda.pyx":5893
 *     if __cuTexRefSetMipmappedArray == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuTexRefSetMipmappedArray" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUtexref, CUmipmappedArray, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuTexRefSetMipmappedArray)(hTexRef, hMipmappedArray, Flags)
 *     return err
 */
  __pyx_tuple__364 = PyTuple_Pack(1, __pyx_kp_u_Function_cuTexRefSetMipmappedArr); if (unlikely(!__pyx_tuple__364)) __PYX_ERR(0, 5893, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__364);
  __Pyx_GIVEREF(__pyx_tuple__364);

  /* "cuda/_cuda/ccuda.pyx":5902
 *     if __cuTexRefSetAddress_v2 == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuTexRefSetAddress_v2" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(size_t*, CUtexref, CUdeviceptr, size_t) except ?CUDA_ERROR_NOT_FOUND nogil> __cuTexRefSetAddress_v2)(ByteOffset, hTexRef, dptr, numbytes)
 *     return err
 */
  __pyx_tuple__365 = PyTuple_Pack(1, __pyx_kp_u_Function_cuTexRefSetAddress_v2_n); if (unlikely(!__pyx_tuple__365)) __PYX_ERR(0, 5902, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__365);
  __Pyx_GIVEREF(__pyx_tuple__365);

  /* "cuda/_cuda/ccuda.pyx":5911
 *     if __cuTexRefSetAddress2D_v3 == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuTexRefSetAddress2D_v3" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUtexref, const CUDA_ARRAY_DESCRIPTOR*, CUdeviceptr, size_t) except ?CUDA_ERROR_NOT_FOUND nogil> __cuTexRefSetAddress2D_v3)(hTexRef, desc, dptr, Pitch)
 *     return err
 */
  __pyx_tuple__366 = PyTuple_Pack(1, __pyx_kp_u_Function_cuTexRefSetAddress2D_v3); if (unlikely(!__pyx_tuple__366)) __PYX_ERR(0, 5911, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__366);
  __Pyx_GIVEREF(__pyx_tuple__366);

  /* "cuda/_cuda/ccuda.pyx":5920
 *     if __cuTexRefSetFormat == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuTexRefSetFormat" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUtexref, CUarray_format, int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuTexRefSetFormat)(hTexRef, fmt, NumPackedComponents)
 *     return err
 */
  __pyx_tuple__367 = PyTuple_Pack(1, __pyx_kp_u_Function_cuTexRefSetFormat_not_f); if (unlikely(!__pyx_tuple__367)) __PYX_ERR(0, 5920, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__367);
  __Pyx_GIVEREF(__pyx_tuple__367);

  /* "cuda/_cuda/ccuda.pyx":5929
 *     if __cuTexRefSetAddressMode == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuTexRefSetAddressMode" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUtexref, int, CUaddress_mode) except ?CUDA_ERROR_NOT_FOUND nogil> __cuTexRefSetAddressMode)(hTexRef, dim, am)
 *     return err
 */
  __pyx_tuple__368 = PyTuple_Pack(1, __pyx_kp_u_Function_cuTexRefSetAddressMode); if (unlikely(!__pyx_tuple__368)) __PYX_ERR(0, 5929, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__368);
  __Pyx_GIVEREF(__pyx_tuple__368);

  /* "cuda/_cuda/ccuda.pyx":5938
 *     if __cuTexRefSetFilterMode == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuTexRefSetFilterMode" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUtexref, CUfilter_mode) except ?CUDA_ERROR_NOT_FOUND nogil> __cuTexRefSetFilterMode)(hTexRef, fm)
 *     return err
 */
  __pyx_tuple__369 = PyTuple_Pack(1, __pyx_kp_u_Function_cuTexRefSetFilterMode_n); if (unlikely(!__pyx_tuple__369)) __PYX_ERR(0, 5938, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__369);
  __Pyx_GIVEREF(__pyx_tuple__369);

  /* "cuda/_cuda/ccuda.pyx":5947
 *     if __cuTexRefSetMipmapFilterMode == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuTexRefSetMipmapFilterMode" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUtexref, CUfilter_mode) except ?CUDA_ERROR_NOT_FOUND nogil> __cuTexRefSetMipmapFilterMode)(hTexRef, fm)
 *     return err
 */
  __pyx_tuple__370 = PyTuple_Pack(1, __pyx_kp_u_Function_cuTexRefSetMipmapFilter); if (unlikely(!__pyx_tuple__370)) __PYX_ERR(0, 5947, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__370);
  __Pyx_GIVEREF(__pyx_tuple__370);

  /* "cuda/_cuda/ccuda.pyx":5956
 *     if __cuTexRefSetMipmapLevelBias == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuTexRefSetMipmapLevelBias" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUtexref, float) except ?CUDA_ERROR_NOT_FOUND nogil> __cuTexRefSetMipmapLevelBias)(hTexRef, bias)
 *     return err
 */
  __pyx_tuple__371 = PyTuple_Pack(1, __pyx_kp_u_Function_cuTexRefSetMipmapLevelB); if (unlikely(!__pyx_tuple__371)) __PYX_ERR(0, 5956, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__371);
  __Pyx_GIVEREF(__pyx_tuple__371);

  /* "cuda/_cuda/ccuda.pyx":5965
 *     if __cuTexRefSetMipmapLevelClamp == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuTexRefSetMipmapLevelClamp" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUtexref, float, float) except ?CUDA_ERROR_NOT_FOUND nogil> __cuTexRefSetMipmapLevelClamp)(hTexRef, minMipmapLevelClamp, maxMipmapLevelClamp)
 *     return err
 */
  __pyx_tuple__372 = PyTuple_Pack(1, __pyx_kp_u_Function_cuTexRefSetMipmapLevelC); if (unlikely(!__pyx_tuple__372)) __PYX_ERR(0, 5965, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__372);
  __Pyx_GIVEREF(__pyx_tuple__372);

  /* "cuda/_cuda/ccuda.pyx":5974
 *     if __cuTexRefSetMaxAnisotropy == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuTexRefSetMaxAnisotropy" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUtexref, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuTexRefSetMaxAnisotropy)(hTexRef, maxAniso)
 *     return err
 */
  __pyx_tuple__373 = PyTuple_Pack(1, __pyx_kp_u_Function_cuTexRefSetMaxAnisotrop); if (unlikely(!__pyx_tuple__373)) __PYX_ERR(0, 5974, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__373);
  __Pyx_GIVEREF(__pyx_tuple__373);

  /* "cuda/_cuda/ccuda.pyx":5983
 *     if __cuTexRefSetBorderColor == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuTexRefSetBorderColor" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUtexref, float*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuTexRefSetBorderColor)(hTexRef, pBorderColor)
 *     return err
 */
  __pyx_tuple__374 = PyTuple_Pack(1, __pyx_kp_u_Function_cuTexRefSetBorderColor); if (unlikely(!__pyx_tuple__374)) __PYX_ERR(0, 5983, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__374);
  __Pyx_GIVEREF(__pyx_tuple__374);

  /* "cuda/_cuda/ccuda.pyx":5992
 *     if __cuTexRefSetFlags == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuTexRefSetFlags" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUtexref, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuTexRefSetFlags)(hTexRef, Flags)
 *     return err
 */
  __pyx_tuple__375 = PyTuple_Pack(1, __pyx_kp_u_Function_cuTexRefSetFlags_not_fo); if (unlikely(!__pyx_tuple__375)) __PYX_ERR(0, 5992, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__375);
  __Pyx_GIVEREF(__pyx_tuple__375);

  /* "cuda/_cuda/ccuda.pyx":6001
 *     if __cuTexRefGetAddress_v2 == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuTexRefGetAddress_v2" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUdeviceptr*, CUtexref) except ?CUDA_ERROR_NOT_FOUND nogil> __cuTexRefGetAddress_v2)(pdptr, hTexRef)
 *     return err
 */
  __pyx_tuple__376 = PyTuple_Pack(1, __pyx_kp_u_Function_cuTexRefGetAddress_v2_n); if (unlikely(!__pyx_tuple__376)) __PYX_ERR(0, 6001, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__376);
  __Pyx_GIVEREF(__pyx_tuple__376);

  /* "cuda/_cuda/ccuda.pyx":6010
 *     if __cuTexRefGetArray == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuTexRefGetArray" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUarray*, CUtexref) except ?CUDA_ERROR_NOT_FOUND nogil> __cuTexRefGetArray)(phArray, hTexRef)
 *     return err
 */
  __pyx_tuple__377 = PyTuple_Pack(1, __pyx_kp_u_Function_cuTexRefGetArray_not_fo); if (unlikely(!__pyx_tuple__377)) __PYX_ERR(0, 6010, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__377);
  __Pyx_GIVEREF(__pyx_tuple__377);

  /* "cuda/_cuda/ccuda.pyx":6019
 *     if __cuTexRefGetMipmappedArray == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuTexRefGetMipmappedArray" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUmipmappedArray*, CUtexref) except ?CUDA_ERROR_NOT_FOUND nogil> __cuTexRefGetMipmappedArray)(phMipmappedArray, hTexRef)
 *     return err
 */
  __pyx_tuple__378 = PyTuple_Pack(1, __pyx_kp_u_Function_cuTexRefGetMipmappedArr); if (unlikely(!__pyx_tuple__378)) __PYX_ERR(0, 6019, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__378);
  __Pyx_GIVEREF(__pyx_tuple__378);

  /* "cuda/_cuda/ccuda.pyx":6028
 *     if __cuTexRefGetAddressMode == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuTexRefGetAddressMode" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUaddress_mode*, CUtexref, int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuTexRefGetAddressMode)(pam, hTexRef, dim)
 *     return err
 */
  __pyx_tuple__379 = PyTuple_Pack(1, __pyx_kp_u_Function_cuTexRefGetAddressMode); if (unlikely(!__pyx_tuple__379)) __PYX_ERR(0, 6028, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__379);
  __Pyx_GIVEREF(__pyx_tuple__379);

  /* "cuda/_cuda/ccuda.pyx":6037
 *     if __cuTexRefGetFilterMode == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuTexRefGetFilterMode" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUfilter_mode*, CUtexref) except ?CUDA_ERROR_NOT_FOUND nogil> __cuTexRefGetFilterMode)(pfm, hTexRef)
 *     return err
 */
  __pyx_tuple__380 = PyTuple_Pack(1, __pyx_kp_u_Function_cuTexRefGetFilterMode_n); if (unlikely(!__pyx_tuple__380)) __PYX_ERR(0, 6037, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__380);
  __Pyx_GIVEREF(__pyx_tuple__380);

  /* "cuda/_cuda/ccuda.pyx":6046
 *     if __cuTexRefGetFormat == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuTexRefGetFormat" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUarray_format*, int*, CUtexref) except ?CUDA_ERROR_NOT_FOUND nogil> __cuTexRefGetFormat)(pFormat, pNumChannels, hTexRef)
 *     return err
 */
  __pyx_tuple__381 = PyTuple_Pack(1, __pyx_kp_u_Function_cuTexRefGetFormat_not_f); if (unlikely(!__pyx_tuple__381)) __PYX_ERR(0, 6046, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__381);
  __Pyx_GIVEREF(__pyx_tuple__381);

  /* "cuda/_cuda/ccuda.pyx":6055
 *     if __cuTexRefGetMipmapFilterMode == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuTexRefGetMipmapFilterMode" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUfilter_mode*, CUtexref) except ?CUDA_ERROR_NOT_FOUND nogil> __cuTexRefGetMipmapFilterMode)(pfm, hTexRef)
 *     return err
 */
  __pyx_tuple__382 = PyTuple_Pack(1, __pyx_kp_u_Function_cuTexRefGetMipmapFilter); if (unlikely(!__pyx_tuple__382)) __PYX_ERR(0, 6055, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__382);
  __Pyx_GIVEREF(__pyx_tuple__382);

  /* "cuda/_cuda/ccuda.pyx":6064
 *     if __cuTexRefGetMipmapLevelBias == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuTexRefGetMipmapLevelBias" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(float*, CUtexref) except ?CUDA_ERROR_NOT_FOUND nogil> __cuTexRefGetMipmapLevelBias)(pbias, hTexRef)
 *     return err
 */
  __pyx_tuple__383 = PyTuple_Pack(1, __pyx_kp_u_Function_cuTexRefGetMipmapLevelB); if (unlikely(!__pyx_tuple__383)) __PYX_ERR(0, 6064, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__383);
  __Pyx_GIVEREF(__pyx_tuple__383);

  /* "cuda/_cuda/ccuda.pyx":6073
 *     if __cuTexRefGetMipmapLevelClamp == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuTexRefGetMipmapLevelClamp" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(float*, float*, CUtexref) except ?CUDA_ERROR_NOT_FOUND nogil> __cuTexRefGetMipmapLevelClamp)(pminMipmapLevelClamp, pmaxMipmapLevelClamp, hTexRef)
 *     return err
 */
  __pyx_tuple__384 = PyTuple_Pack(1, __pyx_kp_u_Function_cuTexRefGetMipmapLevelC); if (unlikely(!__pyx_tuple__384)) __PYX_ERR(0, 6073, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__384);
  __Pyx_GIVEREF(__pyx_tuple__384);

  /* "cuda/_cuda/ccuda.pyx":6082
 *     if __cuTexRefGetMaxAnisotropy == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuTexRefGetMaxAnisotropy" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(int*, CUtexref) except ?CUDA_ERROR_NOT_FOUND nogil> __cuTexRefGetMaxAnisotropy)(pmaxAniso, hTexRef)
 *     return err
 */
  __pyx_tuple__385 = PyTuple_Pack(1, __pyx_kp_u_Function_cuTexRefGetMaxAnisotrop); if (unlikely(!__pyx_tuple__385)) __PYX_ERR(0, 6082, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__385);
  __Pyx_GIVEREF(__pyx_tuple__385);

  /* "cuda/_cuda/ccuda.pyx":6091
 *     if __cuTexRefGetBorderColor == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuTexRefGetBorderColor" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(float*, CUtexref) except ?CUDA_ERROR_NOT_FOUND nogil> __cuTexRefGetBorderColor)(pBorderColor, hTexRef)
 *     return err
 */
  __pyx_tuple__386 = PyTuple_Pack(1, __pyx_kp_u_Function_cuTexRefGetBorderColor); if (unlikely(!__pyx_tuple__386)) __PYX_ERR(0, 6091, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__386);
  __Pyx_GIVEREF(__pyx_tuple__386);

  /* "cuda/_cuda/ccuda.pyx":6100
 *     if __cuTexRefGetFlags == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuTexRefGetFlags" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(unsigned int*, CUtexref) except ?CUDA_ERROR_NOT_FOUND nogil> __cuTexRefGetFlags)(pFlags, hTexRef)
 *     return err
 */
  __pyx_tuple__387 = PyTuple_Pack(1, __pyx_kp_u_Function_cuTexRefGetFlags_not_fo); if (unlikely(!__pyx_tuple__387)) __PYX_ERR(0, 6100, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__387);
  __Pyx_GIVEREF(__pyx_tuple__387);

  /* "cuda/_cuda/ccuda.pyx":6109
 *     if __cuTexRefCreate == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuTexRefCreate" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUtexref*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuTexRefCreate)(pTexRef)
 *     return err
 */
  __pyx_tuple__388 = PyTuple_Pack(1, __pyx_kp_u_Function_cuTexRefCreate_not_foun); if (unlikely(!__pyx_tuple__388)) __PYX_ERR(0, 6109, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__388);
  __Pyx_GIVEREF(__pyx_tuple__388);

  /* "cuda/_cuda/ccuda.pyx":6118
 *     if __cuTexRefDestroy == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuTexRefDestroy" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUtexref) except ?CUDA_ERROR_NOT_FOUND nogil> __cuTexRefDestroy)(hTexRef)
 *     return err
 */
  __pyx_tuple__389 = PyTuple_Pack(1, __pyx_kp_u_Function_cuTexRefDestroy_not_fou); if (unlikely(!__pyx_tuple__389)) __PYX_ERR(0, 6118, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__389);
  __Pyx_GIVEREF(__pyx_tuple__389);

  /* "cuda/_cuda/ccuda.pyx":6127
 *     if __cuSurfRefSetArray == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuSurfRefSetArray" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUsurfref, CUarray, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuSurfRefSetArray)(hSurfRef, hArray, Flags)
 *     return err
 */
  __pyx_tuple__390 = PyTuple_Pack(1, __pyx_kp_u_Function_cuSurfRefSetArray_not_f); if (unlikely(!__pyx_tuple__390)) __PYX_ERR(0, 6127, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__390);
  __Pyx_GIVEREF(__pyx_tuple__390);

  /* "cuda/_cuda/ccuda.pyx":6136
 *     if __cuSurfRefGetArray == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuSurfRefGetArray" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUarray*, CUsurfref) except ?CUDA_ERROR_NOT_FOUND nogil> __cuSurfRefGetArray)(phArray, hSurfRef)
 *     return err
 */
  __pyx_tuple__391 = PyTuple_Pack(1, __pyx_kp_u_Function_cuSurfRefGetArray_not_f); if (unlikely(!__pyx_tuple__391)) __PYX_ERR(0, 6136, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__391);
  __Pyx_GIVEREF(__pyx_tuple__391);

  /* "cuda/_cuda/ccuda.pyx":6145
 *     if __cuTexObjectCreate == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuTexObjectCreate" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUtexObject*, const CUDA_RESOURCE_DESC*, const CUDA_TEXTURE_DESC*, const CUDA_RESOURCE_VIEW_DESC*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuTexObjectCreate)(pTexObject, pResDesc, pTexDesc, pResViewDesc)
 *     return err
 */
  __pyx_tuple__392 = PyTuple_Pack(1, __pyx_kp_u_Function_cuTexObjectCreate_not_f); if (unlikely(!__pyx_tuple__392)) __PYX_ERR(0, 6145, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__392);
  __Pyx_GIVEREF(__pyx_tuple__392);

  /* "cuda/_cuda/ccuda.pyx":6154
 *     if __cuTexObjectDestroy == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuTexObjectDestroy" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUtexObject) except ?CUDA_ERROR_NOT_FOUND nogil> __cuTexObjectDestroy)(texObject)
 *     return err
 */
  __pyx_tuple__393 = PyTuple_Pack(1, __pyx_kp_u_Function_cuTexObjectDestroy_not); if (unlikely(!__pyx_tuple__393)) __PYX_ERR(0, 6154, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__393);
  __Pyx_GIVEREF(__pyx_tuple__393);

  /* "cuda/_cuda/ccuda.pyx":6163
 *     if __cuTexObjectGetResourceDesc == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuTexObjectGetResourceDesc" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUDA_RESOURCE_DESC*, CUtexObject) except ?CUDA_ERROR_NOT_FOUND nogil> __cuTexObjectGetResourceDesc)(pResDesc, texObject)
 *     return err
 */
  __pyx_tuple__394 = PyTuple_Pack(1, __pyx_kp_u_Function_cuTexObjectGetResourceD); if (unlikely(!__pyx_tuple__394)) __PYX_ERR(0, 6163, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__394);
  __Pyx_GIVEREF(__pyx_tuple__394);

  /* "cuda/_cuda/ccuda.pyx":6172
 *     if __cuTexObjectGetTextureDesc == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuTexObjectGetTextureDesc" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUDA_TEXTURE_DESC*, CUtexObject) except ?CUDA_ERROR_NOT_FOUND nogil> __cuTexObjectGetTextureDesc)(pTexDesc, texObject)
 *     return err
 */
  __pyx_tuple__395 = PyTuple_Pack(1, __pyx_kp_u_Function_cuTexObjectGetTextureDe); if (unlikely(!__pyx_tuple__395)) __PYX_ERR(0, 6172, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__395);
  __Pyx_GIVEREF(__pyx_tuple__395);

  /* "cuda/_cuda/ccuda.pyx":6181
 *     if __cuTexObjectGetResourceViewDesc == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuTexObjectGetResourceViewDesc" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUDA_RESOURCE_VIEW_DESC*, CUtexObject) except ?CUDA_ERROR_NOT_FOUND nogil> __cuTexObjectGetResourceViewDesc)(pResViewDesc, texObject)
 *     return err
 */
  __pyx_tuple__396 = PyTuple_Pack(1, __pyx_kp_u_Function_cuTexObjectGetResourceV); if (unlikely(!__pyx_tuple__396)) __PYX_ERR(0, 6181, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__396);
  __Pyx_GIVEREF(__pyx_tuple__396);

  /* "cuda/_cuda/ccuda.pyx":6190
 *     if __cuSurfObjectCreate == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuSurfObjectCreate" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUsurfObject*, const CUDA_RESOURCE_DESC*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuSurfObjectCreate)(pSurfObject, pResDesc)
 *     return err
 */
  __pyx_tuple__397 = PyTuple_Pack(1, __pyx_kp_u_Function_cuSurfObjectCreate_not); if (unlikely(!__pyx_tuple__397)) __PYX_ERR(0, 6190, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__397);
  __Pyx_GIVEREF(__pyx_tuple__397);

  /* "cuda/_cuda/ccuda.pyx":6199
 *     if __cuSurfObjectDestroy == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuSurfObjectDestroy" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUsurfObject) except ?CUDA_ERROR_NOT_FOUND nogil> __cuSurfObjectDestroy)(surfObject)
 *     return err
 */
  __pyx_tuple__398 = PyTuple_Pack(1, __pyx_kp_u_Function_cuSurfObjectDestroy_not); if (unlikely(!__pyx_tuple__398)) __PYX_ERR(0, 6199, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__398);
  __Pyx_GIVEREF(__pyx_tuple__398);

  /* "cuda/_cuda/ccuda.pyx":6208
 *     if __cuSurfObjectGetResourceDesc == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuSurfObjectGetResourceDesc" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUDA_RESOURCE_DESC*, CUsurfObject) except ?CUDA_ERROR_NOT_FOUND nogil> __cuSurfObjectGetResourceDesc)(pResDesc, surfObject)
 *     return err
 */
  __pyx_tuple__399 = PyTuple_Pack(1, __pyx_kp_u_Function_cuSurfObjectGetResource); if (unlikely(!__pyx_tuple__399)) __PYX_ERR(0, 6208, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__399);
  __Pyx_GIVEREF(__pyx_tuple__399);

  /* "cuda/_cuda/ccuda.pyx":6217
 *     if __cuTensorMapEncodeTiled == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuTensorMapEncodeTiled" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUtensorMap*, CUtensorMapDataType, cuuint32_t, void*, const cuuint64_t*, const cuuint64_t*, const cuuint32_t*, const cuuint32_t*, CUtensorMapInterleave, CUtensorMapSwizzle, CUtensorMapL2promotion, CUtensorMapFloatOOBfill) except ?CUDA_ERROR_NOT_FOUND nogil> __cuTensorMapEncodeTiled)(tensorMap, tensorDataType, tensorRank, globalAddress, globalDim, globalStrides, boxDim, elementStrides, interleave, swizzle, l2Promotion, oobFill)
 *     return err
 */
  __pyx_tuple__400 = PyTuple_Pack(1, __pyx_kp_u_Function_cuTensorMapEncodeTiled); if (unlikely(!__pyx_tuple__400)) __PYX_ERR(0, 6217, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__400);
  __Pyx_GIVEREF(__pyx_tuple__400);

  /* "cuda/_cuda/ccuda.pyx":6226
 *     if __cuTensorMapEncodeIm2col == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuTensorMapEncodeIm2col" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUtensorMap*, CUtensorMapDataType, cuuint32_t, void*, const cuuint64_t*, const cuuint64_t*, const int*, const int*, cuuint32_t, cuuint32_t, const cuuint32_t*, CUtensorMapInterleave, CUtensorMapSwizzle, CUtensorMapL2promotion, CUtensorMapFloatOOBfill) except ?CUDA_ERROR_NOT_FOUND nogil> __cuTensorMapEncodeIm2col)(tensorMap, tensorDataType, tensorRank, globalAddress, globalDim, globalStrides, pixelBoxLowerCorner, pixelBoxUpperCorner, channelsPerPixel, pixelsPerColumn, elementStrides, interleave, swizzle, l2Promotion, oobFill)
 *     return err
 */
  __pyx_tuple__401 = PyTuple_Pack(1, __pyx_kp_u_Function_cuTensorMapEncodeIm2col); if (unlikely(!__pyx_tuple__401)) __PYX_ERR(0, 6226, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__401);
  __Pyx_GIVEREF(__pyx_tuple__401);

  /* "cuda/_cuda/ccuda.pyx":6235
 *     if __cuTensorMapReplaceAddress == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuTensorMapReplaceAddress" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUtensorMap*, void*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuTensorMapReplaceAddress)(tensorMap, globalAddress)
 *     return err
 */
  __pyx_tuple__402 = PyTuple_Pack(1, __pyx_kp_u_Function_cuTensorMapReplaceAddre); if (unlikely(!__pyx_tuple__402)) __PYX_ERR(0, 6235, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__402);
  __Pyx_GIVEREF(__pyx_tuple__402);

  /* "cuda/_cuda/ccuda.pyx":6244
 *     if __cuDeviceCanAccessPeer == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuDeviceCanAccessPeer" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(int*, CUdevice, CUdevice) except ?CUDA_ERROR_NOT_FOUND nogil> __cuDeviceCanAccessPeer)(canAccessPeer, dev, peerDev)
 *     return err
 */
  __pyx_tuple__403 = PyTuple_Pack(1, __pyx_kp_u_Function_cuDeviceCanAccessPeer_n); if (unlikely(!__pyx_tuple__403)) __PYX_ERR(0, 6244, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__403);
  __Pyx_GIVEREF(__pyx_tuple__403);

  /* "cuda/_cuda/ccuda.pyx":6253
 *     if __cuCtxEnablePeerAccess == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuCtxEnablePeerAccess" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUcontext, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuCtxEnablePeerAccess)(peerContext, Flags)
 *     return err
 */
  __pyx_tuple__404 = PyTuple_Pack(1, __pyx_kp_u_Function_cuCtxEnablePeerAccess_n); if (unlikely(!__pyx_tuple__404)) __PYX_ERR(0, 6253, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__404);
  __Pyx_GIVEREF(__pyx_tuple__404);

  /* "cuda/_cuda/ccuda.pyx":6262
 *     if __cuCtxDisablePeerAccess == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuCtxDisablePeerAccess" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUcontext) except ?CUDA_ERROR_NOT_FOUND nogil> __cuCtxDisablePeerAccess)(peerContext)
 *     return err
 */
  __pyx_tuple__405 = PyTuple_Pack(1, __pyx_kp_u_Function_cuCtxDisablePeerAccess); if (unlikely(!__pyx_tuple__405)) __PYX_ERR(0, 6262, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__405);
  __Pyx_GIVEREF(__pyx_tuple__405);

  /* "cuda/_cuda/ccuda.pyx":6271
 *     if __cuDeviceGetP2PAttribute == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuDeviceGetP2PAttribute" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(int*, CUdevice_P2PAttribute, CUdevice, CUdevice) except ?CUDA_ERROR_NOT_FOUND nogil> __cuDeviceGetP2PAttribute)(value, attrib, srcDevice, dstDevice)
 *     return err
 */
  __pyx_tuple__406 = PyTuple_Pack(1, __pyx_kp_u_Function_cuDeviceGetP2PAttribute); if (unlikely(!__pyx_tuple__406)) __PYX_ERR(0, 6271, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__406);
  __Pyx_GIVEREF(__pyx_tuple__406);

  /* "cuda/_cuda/ccuda.pyx":6280
 *     if __cuGraphicsUnregisterResource == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuGraphicsUnregisterResource" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUgraphicsResource) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphicsUnregisterResource)(resource)
 *     return err
 */
  __pyx_tuple__407 = PyTuple_Pack(1, __pyx_kp_u_Function_cuGraphicsUnregisterRes); if (unlikely(!__pyx_tuple__407)) __PYX_ERR(0, 6280, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__407);
  __Pyx_GIVEREF(__pyx_tuple__407);

  /* "cuda/_cuda/ccuda.pyx":6289
 *     if __cuGraphicsSubResourceGetMappedArray == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuGraphicsSubResourceGetMappedArray" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUarray*, CUgraphicsResource, unsigned int, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphicsSubResourceGetMappedArray)(pArray, resource, arrayIndex, mipLevel)
 *     return err
 */
  __pyx_tuple__408 = PyTuple_Pack(1, __pyx_kp_u_Function_cuGraphicsSubResourceGe); if (unlikely(!__pyx_tuple__408)) __PYX_ERR(0, 6289, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__408);
  __Pyx_GIVEREF(__pyx_tuple__408);

  /* "cuda/_cuda/ccuda.pyx":6298
 *     if __cuGraphicsResourceGetMappedMipmappedArray == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuGraphicsResourceGetMappedMipmappedArray" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUmipmappedArray*, CUgraphicsResource) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphicsResourceGetMappedMipmappedArray)(pMipmappedArray, resource)
 *     return err
 */
  __pyx_tuple__409 = PyTuple_Pack(1, __pyx_kp_u_Function_cuGraphicsResourceGetMa); if (unlikely(!__pyx_tuple__409)) __PYX_ERR(0, 6298, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__409);
  __Pyx_GIVEREF(__pyx_tuple__409);

  /* "cuda/_cuda/ccuda.pyx":6307
 *     if __cuGraphicsResourceGetMappedPointer_v2 == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuGraphicsResourceGetMappedPointer_v2" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUdeviceptr*, size_t*, CUgraphicsResource) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphicsResourceGetMappedPointer_v2)(pDevPtr, pSize, resource)
 *     return err
 */
  __pyx_tuple__410 = PyTuple_Pack(1, __pyx_kp_u_Function_cuGraphicsResourceGetMa_2); if (unlikely(!__pyx_tuple__410)) __PYX_ERR(0, 6307, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__410);
  __Pyx_GIVEREF(__pyx_tuple__410);

  /* "cuda/_cuda/ccuda.pyx":6316
 *     if __cuGraphicsResourceSetMapFlags_v2 == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuGraphicsResourceSetMapFlags_v2" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUgraphicsResource, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphicsResourceSetMapFlags_v2)(resource, flags)
 *     return err
 */
  __pyx_tuple__411 = PyTuple_Pack(1, __pyx_kp_u_Function_cuGraphicsResourceSetMa); if (unlikely(!__pyx_tuple__411)) __PYX_ERR(0, 6316, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__411);
  __Pyx_GIVEREF(__pyx_tuple__411);

  /* "cuda/_cuda/ccuda.pyx":6325
 *     if __cuGraphicsMapResources == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuGraphicsMapResources" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(unsigned int, CUgraphicsResource*, CUstream) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphicsMapResources)(count, resources, hStream)
 *     return err
 */
  __pyx_tuple__412 = PyTuple_Pack(1, __pyx_kp_u_Function_cuGraphicsMapResources); if (unlikely(!__pyx_tuple__412)) __PYX_ERR(0, 6325, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__412);
  __Pyx_GIVEREF(__pyx_tuple__412);

  /* "cuda/_cuda/ccuda.pyx":6334
 *     if __cuGraphicsUnmapResources == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuGraphicsUnmapResources" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(unsigned int, CUgraphicsResource*, CUstream) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphicsUnmapResources)(count, resources, hStream)
 *     return err
 */
  __pyx_tuple__413 = PyTuple_Pack(1, __pyx_kp_u_Function_cuGraphicsUnmapResource); if (unlikely(!__pyx_tuple__413)) __PYX_ERR(0, 6334, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__413);
  __Pyx_GIVEREF(__pyx_tuple__413);

  /* "cuda/_cuda/ccuda.pyx":6343
 *     if __cuGetProcAddress_v2 == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuGetProcAddress_v2" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(const char*, void**, int, cuuint64_t, CUdriverProcAddressQueryResult*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGetProcAddress_v2)(symbol, pfn, cudaVersion, flags, symbolStatus)
 *     return err
 */
  __pyx_tuple__414 = PyTuple_Pack(1, __pyx_kp_u_Function_cuGetProcAddress_v2_not); if (unlikely(!__pyx_tuple__414)) __PYX_ERR(0, 6343, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__414);
  __Pyx_GIVEREF(__pyx_tuple__414);

  /* "cuda/_cuda/ccuda.pyx":6352
 *     if __cuCoredumpGetAttribute == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuCoredumpGetAttribute" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUcoredumpSettings, void*, size_t*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuCoredumpGetAttribute)(attrib, value, size)
 *     return err
 */
  __pyx_tuple__415 = PyTuple_Pack(1, __pyx_kp_u_Function_cuCoredumpGetAttribute); if (unlikely(!__pyx_tuple__415)) __PYX_ERR(0, 6352, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__415);
  __Pyx_GIVEREF(__pyx_tuple__415);

  /* "cuda/_cuda/ccuda.pyx":6361
 *     if __cuCoredumpGetAttributeGlobal == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuCoredumpGetAttributeGlobal" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUcoredumpSettings, void*, size_t*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuCoredumpGetAttributeGlobal)(attrib, value, size)
 *     return err
 */
  __pyx_tuple__416 = PyTuple_Pack(1, __pyx_kp_u_Function_cuCoredumpGetAttributeG); if (unlikely(!__pyx_tuple__416)) __PYX_ERR(0, 6361, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__416);
  __Pyx_GIVEREF(__pyx_tuple__416);

  /* "cuda/_cuda/ccuda.pyx":6370
 *     if __cuCoredumpSetAttribute == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuCoredumpSetAttribute" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUcoredumpSettings, void*, size_t*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuCoredumpSetAttribute)(attrib, value, size)
 *     return err
 */
  __pyx_tuple__417 = PyTuple_Pack(1, __pyx_kp_u_Function_cuCoredumpSetAttribute); if (unlikely(!__pyx_tuple__417)) __PYX_ERR(0, 6370, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__417);
  __Pyx_GIVEREF(__pyx_tuple__417);

  /* "cuda/_cuda/ccuda.pyx":6379
 *     if __cuCoredumpSetAttributeGlobal == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuCoredumpSetAttributeGlobal" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUcoredumpSettings, void*, size_t*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuCoredumpSetAttributeGlobal)(attrib, value, size)
 *     return err
 */
  __pyx_tuple__418 = PyTuple_Pack(1, __pyx_kp_u_Function_cuCoredumpSetAttributeG); if (unlikely(!__pyx_tuple__418)) __PYX_ERR(0, 6379, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__418);
  __Pyx_GIVEREF(__pyx_tuple__418);

  /* "cuda/_cuda/ccuda.pyx":6388
 *     if __cuGetExportTable == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuGetExportTable" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(const void**, const CUuuid*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGetExportTable)(ppExportTable, pExportTableId)
 *     return err
 */
  __pyx_tuple__419 = PyTuple_Pack(1, __pyx_kp_u_Function_cuGetExportTable_not_fo); if (unlikely(!__pyx_tuple__419)) __PYX_ERR(0, 6388, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__419);
  __Pyx_GIVEREF(__pyx_tuple__419);

  /* "cuda/_cuda/ccuda.pyx":6397
 *     if __cuGreenCtxCreate == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuGreenCtxCreate" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUgreenCtx*, CUdevResourceDesc, CUdevice, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGreenCtxCreate)(phCtx, desc, dev, flags)
 *     return err
 */
  __pyx_tuple__420 = PyTuple_Pack(1, __pyx_kp_u_Function_cuGreenCtxCreate_not_fo); if (unlikely(!__pyx_tuple__420)) __PYX_ERR(0, 6397, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__420);
  __Pyx_GIVEREF(__pyx_tuple__420);

  /* "cuda/_cuda/ccuda.pyx":6406
 *     if __cuGreenCtxDestroy == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuGreenCtxDestroy" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUgreenCtx) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGreenCtxDestroy)(hCtx)
 *     return err
 */
  __pyx_tuple__421 = PyTuple_Pack(1, __pyx_kp_u_Function_cuGreenCtxDestroy_not_f); if (unlikely(!__pyx_tuple__421)) __PYX_ERR(0, 6406, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__421);
  __Pyx_GIVEREF(__pyx_tuple__421);

  /* "cuda/_cuda/ccuda.pyx":6415
 *     if __cuCtxFromGreenCtx == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuCtxFromGreenCtx" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUcontext*, CUgreenCtx) except ?CUDA_ERROR_NOT_FOUND nogil> __cuCtxFromGreenCtx)(pContext, hCtx)
 *     return err
 */
  __pyx_tuple__422 = PyTuple_Pack(1, __pyx_kp_u_Function_cuCtxFromGreenCtx_not_f); if (unlikely(!__pyx_tuple__422)) __PYX_ERR(0, 6415, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__422);
  __Pyx_GIVEREF(__pyx_tuple__422);

  /* "cuda/_cuda/ccuda.pyx":6424
 *     if __cuDeviceGetDevResource == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuDeviceGetDevResource" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUdevice, CUdevResource*, CUdevResourceType) except ?CUDA_ERROR_NOT_FOUND nogil> __cuDeviceGetDevResource)(device, resource, typename)
 *     return err
 */
  __pyx_tuple__423 = PyTuple_Pack(1, __pyx_kp_u_Function_cuDeviceGetDevResource); if (unlikely(!__pyx_tuple__423)) __PYX_ERR(0, 6424, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__423);
  __Pyx_GIVEREF(__pyx_tuple__423);

  /* "cuda/_cuda/ccuda.pyx":6433
 *     if __cuCtxGetDevResource == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuCtxGetDevResource" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUcontext, CUdevResource*, CUdevResourceType) except ?CUDA_ERROR_NOT_FOUND nogil> __cuCtxGetDevResource)(hCtx, resource, typename)
 *     return err
 */
  __pyx_tuple__424 = PyTuple_Pack(1, __pyx_kp_u_Function_cuCtxGetDevResource_not); if (unlikely(!__pyx_tuple__424)) __PYX_ERR(0, 6433, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__424);
  __Pyx_GIVEREF(__pyx_tuple__424);

  /* "cuda/_cuda/ccuda.pyx":6442
 *     if __cuGreenCtxGetDevResource == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuGreenCtxGetDevResource" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUgreenCtx, CUdevResource*, CUdevResourceType) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGreenCtxGetDevResource)(hCtx, resource, typename)
 *     return err
 */
  __pyx_tuple__425 = PyTuple_Pack(1, __pyx_kp_u_Function_cuGreenCtxGetDevResourc); if (unlikely(!__pyx_tuple__425)) __PYX_ERR(0, 6442, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__425);
  __Pyx_GIVEREF(__pyx_tuple__425);

  /* "cuda/_cuda/ccuda.pyx":6451
 *     if __cuDevSmResourceSplitByCount == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuDevSmResourceSplitByCount" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUdevResource*, unsigned int*, const CUdevResource*, CUdevResource*, unsigned int, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuDevSmResourceSplitByCount)(result, nbGroups, input, remaining, useFlags, minCount)
 *     return err
 */
  __pyx_tuple__426 = PyTuple_Pack(1, __pyx_kp_u_Function_cuDevSmResourceSplitByC); if (unlikely(!__pyx_tuple__426)) __PYX_ERR(0, 6451, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__426);
  __Pyx_GIVEREF(__pyx_tuple__426);

  /* "cuda/_cuda/ccuda.pyx":6460
 *     if __cuDevResourceGenerateDesc == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuDevResourceGenerateDesc" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUdevResourceDesc*, CUdevResource*, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuDevResourceGenerateDesc)(phDesc, resources, nbResources)
 *     return err
 */
  __pyx_tuple__427 = PyTuple_Pack(1, __pyx_kp_u_Function_cuDevResourceGenerateDe); if (unlikely(!__pyx_tuple__427)) __PYX_ERR(0, 6460, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__427);
  __Pyx_GIVEREF(__pyx_tuple__427);

  /* "cuda/_cuda/ccuda.pyx":6469
 *     if __cuGreenCtxRecordEvent == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuGreenCtxRecordEvent" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUgreenCtx, CUevent) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGreenCtxRecordEvent)(hCtx, hEvent)
 *     return err
 */
  __pyx_tuple__428 = PyTuple_Pack(1, __pyx_kp_u_Function_cuGreenCtxRecordEvent_n); if (unlikely(!__pyx_tuple__428)) __PYX_ERR(0, 6469, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__428);
  __Pyx_GIVEREF(__pyx_tuple__428);

  /* "cuda/_cuda/ccuda.pyx":6478
 *     if __cuGreenCtxWaitEvent == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuGreenCtxWaitEvent" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUgreenCtx, CUevent) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGreenCtxWaitEvent)(hCtx, hEvent)
 *     return err
 */
  __pyx_tuple__429 = PyTuple_Pack(1, __pyx_kp_u_Function_cuGreenCtxWaitEvent_not); if (unlikely(!__pyx_tuple__429)) __PYX_ERR(0, 6478, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__429);
  __Pyx_GIVEREF(__pyx_tuple__429);

  /* "cuda/_cuda/ccuda.pyx":6487
 *     if __cuStreamGetGreenCtx == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuStreamGetGreenCtx" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUstream, CUgreenCtx*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuStreamGetGreenCtx)(hStream, phCtx)
 *     return err
 */
  __pyx_tuple__430 = PyTuple_Pack(1, __pyx_kp_u_Function_cuStreamGetGreenCtx_not); if (unlikely(!__pyx_tuple__430)) __PYX_ERR(0, 6487, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__430);
  __Pyx_GIVEREF(__pyx_tuple__430);

  /* "cuda/_cuda/ccuda.pyx":6496
 *     if __cuProfilerStart == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuProfilerStart" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)() except ?CUDA_ERROR_NOT_FOUND nogil> __cuProfilerStart)()
 *     return err
 */
  __pyx_tuple__431 = PyTuple_Pack(1, __pyx_kp_u_Function_cuProfilerStart_not_fou); if (unlikely(!__pyx_tuple__431)) __PYX_ERR(0, 6496, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__431);
  __Pyx_GIVEREF(__pyx_tuple__431);

  /* "cuda/_cuda/ccuda.pyx":6505
 *     if __cuProfilerStop == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuProfilerStop" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)() except ?CUDA_ERROR_NOT_FOUND nogil> __cuProfilerStop)()
 *     return err
 */
  __pyx_tuple__432 = PyTuple_Pack(1, __pyx_kp_u_Function_cuProfilerStop_not_foun); if (unlikely(!__pyx_tuple__432)) __PYX_ERR(0, 6505, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__432);
  __Pyx_GIVEREF(__pyx_tuple__432);

  /* "cuda/_cuda/ccuda.pyx":6514
 *     if __cuGraphicsEGLRegisterImage == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuGraphicsEGLRegisterImage" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUgraphicsResource*, EGLImageKHR, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphicsEGLRegisterImage)(pCudaResource, image, flags)
 *     return err
 */
  __pyx_tuple__433 = PyTuple_Pack(1, __pyx_kp_u_Function_cuGraphicsEGLRegisterIm); if (unlikely(!__pyx_tuple__433)) __PYX_ERR(0, 6514, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__433);
  __Pyx_GIVEREF(__pyx_tuple__433);

  /* "cuda/_cuda/ccuda.pyx":6523
 *     if __cuEGLStreamConsumerConnect == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuEGLStreamConsumerConnect" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUeglStreamConnection*, EGLStreamKHR) except ?CUDA_ERROR_NOT_FOUND nogil> __cuEGLStreamConsumerConnect)(conn, stream)
 *     return err
 */
  __pyx_tuple__434 = PyTuple_Pack(1, __pyx_kp_u_Function_cuEGLStreamConsumerConn); if (unlikely(!__pyx_tuple__434)) __PYX_ERR(0, 6523, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__434);
  __Pyx_GIVEREF(__pyx_tuple__434);

  /* "cuda/_cuda/ccuda.pyx":6532
 *     if __cuEGLStreamConsumerConnectWithFlags == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuEGLStreamConsumerConnectWithFlags" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUeglStreamConnection*, EGLStreamKHR, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuEGLStreamConsumerConnectWithFlags)(conn, stream, flags)
 *     return err
 */
  __pyx_tuple__435 = PyTuple_Pack(1, __pyx_kp_u_Function_cuEGLStreamConsumerConn_2); if (unlikely(!__pyx_tuple__435)) __PYX_ERR(0, 6532, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__435);
  __Pyx_GIVEREF(__pyx_tuple__435);

  /* "cuda/_cuda/ccuda.pyx":6541
 *     if __cuEGLStreamConsumerDisconnect == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuEGLStreamConsumerDisconnect" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUeglStreamConnection*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuEGLStreamConsumerDisconnect)(conn)
 *     return err
 */
  __pyx_tuple__436 = PyTuple_Pack(1, __pyx_kp_u_Function_cuEGLStreamConsumerDisc); if (unlikely(!__pyx_tuple__436)) __PYX_ERR(0, 6541, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__436);
  __Pyx_GIVEREF(__pyx_tuple__436);

  /* "cuda/_cuda/ccuda.pyx":6550
 *     if __cuEGLStreamConsumerAcquireFrame == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuEGLStreamConsumerAcquireFrame" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUeglStreamConnection*, CUgraphicsResource*, CUstream*, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuEGLStreamConsumerAcquireFrame)(conn, pCudaResource, pStream, timeout)
 *     return err
 */
  __pyx_tuple__437 = PyTuple_Pack(1, __pyx_kp_u_Function_cuEGLStreamConsumerAcqu); if (unlikely(!__pyx_tuple__437)) __PYX_ERR(0, 6550, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__437);
  __Pyx_GIVEREF(__pyx_tuple__437);

  /* "cuda/_cuda/ccuda.pyx":6559
 *     if __cuEGLStreamConsumerReleaseFrame == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuEGLStreamConsumerReleaseFrame" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUeglStreamConnection*, CUgraphicsResource, CUstream*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuEGLStreamConsumerReleaseFrame)(conn, pCudaResource, pStream)
 *     return err
 */
  __pyx_tuple__438 = PyTuple_Pack(1, __pyx_kp_u_Function_cuEGLStreamConsumerRele); if (unlikely(!__pyx_tuple__438)) __PYX_ERR(0, 6559, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__438);
  __Pyx_GIVEREF(__pyx_tuple__438);

  /* "cuda/_cuda/ccuda.pyx":6568
 *     if __cuEGLStreamProducerConnect == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuEGLStreamProducerConnect" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUeglStreamConnection*, EGLStreamKHR, EGLint, EGLint) except ?CUDA_ERROR_NOT_FOUND nogil> __cuEGLStreamProducerConnect)(conn, stream, width, height)
 *     return err
 */
  __pyx_tuple__439 = PyTuple_Pack(1, __pyx_kp_u_Function_cuEGLStreamProducerConn); if (unlikely(!__pyx_tuple__439)) __PYX_ERR(0, 6568, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__439);
  __Pyx_GIVEREF(__pyx_tuple__439);

  /* "cuda/_cuda/ccuda.pyx":6577
 *     if __cuEGLStreamProducerDisconnect == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuEGLStreamProducerDisconnect" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUeglStreamConnection*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuEGLStreamProducerDisconnect)(conn)
 *     return err
 */
  __pyx_tuple__440 = PyTuple_Pack(1, __pyx_kp_u_Function_cuEGLStreamProducerDisc); if (unlikely(!__pyx_tuple__440)) __PYX_ERR(0, 6577, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__440);
  __Pyx_GIVEREF(__pyx_tuple__440);

  /* "cuda/_cuda/ccuda.pyx":6586
 *     if __cuEGLStreamProducerPresentFrame == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuEGLStreamProducerPresentFrame" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUeglStreamConnection*, CUeglFrame, CUstream*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuEGLStreamProducerPresentFrame)(conn, eglframe, pStream)
 *     return err
 */
  __pyx_tuple__441 = PyTuple_Pack(1, __pyx_kp_u_Function_cuEGLStreamProducerPres); if (unlikely(!__pyx_tuple__441)) __PYX_ERR(0, 6586, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__441);
  __Pyx_GIVEREF(__pyx_tuple__441);

  /* "cuda/_cuda/ccuda.pyx":6595
 *     if __cuEGLStreamProducerReturnFrame == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuEGLStreamProducerReturnFrame" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUeglStreamConnection*, CUeglFrame*, CUstream*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuEGLStreamProducerReturnFrame)(conn, eglframe, pStream)
 *     return err
 */
  __pyx_tuple__442 = PyTuple_Pack(1, __pyx_kp_u_Function_cuEGLStreamProducerRetu); if (unlikely(!__pyx_tuple__442)) __PYX_ERR(0, 6595, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__442);
  __Pyx_GIVEREF(__pyx_tuple__442);

  /* "cuda/_cuda/ccuda.pyx":6604
 *     if __cuGraphicsResourceGetMappedEglFrame == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuGraphicsResourceGetMappedEglFrame" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUeglFrame*, CUgraphicsResource, unsigned int, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphicsResourceGetMappedEglFrame)(eglFrame, resource, index, mipLevel)
 *     return err
 */
  __pyx_tuple__443 = PyTuple_Pack(1, __pyx_kp_u_Function_cuGraphicsResourceGetMa_3); if (unlikely(!__pyx_tuple__443)) __PYX_ERR(0, 6604, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__443);
  __Pyx_GIVEREF(__pyx_tuple__443);

  /* "cuda/_cuda/ccuda.pyx":6613
 *     if __cuEventCreateFromEGLSync == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuEventCreateFromEGLSync" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUevent*, EGLSyncKHR, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuEventCreateFromEGLSync)(phEvent, eglSync, flags)
 *     return err
 */
  __pyx_tuple__444 = PyTuple_Pack(1, __pyx_kp_u_Function_cuEventCreateFromEGLSyn); if (unlikely(!__pyx_tuple__444)) __PYX_ERR(0, 6613, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__444);
  __Pyx_GIVEREF(__pyx_tuple__444);

  /* "cuda/_cuda/ccuda.pyx":6622
 *     if __cuGraphicsGLRegisterBuffer == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuGraphicsGLRegisterBuffer" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUgraphicsResource*, GLuint, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphicsGLRegisterBuffer)(pCudaResource, buffer, Flags)
 *     return err
 */
  __pyx_tuple__445 = PyTuple_Pack(1, __pyx_kp_u_Function_cuGraphicsGLRegisterBuf); if (unlikely(!__pyx_tuple__445)) __PYX_ERR(0, 6622, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__445);
  __Pyx_GIVEREF(__pyx_tuple__445);

  /* "cuda/_cuda/ccuda.pyx":6631
 *     if __cuGraphicsGLRegisterImage == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuGraphicsGLRegisterImage" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUgraphicsResource*, GLuint, GLenum, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphicsGLRegisterImage)(pCudaResource, image, target, Flags)
 *     return err
 */
  __pyx_tuple__446 = PyTuple_Pack(1, __pyx_kp_u_Function_cuGraphicsGLRegisterIma); if (unlikely(!__pyx_tuple__446)) __PYX_ERR(0, 6631, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__446);
  __Pyx_GIVEREF(__pyx_tuple__446);

  /* "cuda/_cuda/ccuda.pyx":6640
 *     if __cuGLGetDevices_v2 == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuGLGetDevices_v2" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(unsigned int*, CUdevice*, unsigned int, CUGLDeviceList) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGLGetDevices_v2)(pCudaDeviceCount, pCudaDevices, cudaDeviceCount, deviceList)
 *     return err
 */
  __pyx_tuple__447 = PyTuple_Pack(1, __pyx_kp_u_Function_cuGLGetDevices_v2_not_f); if (unlikely(!__pyx_tuple__447)) __PYX_ERR(0, 6640, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__447);
  __Pyx_GIVEREF(__pyx_tuple__447);

  /* "cuda/_cuda/ccuda.pyx":6649
 *     if __cuVDPAUGetDevice == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuVDPAUGetDevice" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUdevice*, VdpDevice, VdpGetProcAddress*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuVDPAUGetDevice)(pDevice, vdpDevice, vdpGetProcAddress)
 *     return err
 */
  __pyx_tuple__448 = PyTuple_Pack(1, __pyx_kp_u_Function_cuVDPAUGetDevice_not_fo); if (unlikely(!__pyx_tuple__448)) __PYX_ERR(0, 6649, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__448);
  __Pyx_GIVEREF(__pyx_tuple__448);

  /* "cuda/_cuda/ccuda.pyx":6658
 *     if __cuVDPAUCtxCreate_v2 == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuVDPAUCtxCreate_v2" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUcontext*, unsigned int, CUdevice, VdpDevice, VdpGetProcAddress*) except ?CUDA_ERROR_NOT_FOUND nogil> __cuVDPAUCtxCreate_v2)(pCtx, flags, device, vdpDevice, vdpGetProcAddress)
 *     return err
 */
  __pyx_tuple__449 = PyTuple_Pack(1, __pyx_kp_u_Function_cuVDPAUCtxCreate_v2_not); if (unlikely(!__pyx_tuple__449)) __PYX_ERR(0, 6658, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__449);
  __Pyx_GIVEREF(__pyx_tuple__449);

  /* "cuda/_cuda/ccuda.pyx":6667
 *     if __cuGraphicsVDPAURegisterVideoSurface == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuGraphicsVDPAURegisterVideoSurface" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUgraphicsResource*, VdpVideoSurface, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphicsVDPAURegisterVideoSurface)(pCudaResource, vdpSurface, flags)
 *     return err
 */
  __pyx_tuple__450 = PyTuple_Pack(1, __pyx_kp_u_Function_cuGraphicsVDPAURegister); if (unlikely(!__pyx_tuple__450)) __PYX_ERR(0, 6667, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__450);
  __Pyx_GIVEREF(__pyx_tuple__450);

  /* "cuda/_cuda/ccuda.pyx":6676
 *     if __cuGraphicsVDPAURegisterOutputSurface == NULL:
 *         with gil:
 *             raise RuntimeError('Function "cuGraphicsVDPAURegisterOutputSurface" not found')             # <<<<<<<<<<<<<<
 *     err = (<CUresult (*)(CUgraphicsResource*, VdpOutputSurface, unsigned int) except ?CUDA_ERROR_NOT_FOUND nogil> __cuGraphicsVDPAURegisterOutputSurface)(pCudaResource, vdpSurface, flags)
 *     return err
 */
  __pyx_tuple__451 = PyTuple_Pack(1, __pyx_kp_u_Function_cuGraphicsVDPAURegister_2); if (unlikely(!__pyx_tuple__451)) __PYX_ERR(0, 6676, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__451);
  __Pyx_GIVEREF(__pyx_tuple__451);
  __Pyx_RefNannyFinishContext();
  return 0;
  __pyx_L1_error:;
  __Pyx_RefNannyFinishContext();
  return -1;
}
/* #### Code section: init_constants ### */

static CYTHON_SMALL_CODE int __Pyx_InitConstants(void) {
  if (__Pyx_CreateStringTabAndInitStrings() < 0) __PYX_ERR(0, 1, __pyx_L1_error);
  __pyx_int_0 = PyInt_FromLong(0); if (unlikely(!__pyx_int_0)) __PYX_ERR(0, 1, __pyx_L1_error)
  __pyx_int_4294967296 = PyInt_FromString((char *)"4294967296", 0, 0); if (unlikely(!__pyx_int_4294967296)) __PYX_ERR(0, 1, __pyx_L1_error)
  return 0;
  __pyx_L1_error:;
  return -1;
}
/* #### Code section: init_globals ### */

static CYTHON_SMALL_CODE int __Pyx_InitGlobals(void) {
  return 0;
}
/* #### Code section: init_module ### */

static CYTHON_SMALL_CODE int __Pyx_modinit_global_init_code(void); /*proto*/
static CYTHON_SMALL_CODE int __Pyx_modinit_variable_export_code(void); /*proto*/
static CYTHON_SMALL_CODE int __Pyx_modinit_function_export_code(void); /*proto*/
static CYTHON_SMALL_CODE int __Pyx_modinit_type_init_code(void); /*proto*/
static CYTHON_SMALL_CODE int __Pyx_modinit_type_import_code(void); /*proto*/
static CYTHON_SMALL_CODE int __Pyx_modinit_variable_import_code(void); /*proto*/
static CYTHON_SMALL_CODE int __Pyx_modinit_function_import_code(void); /*proto*/

static int __Pyx_modinit_global_init_code(void) {
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("__Pyx_modinit_global_init_code", 0);
  /*--- Global init code ---*/
  __Pyx_RefNannyFinishContext();
  return 0;
}

static int __Pyx_modinit_variable_export_code(void) {
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("__Pyx_modinit_variable_export_code", 0);
  /*--- Variable export code ---*/
  __Pyx_RefNannyFinishContext();
  return 0;
}

static int __Pyx_modinit_function_export_code(void) {
  __Pyx_RefNannyDeclarations
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  __Pyx_RefNannySetupContext("__Pyx_modinit_function_export_code", 0);
  /*--- Function export code ---*/
  if (__Pyx_ExportFunction("_cuGetErrorString", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuGetErrorString, "CUresult (CUresult, char const **)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuGetErrorName", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuGetErrorName, "CUresult (CUresult, char const **)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuInit", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuInit, "CUresult (unsigned int)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuDriverGetVersion", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuDriverGetVersion, "CUresult (int *)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuDeviceGet", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuDeviceGet, "CUresult (CUdevice *, int)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuDeviceGetCount", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuDeviceGetCount, "CUresult (int *)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuDeviceGetName", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuDeviceGetName, "CUresult (char *, int, CUdevice)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuDeviceGetUuid", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuDeviceGetUuid, "CUresult (CUuuid *, CUdevice)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuDeviceGetUuid_v2", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuDeviceGetUuid_v2, "CUresult (CUuuid *, CUdevice)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuDeviceGetLuid", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuDeviceGetLuid, "CUresult (char *, unsigned int *, CUdevice)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuDeviceTotalMem_v2", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuDeviceTotalMem_v2, "CUresult (size_t *, CUdevice)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuDeviceGetTexture1DLinearMaxWidth", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuDeviceGetTexture1DLinearMaxWidth, "CUresult (size_t *, CUarray_format, unsigned int, CUdevice)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuDeviceGetAttribute", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuDeviceGetAttribute, "CUresult (int *, CUdevice_attribute, CUdevice)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuDeviceGetNvSciSyncAttributes", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuDeviceGetNvSciSyncAttributes, "CUresult (void *, CUdevice, int)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuDeviceSetMemPool", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuDeviceSetMemPool, "CUresult (CUdevice, CUmemoryPool)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuDeviceGetMemPool", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuDeviceGetMemPool, "CUresult (CUmemoryPool *, CUdevice)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuDeviceGetDefaultMemPool", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuDeviceGetDefaultMemPool, "CUresult (CUmemoryPool *, CUdevice)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuDeviceGetExecAffinitySupport", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuDeviceGetExecAffinitySupport, "CUresult (int *, CUexecAffinityType, CUdevice)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuFlushGPUDirectRDMAWrites", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuFlushGPUDirectRDMAWrites, "CUresult (CUflushGPUDirectRDMAWritesTarget, CUflushGPUDirectRDMAWritesScope)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuDeviceGetProperties", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuDeviceGetProperties, "CUresult (CUdevprop *, CUdevice)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuDeviceComputeCapability", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuDeviceComputeCapability, "CUresult (int *, int *, CUdevice)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuDevicePrimaryCtxRetain", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuDevicePrimaryCtxRetain, "CUresult (CUcontext *, CUdevice)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuDevicePrimaryCtxRelease_v2", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuDevicePrimaryCtxRelease_v2, "CUresult (CUdevice)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuDevicePrimaryCtxSetFlags_v2", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuDevicePrimaryCtxSetFlags_v2, "CUresult (CUdevice, unsigned int)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuDevicePrimaryCtxGetState", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuDevicePrimaryCtxGetState, "CUresult (CUdevice, unsigned int *, int *)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuDevicePrimaryCtxReset_v2", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuDevicePrimaryCtxReset_v2, "CUresult (CUdevice)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuCtxCreate_v2", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuCtxCreate_v2, "CUresult (CUcontext *, unsigned int, CUdevice)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuCtxCreate_v3", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuCtxCreate_v3, "CUresult (CUcontext *, CUexecAffinityParam *, int, unsigned int, CUdevice)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuCtxDestroy_v2", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuCtxDestroy_v2, "CUresult (CUcontext)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuCtxPushCurrent_v2", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuCtxPushCurrent_v2, "CUresult (CUcontext)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuCtxPopCurrent_v2", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuCtxPopCurrent_v2, "CUresult (CUcontext *)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuCtxSetCurrent", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuCtxSetCurrent, "CUresult (CUcontext)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuCtxGetCurrent", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuCtxGetCurrent, "CUresult (CUcontext *)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuCtxGetDevice", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuCtxGetDevice, "CUresult (CUdevice *)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuCtxGetFlags", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuCtxGetFlags, "CUresult (unsigned int *)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuCtxSetFlags", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuCtxSetFlags, "CUresult (unsigned int)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuCtxGetId", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuCtxGetId, "CUresult (CUcontext, unsigned PY_LONG_LONG *)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuCtxSynchronize", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuCtxSynchronize, "CUresult (void)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuCtxSetLimit", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuCtxSetLimit, "CUresult (CUlimit, size_t)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuCtxGetLimit", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuCtxGetLimit, "CUresult (size_t *, CUlimit)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuCtxGetCacheConfig", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuCtxGetCacheConfig, "CUresult (CUfunc_cache *)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuCtxSetCacheConfig", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuCtxSetCacheConfig, "CUresult (CUfunc_cache)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuCtxGetApiVersion", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuCtxGetApiVersion, "CUresult (CUcontext, unsigned int *)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuCtxGetStreamPriorityRange", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuCtxGetStreamPriorityRange, "CUresult (int *, int *)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuCtxResetPersistingL2Cache", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuCtxResetPersistingL2Cache, "CUresult (void)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuCtxGetExecAffinity", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuCtxGetExecAffinity, "CUresult (CUexecAffinityParam *, CUexecAffinityType)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuCtxAttach", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuCtxAttach, "CUresult (CUcontext *, unsigned int)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuCtxDetach", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuCtxDetach, "CUresult (CUcontext)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuCtxGetSharedMemConfig", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuCtxGetSharedMemConfig, "CUresult (CUsharedconfig *)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuCtxSetSharedMemConfig", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuCtxSetSharedMemConfig, "CUresult (CUsharedconfig)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuModuleLoad", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuModuleLoad, "CUresult (CUmodule *, char const *)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuModuleLoadData", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuModuleLoadData, "CUresult (CUmodule *, void const *)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuModuleLoadDataEx", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuModuleLoadDataEx, "CUresult (CUmodule *, void const *, unsigned int, CUjit_option *, void **)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuModuleLoadFatBinary", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuModuleLoadFatBinary, "CUresult (CUmodule *, void const *)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuModuleUnload", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuModuleUnload, "CUresult (CUmodule)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuModuleGetLoadingMode", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuModuleGetLoadingMode, "CUresult (CUmoduleLoadingMode *)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuModuleGetFunction", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuModuleGetFunction, "CUresult (CUfunction *, CUmodule, char const *)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuModuleGetFunctionCount", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuModuleGetFunctionCount, "CUresult (unsigned int *, CUmodule)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuModuleEnumerateFunctions", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuModuleEnumerateFunctions, "CUresult (CUfunction *, unsigned int, CUmodule)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuModuleGetGlobal_v2", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuModuleGetGlobal_v2, "CUresult (CUdeviceptr *, size_t *, CUmodule, char const *)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuLinkCreate_v2", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuLinkCreate_v2, "CUresult (unsigned int, CUjit_option *, void **, CUlinkState *)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuLinkAddData_v2", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuLinkAddData_v2, "CUresult (CUlinkState, CUjitInputType, void *, size_t, char const *, unsigned int, CUjit_option *, void **)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuLinkAddFile_v2", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuLinkAddFile_v2, "CUresult (CUlinkState, CUjitInputType, char const *, unsigned int, CUjit_option *, void **)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuLinkComplete", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuLinkComplete, "CUresult (CUlinkState, void **, size_t *)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuLinkDestroy", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuLinkDestroy, "CUresult (CUlinkState)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuModuleGetTexRef", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuModuleGetTexRef, "CUresult (CUtexref *, CUmodule, char const *)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuModuleGetSurfRef", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuModuleGetSurfRef, "CUresult (CUsurfref *, CUmodule, char const *)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuLibraryLoadData", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuLibraryLoadData, "CUresult (CUlibrary *, void const *, CUjit_option *, void **, unsigned int, CUlibraryOption *, void **, unsigned int)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuLibraryLoadFromFile", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuLibraryLoadFromFile, "CUresult (CUlibrary *, char const *, CUjit_option *, void **, unsigned int, CUlibraryOption *, void **, unsigned int)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuLibraryUnload", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuLibraryUnload, "CUresult (CUlibrary)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuLibraryGetKernel", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuLibraryGetKernel, "CUresult (CUkernel *, CUlibrary, char const *)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuLibraryGetKernelCount", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuLibraryGetKernelCount, "CUresult (unsigned int *, CUlibrary)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuLibraryEnumerateKernels", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuLibraryEnumerateKernels, "CUresult (CUkernel *, unsigned int, CUlibrary)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuLibraryGetModule", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuLibraryGetModule, "CUresult (CUmodule *, CUlibrary)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuKernelGetFunction", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuKernelGetFunction, "CUresult (CUfunction *, CUkernel)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuLibraryGetGlobal", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuLibraryGetGlobal, "CUresult (CUdeviceptr *, size_t *, CUlibrary, char const *)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuLibraryGetManaged", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuLibraryGetManaged, "CUresult (CUdeviceptr *, size_t *, CUlibrary, char const *)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuLibraryGetUnifiedFunction", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuLibraryGetUnifiedFunction, "CUresult (void **, CUlibrary, char const *)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuKernelGetAttribute", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuKernelGetAttribute, "CUresult (int *, CUfunction_attribute, CUkernel, CUdevice)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuKernelSetAttribute", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuKernelSetAttribute, "CUresult (CUfunction_attribute, int, CUkernel, CUdevice)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuKernelSetCacheConfig", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuKernelSetCacheConfig, "CUresult (CUkernel, CUfunc_cache, CUdevice)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuKernelGetName", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuKernelGetName, "CUresult (char const **, CUkernel)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuKernelGetParamInfo", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuKernelGetParamInfo, "CUresult (CUkernel, size_t, size_t *, size_t *)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuMemGetInfo_v2", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuMemGetInfo_v2, "CUresult (size_t *, size_t *)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuMemAlloc_v2", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuMemAlloc_v2, "CUresult (CUdeviceptr *, size_t)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuMemAllocPitch_v2", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuMemAllocPitch_v2, "CUresult (CUdeviceptr *, size_t *, size_t, size_t, unsigned int)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuMemFree_v2", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuMemFree_v2, "CUresult (CUdeviceptr)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuMemGetAddressRange_v2", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuMemGetAddressRange_v2, "CUresult (CUdeviceptr *, size_t *, CUdeviceptr)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuMemAllocHost_v2", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuMemAllocHost_v2, "CUresult (void **, size_t)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuMemFreeHost", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuMemFreeHost, "CUresult (void *)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuMemHostAlloc", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuMemHostAlloc, "CUresult (void **, size_t, unsigned int)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuMemHostGetDevicePointer_v2", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuMemHostGetDevicePointer_v2, "CUresult (CUdeviceptr *, void *, unsigned int)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuMemHostGetFlags", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuMemHostGetFlags, "CUresult (unsigned int *, void *)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuMemAllocManaged", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuMemAllocManaged, "CUresult (CUdeviceptr *, size_t, unsigned int)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuDeviceRegisterAsyncNotification", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuDeviceRegisterAsyncNotification, "CUresult (CUdevice, CUasyncCallback, void *, CUasyncCallbackHandle *)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuDeviceUnregisterAsyncNotification", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuDeviceUnregisterAsyncNotification, "CUresult (CUdevice, CUasyncCallbackHandle)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuDeviceGetByPCIBusId", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuDeviceGetByPCIBusId, "CUresult (CUdevice *, char const *)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuDeviceGetPCIBusId", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuDeviceGetPCIBusId, "CUresult (char *, int, CUdevice)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuIpcGetEventHandle", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuIpcGetEventHandle, "CUresult (CUipcEventHandle *, CUevent)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuIpcOpenEventHandle", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuIpcOpenEventHandle, "CUresult (CUevent *, CUipcEventHandle)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuIpcGetMemHandle", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuIpcGetMemHandle, "CUresult (CUipcMemHandle *, CUdeviceptr)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuIpcOpenMemHandle_v2", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuIpcOpenMemHandle_v2, "CUresult (CUdeviceptr *, CUipcMemHandle, unsigned int)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuIpcCloseMemHandle", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuIpcCloseMemHandle, "CUresult (CUdeviceptr)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuMemHostRegister_v2", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuMemHostRegister_v2, "CUresult (void *, size_t, unsigned int)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuMemHostUnregister", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuMemHostUnregister, "CUresult (void *)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuMemcpy", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuMemcpy, "CUresult (CUdeviceptr, CUdeviceptr, size_t)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuMemcpyPeer", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuMemcpyPeer, "CUresult (CUdeviceptr, CUcontext, CUdeviceptr, CUcontext, size_t)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuMemcpyHtoD_v2", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuMemcpyHtoD_v2, "CUresult (CUdeviceptr, void const *, size_t)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuMemcpyDtoH_v2", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuMemcpyDtoH_v2, "CUresult (void *, CUdeviceptr, size_t)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuMemcpyDtoD_v2", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuMemcpyDtoD_v2, "CUresult (CUdeviceptr, CUdeviceptr, size_t)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuMemcpyDtoA_v2", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuMemcpyDtoA_v2, "CUresult (CUarray, size_t, CUdeviceptr, size_t)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuMemcpyAtoD_v2", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuMemcpyAtoD_v2, "CUresult (CUdeviceptr, CUarray, size_t, size_t)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuMemcpyHtoA_v2", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuMemcpyHtoA_v2, "CUresult (CUarray, size_t, void const *, size_t)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuMemcpyAtoH_v2", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuMemcpyAtoH_v2, "CUresult (void *, CUarray, size_t, size_t)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuMemcpyAtoA_v2", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuMemcpyAtoA_v2, "CUresult (CUarray, size_t, CUarray, size_t, size_t)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuMemcpy2D_v2", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuMemcpy2D_v2, "CUresult (CUDA_MEMCPY2D const *)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuMemcpy2DUnaligned_v2", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuMemcpy2DUnaligned_v2, "CUresult (CUDA_MEMCPY2D const *)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuMemcpy3D_v2", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuMemcpy3D_v2, "CUresult (CUDA_MEMCPY3D const *)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuMemcpy3DPeer", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuMemcpy3DPeer, "CUresult (CUDA_MEMCPY3D_PEER const *)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuMemcpyAsync", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuMemcpyAsync, "CUresult (CUdeviceptr, CUdeviceptr, size_t, CUstream)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuMemcpyPeerAsync", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuMemcpyPeerAsync, "CUresult (CUdeviceptr, CUcontext, CUdeviceptr, CUcontext, size_t, CUstream)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuMemcpyHtoDAsync_v2", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuMemcpyHtoDAsync_v2, "CUresult (CUdeviceptr, void const *, size_t, CUstream)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuMemcpyDtoHAsync_v2", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuMemcpyDtoHAsync_v2, "CUresult (void *, CUdeviceptr, size_t, CUstream)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuMemcpyDtoDAsync_v2", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuMemcpyDtoDAsync_v2, "CUresult (CUdeviceptr, CUdeviceptr, size_t, CUstream)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuMemcpyHtoAAsync_v2", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuMemcpyHtoAAsync_v2, "CUresult (CUarray, size_t, void const *, size_t, CUstream)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuMemcpyAtoHAsync_v2", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuMemcpyAtoHAsync_v2, "CUresult (void *, CUarray, size_t, size_t, CUstream)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuMemcpy2DAsync_v2", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuMemcpy2DAsync_v2, "CUresult (CUDA_MEMCPY2D const *, CUstream)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuMemcpy3DAsync_v2", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuMemcpy3DAsync_v2, "CUresult (CUDA_MEMCPY3D const *, CUstream)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuMemcpy3DPeerAsync", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuMemcpy3DPeerAsync, "CUresult (CUDA_MEMCPY3D_PEER const *, CUstream)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuMemsetD8_v2", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuMemsetD8_v2, "CUresult (CUdeviceptr, unsigned char, size_t)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuMemsetD16_v2", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuMemsetD16_v2, "CUresult (CUdeviceptr, unsigned short, size_t)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuMemsetD32_v2", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuMemsetD32_v2, "CUresult (CUdeviceptr, unsigned int, size_t)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuMemsetD2D8_v2", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuMemsetD2D8_v2, "CUresult (CUdeviceptr, size_t, unsigned char, size_t, size_t)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuMemsetD2D16_v2", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuMemsetD2D16_v2, "CUresult (CUdeviceptr, size_t, unsigned short, size_t, size_t)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuMemsetD2D32_v2", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuMemsetD2D32_v2, "CUresult (CUdeviceptr, size_t, unsigned int, size_t, size_t)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuMemsetD8Async", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuMemsetD8Async, "CUresult (CUdeviceptr, unsigned char, size_t, CUstream)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuMemsetD16Async", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuMemsetD16Async, "CUresult (CUdeviceptr, unsigned short, size_t, CUstream)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuMemsetD32Async", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuMemsetD32Async, "CUresult (CUdeviceptr, unsigned int, size_t, CUstream)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuMemsetD2D8Async", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuMemsetD2D8Async, "CUresult (CUdeviceptr, size_t, unsigned char, size_t, size_t, CUstream)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuMemsetD2D16Async", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuMemsetD2D16Async, "CUresult (CUdeviceptr, size_t, unsigned short, size_t, size_t, CUstream)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuMemsetD2D32Async", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuMemsetD2D32Async, "CUresult (CUdeviceptr, size_t, unsigned int, size_t, size_t, CUstream)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuArrayCreate_v2", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuArrayCreate_v2, "CUresult (CUarray *, CUDA_ARRAY_DESCRIPTOR const *)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuArrayGetDescriptor_v2", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuArrayGetDescriptor_v2, "CUresult (CUDA_ARRAY_DESCRIPTOR *, CUarray)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuArrayGetSparseProperties", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuArrayGetSparseProperties, "CUresult (CUDA_ARRAY_SPARSE_PROPERTIES *, CUarray)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuMipmappedArrayGetSparseProperties", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuMipmappedArrayGetSparseProperties, "CUresult (CUDA_ARRAY_SPARSE_PROPERTIES *, CUmipmappedArray)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuArrayGetMemoryRequirements", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuArrayGetMemoryRequirements, "CUresult (CUDA_ARRAY_MEMORY_REQUIREMENTS *, CUarray, CUdevice)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuMipmappedArrayGetMemoryRequirements", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuMipmappedArrayGetMemoryRequirements, "CUresult (CUDA_ARRAY_MEMORY_REQUIREMENTS *, CUmipmappedArray, CUdevice)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuArrayGetPlane", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuArrayGetPlane, "CUresult (CUarray *, CUarray, unsigned int)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuArrayDestroy", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuArrayDestroy, "CUresult (CUarray)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuArray3DCreate_v2", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuArray3DCreate_v2, "CUresult (CUarray *, CUDA_ARRAY3D_DESCRIPTOR const *)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuArray3DGetDescriptor_v2", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuArray3DGetDescriptor_v2, "CUresult (CUDA_ARRAY3D_DESCRIPTOR *, CUarray)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuMipmappedArrayCreate", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuMipmappedArrayCreate, "CUresult (CUmipmappedArray *, CUDA_ARRAY3D_DESCRIPTOR const *, unsigned int)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuMipmappedArrayGetLevel", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuMipmappedArrayGetLevel, "CUresult (CUarray *, CUmipmappedArray, unsigned int)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuMipmappedArrayDestroy", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuMipmappedArrayDestroy, "CUresult (CUmipmappedArray)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuMemGetHandleForAddressRange", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuMemGetHandleForAddressRange, "CUresult (void *, CUdeviceptr, size_t, CUmemRangeHandleType, unsigned PY_LONG_LONG)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuMemAddressReserve", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuMemAddressReserve, "CUresult (CUdeviceptr *, size_t, size_t, CUdeviceptr, unsigned PY_LONG_LONG)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuMemAddressFree", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuMemAddressFree, "CUresult (CUdeviceptr, size_t)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuMemCreate", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuMemCreate, "CUresult (CUmemGenericAllocationHandle *, size_t, CUmemAllocationProp const *, unsigned PY_LONG_LONG)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuMemRelease", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuMemRelease, "CUresult (CUmemGenericAllocationHandle)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuMemMap", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuMemMap, "CUresult (CUdeviceptr, size_t, size_t, CUmemGenericAllocationHandle, unsigned PY_LONG_LONG)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuMemMapArrayAsync", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuMemMapArrayAsync, "CUresult (CUarrayMapInfo *, unsigned int, CUstream)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuMemUnmap", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuMemUnmap, "CUresult (CUdeviceptr, size_t)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuMemSetAccess", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuMemSetAccess, "CUresult (CUdeviceptr, size_t, CUmemAccessDesc const *, size_t)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuMemGetAccess", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuMemGetAccess, "CUresult (unsigned PY_LONG_LONG *, CUmemLocation const *, CUdeviceptr)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuMemExportToShareableHandle", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuMemExportToShareableHandle, "CUresult (void *, CUmemGenericAllocationHandle, CUmemAllocationHandleType, unsigned PY_LONG_LONG)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuMemImportFromShareableHandle", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuMemImportFromShareableHandle, "CUresult (CUmemGenericAllocationHandle *, void *, CUmemAllocationHandleType)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuMemGetAllocationGranularity", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuMemGetAllocationGranularity, "CUresult (size_t *, CUmemAllocationProp const *, CUmemAllocationGranularity_flags)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuMemGetAllocationPropertiesFromHandle", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuMemGetAllocationPropertiesFromHandle, "CUresult (CUmemAllocationProp *, CUmemGenericAllocationHandle)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuMemRetainAllocationHandle", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuMemRetainAllocationHandle, "CUresult (CUmemGenericAllocationHandle *, void *)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuMemFreeAsync", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuMemFreeAsync, "CUresult (CUdeviceptr, CUstream)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuMemAllocAsync", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuMemAllocAsync, "CUresult (CUdeviceptr *, size_t, CUstream)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuMemPoolTrimTo", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuMemPoolTrimTo, "CUresult (CUmemoryPool, size_t)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuMemPoolSetAttribute", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuMemPoolSetAttribute, "CUresult (CUmemoryPool, CUmemPool_attribute, void *)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuMemPoolGetAttribute", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuMemPoolGetAttribute, "CUresult (CUmemoryPool, CUmemPool_attribute, void *)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuMemPoolSetAccess", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuMemPoolSetAccess, "CUresult (CUmemoryPool, CUmemAccessDesc const *, size_t)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuMemPoolGetAccess", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuMemPoolGetAccess, "CUresult (CUmemAccess_flags *, CUmemoryPool, CUmemLocation *)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuMemPoolCreate", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuMemPoolCreate, "CUresult (CUmemoryPool *, CUmemPoolProps const *)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuMemPoolDestroy", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuMemPoolDestroy, "CUresult (CUmemoryPool)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuMemAllocFromPoolAsync", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuMemAllocFromPoolAsync, "CUresult (CUdeviceptr *, size_t, CUmemoryPool, CUstream)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuMemPoolExportToShareableHandle", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuMemPoolExportToShareableHandle, "CUresult (void *, CUmemoryPool, CUmemAllocationHandleType, unsigned PY_LONG_LONG)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuMemPoolImportFromShareableHandle", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuMemPoolImportFromShareableHandle, "CUresult (CUmemoryPool *, void *, CUmemAllocationHandleType, unsigned PY_LONG_LONG)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuMemPoolExportPointer", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuMemPoolExportPointer, "CUresult (CUmemPoolPtrExportData *, CUdeviceptr)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuMemPoolImportPointer", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuMemPoolImportPointer, "CUresult (CUdeviceptr *, CUmemoryPool, CUmemPoolPtrExportData *)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuMulticastCreate", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuMulticastCreate, "CUresult (CUmemGenericAllocationHandle *, CUmulticastObjectProp const *)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuMulticastAddDevice", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuMulticastAddDevice, "CUresult (CUmemGenericAllocationHandle, CUdevice)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuMulticastBindMem", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuMulticastBindMem, "CUresult (CUmemGenericAllocationHandle, size_t, CUmemGenericAllocationHandle, size_t, size_t, unsigned PY_LONG_LONG)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuMulticastBindAddr", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuMulticastBindAddr, "CUresult (CUmemGenericAllocationHandle, size_t, CUdeviceptr, size_t, unsigned PY_LONG_LONG)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuMulticastUnbind", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuMulticastUnbind, "CUresult (CUmemGenericAllocationHandle, CUdevice, size_t, size_t)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuMulticastGetGranularity", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuMulticastGetGranularity, "CUresult (size_t *, CUmulticastObjectProp const *, CUmulticastGranularity_flags)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuPointerGetAttribute", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuPointerGetAttribute, "CUresult (void *, CUpointer_attribute, CUdeviceptr)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuMemPrefetchAsync", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuMemPrefetchAsync, "CUresult (CUdeviceptr, size_t, CUdevice, CUstream)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuMemPrefetchAsync_v2", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuMemPrefetchAsync_v2, "CUresult (CUdeviceptr, size_t, CUmemLocation, unsigned int, CUstream)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuMemAdvise", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuMemAdvise, "CUresult (CUdeviceptr, size_t, CUmem_advise, CUdevice)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuMemAdvise_v2", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuMemAdvise_v2, "CUresult (CUdeviceptr, size_t, CUmem_advise, CUmemLocation)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuMemRangeGetAttribute", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuMemRangeGetAttribute, "CUresult (void *, size_t, CUmem_range_attribute, CUdeviceptr, size_t)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuMemRangeGetAttributes", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuMemRangeGetAttributes, "CUresult (void **, size_t *, CUmem_range_attribute *, size_t, CUdeviceptr, size_t)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuPointerSetAttribute", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuPointerSetAttribute, "CUresult (void const *, CUpointer_attribute, CUdeviceptr)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuPointerGetAttributes", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuPointerGetAttributes, "CUresult (unsigned int, CUpointer_attribute *, void **, CUdeviceptr)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuStreamCreate", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuStreamCreate, "CUresult (CUstream *, unsigned int)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuStreamCreateWithPriority", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuStreamCreateWithPriority, "CUresult (CUstream *, unsigned int, int)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuStreamGetPriority", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuStreamGetPriority, "CUresult (CUstream, int *)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuStreamGetFlags", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuStreamGetFlags, "CUresult (CUstream, unsigned int *)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuStreamGetId", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuStreamGetId, "CUresult (CUstream, unsigned PY_LONG_LONG *)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuStreamGetCtx", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuStreamGetCtx, "CUresult (CUstream, CUcontext *)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuStreamWaitEvent", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuStreamWaitEvent, "CUresult (CUstream, CUevent, unsigned int)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuStreamAddCallback", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuStreamAddCallback, "CUresult (CUstream, CUstreamCallback, void *, unsigned int)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuStreamBeginCapture_v2", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuStreamBeginCapture_v2, "CUresult (CUstream, CUstreamCaptureMode)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuStreamBeginCaptureToGraph", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuStreamBeginCaptureToGraph, "CUresult (CUstream, CUgraph, CUgraphNode const *, CUgraphEdgeData const *, size_t, CUstreamCaptureMode)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuThreadExchangeStreamCaptureMode", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuThreadExchangeStreamCaptureMode, "CUresult (CUstreamCaptureMode *)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuStreamEndCapture", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuStreamEndCapture, "CUresult (CUstream, CUgraph *)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuStreamIsCapturing", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuStreamIsCapturing, "CUresult (CUstream, CUstreamCaptureStatus *)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuStreamGetCaptureInfo_v2", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuStreamGetCaptureInfo_v2, "CUresult (CUstream, CUstreamCaptureStatus *, cuuint64_t *, CUgraph *, CUgraphNode const **, size_t *)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuStreamGetCaptureInfo_v3", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuStreamGetCaptureInfo_v3, "CUresult (CUstream, CUstreamCaptureStatus *, cuuint64_t *, CUgraph *, CUgraphNode const **, CUgraphEdgeData const **, size_t *)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuStreamUpdateCaptureDependencies", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuStreamUpdateCaptureDependencies, "CUresult (CUstream, CUgraphNode *, size_t, unsigned int)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuStreamUpdateCaptureDependencies_v2", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuStreamUpdateCaptureDependencies_v2, "CUresult (CUstream, CUgraphNode *, CUgraphEdgeData const *, size_t, unsigned int)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuStreamAttachMemAsync", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuStreamAttachMemAsync, "CUresult (CUstream, CUdeviceptr, size_t, unsigned int)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuStreamQuery", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuStreamQuery, "CUresult (CUstream)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuStreamSynchronize", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuStreamSynchronize, "CUresult (CUstream)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuStreamDestroy_v2", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuStreamDestroy_v2, "CUresult (CUstream)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuStreamCopyAttributes", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuStreamCopyAttributes, "CUresult (CUstream, CUstream)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuStreamGetAttribute", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuStreamGetAttribute, "CUresult (CUstream, CUstreamAttrID, CUstreamAttrValue *)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuStreamSetAttribute", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuStreamSetAttribute, "CUresult (CUstream, CUstreamAttrID, CUstreamAttrValue const *)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuEventCreate", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuEventCreate, "CUresult (CUevent *, unsigned int)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuEventRecord", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuEventRecord, "CUresult (CUevent, CUstream)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuEventRecordWithFlags", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuEventRecordWithFlags, "CUresult (CUevent, CUstream, unsigned int)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuEventQuery", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuEventQuery, "CUresult (CUevent)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuEventSynchronize", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuEventSynchronize, "CUresult (CUevent)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuEventDestroy_v2", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuEventDestroy_v2, "CUresult (CUevent)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuEventElapsedTime", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuEventElapsedTime, "CUresult (float *, CUevent, CUevent)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuImportExternalMemory", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuImportExternalMemory, "CUresult (CUexternalMemory *, CUDA_EXTERNAL_MEMORY_HANDLE_DESC const *)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuExternalMemoryGetMappedBuffer", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuExternalMemoryGetMappedBuffer, "CUresult (CUdeviceptr *, CUexternalMemory, CUDA_EXTERNAL_MEMORY_BUFFER_DESC const *)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuExternalMemoryGetMappedMipmappedArray", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuExternalMemoryGetMappedMipmappedArray, "CUresult (CUmipmappedArray *, CUexternalMemory, CUDA_EXTERNAL_MEMORY_MIPMAPPED_ARRAY_DESC const *)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuDestroyExternalMemory", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuDestroyExternalMemory, "CUresult (CUexternalMemory)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuImportExternalSemaphore", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuImportExternalSemaphore, "CUresult (CUexternalSemaphore *, CUDA_EXTERNAL_SEMAPHORE_HANDLE_DESC const *)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuSignalExternalSemaphoresAsync", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuSignalExternalSemaphoresAsync, "CUresult (CUexternalSemaphore const *, CUDA_EXTERNAL_SEMAPHORE_SIGNAL_PARAMS const *, unsigned int, CUstream)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuWaitExternalSemaphoresAsync", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuWaitExternalSemaphoresAsync, "CUresult (CUexternalSemaphore const *, CUDA_EXTERNAL_SEMAPHORE_WAIT_PARAMS const *, unsigned int, CUstream)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuDestroyExternalSemaphore", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuDestroyExternalSemaphore, "CUresult (CUexternalSemaphore)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuStreamWaitValue32_v2", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuStreamWaitValue32_v2, "CUresult (CUstream, CUdeviceptr, cuuint32_t, unsigned int)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuStreamWaitValue64_v2", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuStreamWaitValue64_v2, "CUresult (CUstream, CUdeviceptr, cuuint64_t, unsigned int)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuStreamWriteValue32_v2", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuStreamWriteValue32_v2, "CUresult (CUstream, CUdeviceptr, cuuint32_t, unsigned int)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuStreamWriteValue64_v2", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuStreamWriteValue64_v2, "CUresult (CUstream, CUdeviceptr, cuuint64_t, unsigned int)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuStreamBatchMemOp_v2", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuStreamBatchMemOp_v2, "CUresult (CUstream, unsigned int, CUstreamBatchMemOpParams *, unsigned int)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuFuncGetAttribute", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuFuncGetAttribute, "CUresult (int *, CUfunction_attribute, CUfunction)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuFuncSetAttribute", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuFuncSetAttribute, "CUresult (CUfunction, CUfunction_attribute, int)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuFuncSetCacheConfig", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuFuncSetCacheConfig, "CUresult (CUfunction, CUfunc_cache)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuFuncGetModule", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuFuncGetModule, "CUresult (CUmodule *, CUfunction)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuFuncGetName", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuFuncGetName, "CUresult (char const **, CUfunction)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuFuncGetParamInfo", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuFuncGetParamInfo, "CUresult (CUfunction, size_t, size_t *, size_t *)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuFuncIsLoaded", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuFuncIsLoaded, "CUresult (CUfunctionLoadingState *, CUfunction)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuFuncLoad", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuFuncLoad, "CUresult (CUfunction)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuLaunchKernel", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuLaunchKernel, "CUresult (CUfunction, unsigned int, unsigned int, unsigned int, unsigned int, unsigned int, unsigned int, unsigned int, CUstream, void **, void **)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuLaunchKernelEx", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuLaunchKernelEx, "CUresult (CUlaunchConfig const *, CUfunction, void **, void **)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuLaunchCooperativeKernel", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuLaunchCooperativeKernel, "CUresult (CUfunction, unsigned int, unsigned int, unsigned int, unsigned int, unsigned int, unsigned int, unsigned int, CUstream, void **)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuLaunchCooperativeKernelMultiDevice", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuLaunchCooperativeKernelMultiDevice, "CUresult (CUDA_LAUNCH_PARAMS *, unsigned int, unsigned int)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuLaunchHostFunc", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuLaunchHostFunc, "CUresult (CUstream, CUhostFn, void *)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuFuncSetBlockShape", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuFuncSetBlockShape, "CUresult (CUfunction, int, int, int)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuFuncSetSharedSize", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuFuncSetSharedSize, "CUresult (CUfunction, unsigned int)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuParamSetSize", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuParamSetSize, "CUresult (CUfunction, unsigned int)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuParamSeti", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuParamSeti, "CUresult (CUfunction, int, unsigned int)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuParamSetf", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuParamSetf, "CUresult (CUfunction, int, float)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuParamSetv", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuParamSetv, "CUresult (CUfunction, int, void *, unsigned int)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuLaunch", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuLaunch, "CUresult (CUfunction)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuLaunchGrid", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuLaunchGrid, "CUresult (CUfunction, int, int)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuLaunchGridAsync", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuLaunchGridAsync, "CUresult (CUfunction, int, int, CUstream)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuParamSetTexRef", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuParamSetTexRef, "CUresult (CUfunction, int, CUtexref)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuFuncSetSharedMemConfig", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuFuncSetSharedMemConfig, "CUresult (CUfunction, CUsharedconfig)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuGraphCreate", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuGraphCreate, "CUresult (CUgraph *, unsigned int)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuGraphAddKernelNode_v2", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuGraphAddKernelNode_v2, "CUresult (CUgraphNode *, CUgraph, CUgraphNode const *, size_t, CUDA_KERNEL_NODE_PARAMS const *)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuGraphKernelNodeGetParams_v2", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuGraphKernelNodeGetParams_v2, "CUresult (CUgraphNode, CUDA_KERNEL_NODE_PARAMS *)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuGraphKernelNodeSetParams_v2", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuGraphKernelNodeSetParams_v2, "CUresult (CUgraphNode, CUDA_KERNEL_NODE_PARAMS const *)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuGraphAddMemcpyNode", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuGraphAddMemcpyNode, "CUresult (CUgraphNode *, CUgraph, CUgraphNode const *, size_t, CUDA_MEMCPY3D const *, CUcontext)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuGraphMemcpyNodeGetParams", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuGraphMemcpyNodeGetParams, "CUresult (CUgraphNode, CUDA_MEMCPY3D *)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuGraphMemcpyNodeSetParams", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuGraphMemcpyNodeSetParams, "CUresult (CUgraphNode, CUDA_MEMCPY3D const *)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuGraphAddMemsetNode", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuGraphAddMemsetNode, "CUresult (CUgraphNode *, CUgraph, CUgraphNode const *, size_t, CUDA_MEMSET_NODE_PARAMS const *, CUcontext)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuGraphMemsetNodeGetParams", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuGraphMemsetNodeGetParams, "CUresult (CUgraphNode, CUDA_MEMSET_NODE_PARAMS *)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuGraphMemsetNodeSetParams", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuGraphMemsetNodeSetParams, "CUresult (CUgraphNode, CUDA_MEMSET_NODE_PARAMS const *)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuGraphAddHostNode", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuGraphAddHostNode, "CUresult (CUgraphNode *, CUgraph, CUgraphNode const *, size_t, CUDA_HOST_NODE_PARAMS const *)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuGraphHostNodeGetParams", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuGraphHostNodeGetParams, "CUresult (CUgraphNode, CUDA_HOST_NODE_PARAMS *)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuGraphHostNodeSetParams", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuGraphHostNodeSetParams, "CUresult (CUgraphNode, CUDA_HOST_NODE_PARAMS const *)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuGraphAddChildGraphNode", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuGraphAddChildGraphNode, "CUresult (CUgraphNode *, CUgraph, CUgraphNode const *, size_t, CUgraph)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuGraphChildGraphNodeGetGraph", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuGraphChildGraphNodeGetGraph, "CUresult (CUgraphNode, CUgraph *)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuGraphAddEmptyNode", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuGraphAddEmptyNode, "CUresult (CUgraphNode *, CUgraph, CUgraphNode const *, size_t)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuGraphAddEventRecordNode", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuGraphAddEventRecordNode, "CUresult (CUgraphNode *, CUgraph, CUgraphNode const *, size_t, CUevent)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuGraphEventRecordNodeGetEvent", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuGraphEventRecordNodeGetEvent, "CUresult (CUgraphNode, CUevent *)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuGraphEventRecordNodeSetEvent", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuGraphEventRecordNodeSetEvent, "CUresult (CUgraphNode, CUevent)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuGraphAddEventWaitNode", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuGraphAddEventWaitNode, "CUresult (CUgraphNode *, CUgraph, CUgraphNode const *, size_t, CUevent)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuGraphEventWaitNodeGetEvent", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuGraphEventWaitNodeGetEvent, "CUresult (CUgraphNode, CUevent *)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuGraphEventWaitNodeSetEvent", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuGraphEventWaitNodeSetEvent, "CUresult (CUgraphNode, CUevent)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuGraphAddExternalSemaphoresSignalNode", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuGraphAddExternalSemaphoresSignalNode, "CUresult (CUgraphNode *, CUgraph, CUgraphNode const *, size_t, CUDA_EXT_SEM_SIGNAL_NODE_PARAMS const *)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuGraphExternalSemaphoresSignalNodeGetParams", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuGraphExternalSemaphoresSignalNodeGetParams, "CUresult (CUgraphNode, CUDA_EXT_SEM_SIGNAL_NODE_PARAMS *)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuGraphExternalSemaphoresSignalNodeSetParams", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuGraphExternalSemaphoresSignalNodeSetParams, "CUresult (CUgraphNode, CUDA_EXT_SEM_SIGNAL_NODE_PARAMS const *)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuGraphAddExternalSemaphoresWaitNode", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuGraphAddExternalSemaphoresWaitNode, "CUresult (CUgraphNode *, CUgraph, CUgraphNode const *, size_t, CUDA_EXT_SEM_WAIT_NODE_PARAMS const *)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuGraphExternalSemaphoresWaitNodeGetParams", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuGraphExternalSemaphoresWaitNodeGetParams, "CUresult (CUgraphNode, CUDA_EXT_SEM_WAIT_NODE_PARAMS *)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuGraphExternalSemaphoresWaitNodeSetParams", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuGraphExternalSemaphoresWaitNodeSetParams, "CUresult (CUgraphNode, CUDA_EXT_SEM_WAIT_NODE_PARAMS const *)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuGraphAddBatchMemOpNode", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuGraphAddBatchMemOpNode, "CUresult (CUgraphNode *, CUgraph, CUgraphNode const *, size_t, CUDA_BATCH_MEM_OP_NODE_PARAMS const *)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuGraphBatchMemOpNodeGetParams", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuGraphBatchMemOpNodeGetParams, "CUresult (CUgraphNode, CUDA_BATCH_MEM_OP_NODE_PARAMS *)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuGraphBatchMemOpNodeSetParams", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuGraphBatchMemOpNodeSetParams, "CUresult (CUgraphNode, CUDA_BATCH_MEM_OP_NODE_PARAMS const *)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuGraphExecBatchMemOpNodeSetParams", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuGraphExecBatchMemOpNodeSetParams, "CUresult (CUgraphExec, CUgraphNode, CUDA_BATCH_MEM_OP_NODE_PARAMS const *)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuGraphAddMemAllocNode", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuGraphAddMemAllocNode, "CUresult (CUgraphNode *, CUgraph, CUgraphNode const *, size_t, CUDA_MEM_ALLOC_NODE_PARAMS *)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuGraphMemAllocNodeGetParams", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuGraphMemAllocNodeGetParams, "CUresult (CUgraphNode, CUDA_MEM_ALLOC_NODE_PARAMS *)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuGraphAddMemFreeNode", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuGraphAddMemFreeNode, "CUresult (CUgraphNode *, CUgraph, CUgraphNode const *, size_t, CUdeviceptr)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuGraphMemFreeNodeGetParams", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuGraphMemFreeNodeGetParams, "CUresult (CUgraphNode, CUdeviceptr *)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuDeviceGraphMemTrim", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuDeviceGraphMemTrim, "CUresult (CUdevice)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuDeviceGetGraphMemAttribute", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuDeviceGetGraphMemAttribute, "CUresult (CUdevice, CUgraphMem_attribute, void *)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuDeviceSetGraphMemAttribute", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuDeviceSetGraphMemAttribute, "CUresult (CUdevice, CUgraphMem_attribute, void *)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuGraphClone", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuGraphClone, "CUresult (CUgraph *, CUgraph)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuGraphNodeFindInClone", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuGraphNodeFindInClone, "CUresult (CUgraphNode *, CUgraphNode, CUgraph)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuGraphNodeGetType", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuGraphNodeGetType, "CUresult (CUgraphNode, CUgraphNodeType *)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuGraphGetNodes", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuGraphGetNodes, "CUresult (CUgraph, CUgraphNode *, size_t *)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuGraphGetRootNodes", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuGraphGetRootNodes, "CUresult (CUgraph, CUgraphNode *, size_t *)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuGraphGetEdges", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuGraphGetEdges, "CUresult (CUgraph, CUgraphNode *, CUgraphNode *, size_t *)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuGraphGetEdges_v2", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuGraphGetEdges_v2, "CUresult (CUgraph, CUgraphNode *, CUgraphNode *, CUgraphEdgeData *, size_t *)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuGraphNodeGetDependencies", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuGraphNodeGetDependencies, "CUresult (CUgraphNode, CUgraphNode *, size_t *)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuGraphNodeGetDependencies_v2", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuGraphNodeGetDependencies_v2, "CUresult (CUgraphNode, CUgraphNode *, CUgraphEdgeData *, size_t *)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuGraphNodeGetDependentNodes", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuGraphNodeGetDependentNodes, "CUresult (CUgraphNode, CUgraphNode *, size_t *)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuGraphNodeGetDependentNodes_v2", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuGraphNodeGetDependentNodes_v2, "CUresult (CUgraphNode, CUgraphNode *, CUgraphEdgeData *, size_t *)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuGraphAddDependencies", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuGraphAddDependencies, "CUresult (CUgraph, CUgraphNode const *, CUgraphNode const *, size_t)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuGraphAddDependencies_v2", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuGraphAddDependencies_v2, "CUresult (CUgraph, CUgraphNode const *, CUgraphNode const *, CUgraphEdgeData const *, size_t)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuGraphRemoveDependencies", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuGraphRemoveDependencies, "CUresult (CUgraph, CUgraphNode const *, CUgraphNode const *, size_t)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuGraphRemoveDependencies_v2", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuGraphRemoveDependencies_v2, "CUresult (CUgraph, CUgraphNode const *, CUgraphNode const *, CUgraphEdgeData const *, size_t)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuGraphDestroyNode", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuGraphDestroyNode, "CUresult (CUgraphNode)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuGraphInstantiateWithFlags", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuGraphInstantiateWithFlags, "CUresult (CUgraphExec *, CUgraph, unsigned PY_LONG_LONG)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuGraphInstantiateWithParams", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuGraphInstantiateWithParams, "CUresult (CUgraphExec *, CUgraph, CUDA_GRAPH_INSTANTIATE_PARAMS *)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuGraphExecGetFlags", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuGraphExecGetFlags, "CUresult (CUgraphExec, cuuint64_t *)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuGraphExecKernelNodeSetParams_v2", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuGraphExecKernelNodeSetParams_v2, "CUresult (CUgraphExec, CUgraphNode, CUDA_KERNEL_NODE_PARAMS const *)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuGraphExecMemcpyNodeSetParams", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuGraphExecMemcpyNodeSetParams, "CUresult (CUgraphExec, CUgraphNode, CUDA_MEMCPY3D const *, CUcontext)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuGraphExecMemsetNodeSetParams", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuGraphExecMemsetNodeSetParams, "CUresult (CUgraphExec, CUgraphNode, CUDA_MEMSET_NODE_PARAMS const *, CUcontext)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuGraphExecHostNodeSetParams", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuGraphExecHostNodeSetParams, "CUresult (CUgraphExec, CUgraphNode, CUDA_HOST_NODE_PARAMS const *)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuGraphExecChildGraphNodeSetParams", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuGraphExecChildGraphNodeSetParams, "CUresult (CUgraphExec, CUgraphNode, CUgraph)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuGraphExecEventRecordNodeSetEvent", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuGraphExecEventRecordNodeSetEvent, "CUresult (CUgraphExec, CUgraphNode, CUevent)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuGraphExecEventWaitNodeSetEvent", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuGraphExecEventWaitNodeSetEvent, "CUresult (CUgraphExec, CUgraphNode, CUevent)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuGraphExecExternalSemaphoresSignalNodeSetParams", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuGraphExecExternalSemaphoresSignalNodeSetParams, "CUresult (CUgraphExec, CUgraphNode, CUDA_EXT_SEM_SIGNAL_NODE_PARAMS const *)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuGraphExecExternalSemaphoresWaitNodeSetParams", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuGraphExecExternalSemaphoresWaitNodeSetParams, "CUresult (CUgraphExec, CUgraphNode, CUDA_EXT_SEM_WAIT_NODE_PARAMS const *)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuGraphNodeSetEnabled", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuGraphNodeSetEnabled, "CUresult (CUgraphExec, CUgraphNode, unsigned int)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuGraphNodeGetEnabled", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuGraphNodeGetEnabled, "CUresult (CUgraphExec, CUgraphNode, unsigned int *)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuGraphUpload", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuGraphUpload, "CUresult (CUgraphExec, CUstream)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuGraphLaunch", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuGraphLaunch, "CUresult (CUgraphExec, CUstream)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuGraphExecDestroy", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuGraphExecDestroy, "CUresult (CUgraphExec)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuGraphDestroy", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuGraphDestroy, "CUresult (CUgraph)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuGraphExecUpdate_v2", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuGraphExecUpdate_v2, "CUresult (CUgraphExec, CUgraph, CUgraphExecUpdateResultInfo *)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuGraphKernelNodeCopyAttributes", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuGraphKernelNodeCopyAttributes, "CUresult (CUgraphNode, CUgraphNode)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuGraphKernelNodeGetAttribute", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuGraphKernelNodeGetAttribute, "CUresult (CUgraphNode, CUkernelNodeAttrID, CUkernelNodeAttrValue *)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuGraphKernelNodeSetAttribute", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuGraphKernelNodeSetAttribute, "CUresult (CUgraphNode, CUkernelNodeAttrID, CUkernelNodeAttrValue const *)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuGraphDebugDotPrint", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuGraphDebugDotPrint, "CUresult (CUgraph, char const *, unsigned int)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuUserObjectCreate", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuUserObjectCreate, "CUresult (CUuserObject *, void *, CUhostFn, unsigned int, unsigned int)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuUserObjectRetain", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuUserObjectRetain, "CUresult (CUuserObject, unsigned int)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuUserObjectRelease", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuUserObjectRelease, "CUresult (CUuserObject, unsigned int)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuGraphRetainUserObject", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuGraphRetainUserObject, "CUresult (CUgraph, CUuserObject, unsigned int, unsigned int)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuGraphReleaseUserObject", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuGraphReleaseUserObject, "CUresult (CUgraph, CUuserObject, unsigned int)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuGraphAddNode", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuGraphAddNode, "CUresult (CUgraphNode *, CUgraph, CUgraphNode const *, size_t, CUgraphNodeParams *)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuGraphAddNode_v2", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuGraphAddNode_v2, "CUresult (CUgraphNode *, CUgraph, CUgraphNode const *, CUgraphEdgeData const *, size_t, CUgraphNodeParams *)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuGraphNodeSetParams", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuGraphNodeSetParams, "CUresult (CUgraphNode, CUgraphNodeParams *)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuGraphExecNodeSetParams", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuGraphExecNodeSetParams, "CUresult (CUgraphExec, CUgraphNode, CUgraphNodeParams *)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuGraphConditionalHandleCreate", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuGraphConditionalHandleCreate, "CUresult (CUgraphConditionalHandle *, CUgraph, CUcontext, unsigned int, unsigned int)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuOccupancyMaxActiveBlocksPerMultiprocessor", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuOccupancyMaxActiveBlocksPerMultiprocessor, "CUresult (int *, CUfunction, int, size_t)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuOccupancyMaxActiveBlocksPerMultiprocessorWithFlags", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuOccupancyMaxActiveBlocksPerMultiprocessorWithFlags, "CUresult (int *, CUfunction, int, size_t, unsigned int)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuOccupancyMaxPotentialBlockSize", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuOccupancyMaxPotentialBlockSize, "CUresult (int *, int *, CUfunction, CUoccupancyB2DSize, size_t, int)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuOccupancyMaxPotentialBlockSizeWithFlags", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuOccupancyMaxPotentialBlockSizeWithFlags, "CUresult (int *, int *, CUfunction, CUoccupancyB2DSize, size_t, int, unsigned int)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuOccupancyAvailableDynamicSMemPerBlock", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuOccupancyAvailableDynamicSMemPerBlock, "CUresult (size_t *, CUfunction, int, int)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuOccupancyMaxPotentialClusterSize", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuOccupancyMaxPotentialClusterSize, "CUresult (int *, CUfunction, CUlaunchConfig const *)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuOccupancyMaxActiveClusters", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuOccupancyMaxActiveClusters, "CUresult (int *, CUfunction, CUlaunchConfig const *)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuTexRefSetArray", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuTexRefSetArray, "CUresult (CUtexref, CUarray, unsigned int)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuTexRefSetMipmappedArray", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuTexRefSetMipmappedArray, "CUresult (CUtexref, CUmipmappedArray, unsigned int)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuTexRefSetAddress_v2", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuTexRefSetAddress_v2, "CUresult (size_t *, CUtexref, CUdeviceptr, size_t)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuTexRefSetAddress2D_v3", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuTexRefSetAddress2D_v3, "CUresult (CUtexref, CUDA_ARRAY_DESCRIPTOR const *, CUdeviceptr, size_t)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuTexRefSetFormat", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuTexRefSetFormat, "CUresult (CUtexref, CUarray_format, int)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuTexRefSetAddressMode", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuTexRefSetAddressMode, "CUresult (CUtexref, int, CUaddress_mode)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuTexRefSetFilterMode", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuTexRefSetFilterMode, "CUresult (CUtexref, CUfilter_mode)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuTexRefSetMipmapFilterMode", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuTexRefSetMipmapFilterMode, "CUresult (CUtexref, CUfilter_mode)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuTexRefSetMipmapLevelBias", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuTexRefSetMipmapLevelBias, "CUresult (CUtexref, float)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuTexRefSetMipmapLevelClamp", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuTexRefSetMipmapLevelClamp, "CUresult (CUtexref, float, float)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuTexRefSetMaxAnisotropy", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuTexRefSetMaxAnisotropy, "CUresult (CUtexref, unsigned int)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuTexRefSetBorderColor", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuTexRefSetBorderColor, "CUresult (CUtexref, float *)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuTexRefSetFlags", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuTexRefSetFlags, "CUresult (CUtexref, unsigned int)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuTexRefGetAddress_v2", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuTexRefGetAddress_v2, "CUresult (CUdeviceptr *, CUtexref)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuTexRefGetArray", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuTexRefGetArray, "CUresult (CUarray *, CUtexref)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuTexRefGetMipmappedArray", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuTexRefGetMipmappedArray, "CUresult (CUmipmappedArray *, CUtexref)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuTexRefGetAddressMode", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuTexRefGetAddressMode, "CUresult (CUaddress_mode *, CUtexref, int)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuTexRefGetFilterMode", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuTexRefGetFilterMode, "CUresult (CUfilter_mode *, CUtexref)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuTexRefGetFormat", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuTexRefGetFormat, "CUresult (CUarray_format *, int *, CUtexref)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuTexRefGetMipmapFilterMode", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuTexRefGetMipmapFilterMode, "CUresult (CUfilter_mode *, CUtexref)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuTexRefGetMipmapLevelBias", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuTexRefGetMipmapLevelBias, "CUresult (float *, CUtexref)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuTexRefGetMipmapLevelClamp", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuTexRefGetMipmapLevelClamp, "CUresult (float *, float *, CUtexref)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuTexRefGetMaxAnisotropy", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuTexRefGetMaxAnisotropy, "CUresult (int *, CUtexref)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuTexRefGetBorderColor", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuTexRefGetBorderColor, "CUresult (float *, CUtexref)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuTexRefGetFlags", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuTexRefGetFlags, "CUresult (unsigned int *, CUtexref)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuTexRefCreate", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuTexRefCreate, "CUresult (CUtexref *)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuTexRefDestroy", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuTexRefDestroy, "CUresult (CUtexref)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuSurfRefSetArray", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuSurfRefSetArray, "CUresult (CUsurfref, CUarray, unsigned int)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuSurfRefGetArray", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuSurfRefGetArray, "CUresult (CUarray *, CUsurfref)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuTexObjectCreate", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuTexObjectCreate, "CUresult (CUtexObject *, CUDA_RESOURCE_DESC const *, CUDA_TEXTURE_DESC const *, CUDA_RESOURCE_VIEW_DESC const *)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuTexObjectDestroy", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuTexObjectDestroy, "CUresult (CUtexObject)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuTexObjectGetResourceDesc", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuTexObjectGetResourceDesc, "CUresult (CUDA_RESOURCE_DESC *, CUtexObject)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuTexObjectGetTextureDesc", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuTexObjectGetTextureDesc, "CUresult (CUDA_TEXTURE_DESC *, CUtexObject)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuTexObjectGetResourceViewDesc", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuTexObjectGetResourceViewDesc, "CUresult (CUDA_RESOURCE_VIEW_DESC *, CUtexObject)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuSurfObjectCreate", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuSurfObjectCreate, "CUresult (CUsurfObject *, CUDA_RESOURCE_DESC const *)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuSurfObjectDestroy", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuSurfObjectDestroy, "CUresult (CUsurfObject)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuSurfObjectGetResourceDesc", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuSurfObjectGetResourceDesc, "CUresult (CUDA_RESOURCE_DESC *, CUsurfObject)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuTensorMapEncodeTiled", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuTensorMapEncodeTiled, "CUresult (CUtensorMap *, CUtensorMapDataType, cuuint32_t, void *, cuuint64_t const *, cuuint64_t const *, cuuint32_t const *, cuuint32_t const *, CUtensorMapInterleave, CUtensorMapSwizzle, CUtensorMapL2promotion, CUtensorMapFloatOOBfill)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuTensorMapEncodeIm2col", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuTensorMapEncodeIm2col, "CUresult (CUtensorMap *, CUtensorMapDataType, cuuint32_t, void *, cuuint64_t const *, cuuint64_t const *, int const *, int const *, cuuint32_t, cuuint32_t, cuuint32_t const *, CUtensorMapInterleave, CUtensorMapSwizzle, CUtensorMapL2promotion, CUtensorMapFloatOOBfill)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuTensorMapReplaceAddress", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuTensorMapReplaceAddress, "CUresult (CUtensorMap *, void *)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuDeviceCanAccessPeer", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuDeviceCanAccessPeer, "CUresult (int *, CUdevice, CUdevice)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuCtxEnablePeerAccess", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuCtxEnablePeerAccess, "CUresult (CUcontext, unsigned int)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuCtxDisablePeerAccess", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuCtxDisablePeerAccess, "CUresult (CUcontext)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuDeviceGetP2PAttribute", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuDeviceGetP2PAttribute, "CUresult (int *, CUdevice_P2PAttribute, CUdevice, CUdevice)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuGraphicsUnregisterResource", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuGraphicsUnregisterResource, "CUresult (CUgraphicsResource)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuGraphicsSubResourceGetMappedArray", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuGraphicsSubResourceGetMappedArray, "CUresult (CUarray *, CUgraphicsResource, unsigned int, unsigned int)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuGraphicsResourceGetMappedMipmappedArray", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuGraphicsResourceGetMappedMipmappedArray, "CUresult (CUmipmappedArray *, CUgraphicsResource)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuGraphicsResourceGetMappedPointer_v2", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuGraphicsResourceGetMappedPointer_v2, "CUresult (CUdeviceptr *, size_t *, CUgraphicsResource)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuGraphicsResourceSetMapFlags_v2", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuGraphicsResourceSetMapFlags_v2, "CUresult (CUgraphicsResource, unsigned int)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuGraphicsMapResources", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuGraphicsMapResources, "CUresult (unsigned int, CUgraphicsResource *, CUstream)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuGraphicsUnmapResources", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuGraphicsUnmapResources, "CUresult (unsigned int, CUgraphicsResource *, CUstream)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuGetProcAddress_v2", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuGetProcAddress_v2, "CUresult (char const *, void **, int, cuuint64_t, CUdriverProcAddressQueryResult *)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuCoredumpGetAttribute", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuCoredumpGetAttribute, "CUresult (CUcoredumpSettings, void *, size_t *)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuCoredumpGetAttributeGlobal", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuCoredumpGetAttributeGlobal, "CUresult (CUcoredumpSettings, void *, size_t *)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuCoredumpSetAttribute", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuCoredumpSetAttribute, "CUresult (CUcoredumpSettings, void *, size_t *)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuCoredumpSetAttributeGlobal", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuCoredumpSetAttributeGlobal, "CUresult (CUcoredumpSettings, void *, size_t *)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuGetExportTable", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuGetExportTable, "CUresult (void const **, CUuuid const *)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuGreenCtxCreate", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuGreenCtxCreate, "CUresult (CUgreenCtx *, CUdevResourceDesc, CUdevice, unsigned int)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuGreenCtxDestroy", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuGreenCtxDestroy, "CUresult (CUgreenCtx)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuCtxFromGreenCtx", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuCtxFromGreenCtx, "CUresult (CUcontext *, CUgreenCtx)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuDeviceGetDevResource", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuDeviceGetDevResource, "CUresult (CUdevice, CUdevResource *, CUdevResourceType)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuCtxGetDevResource", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuCtxGetDevResource, "CUresult (CUcontext, CUdevResource *, CUdevResourceType)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuGreenCtxGetDevResource", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuGreenCtxGetDevResource, "CUresult (CUgreenCtx, CUdevResource *, CUdevResourceType)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuDevSmResourceSplitByCount", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuDevSmResourceSplitByCount, "CUresult (CUdevResource *, unsigned int *, CUdevResource const *, CUdevResource *, unsigned int, unsigned int)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuDevResourceGenerateDesc", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuDevResourceGenerateDesc, "CUresult (CUdevResourceDesc *, CUdevResource *, unsigned int)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuGreenCtxRecordEvent", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuGreenCtxRecordEvent, "CUresult (CUgreenCtx, CUevent)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuGreenCtxWaitEvent", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuGreenCtxWaitEvent, "CUresult (CUgreenCtx, CUevent)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuStreamGetGreenCtx", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuStreamGetGreenCtx, "CUresult (CUstream, CUgreenCtx *)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuProfilerStart", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuProfilerStart, "CUresult (void)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuProfilerStop", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuProfilerStop, "CUresult (void)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuGraphicsEGLRegisterImage", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuGraphicsEGLRegisterImage, "CUresult (CUgraphicsResource *, __pyx_t_4cuda_5ccuda_EGLImageKHR, unsigned int)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuEGLStreamConsumerConnect", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuEGLStreamConsumerConnect, "CUresult (__pyx_t_4cuda_5ccuda_CUeglStreamConnection *, __pyx_t_4cuda_5ccuda_EGLStreamKHR)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuEGLStreamConsumerConnectWithFlags", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuEGLStreamConsumerConnectWithFlags, "CUresult (__pyx_t_4cuda_5ccuda_CUeglStreamConnection *, __pyx_t_4cuda_5ccuda_EGLStreamKHR, unsigned int)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuEGLStreamConsumerDisconnect", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuEGLStreamConsumerDisconnect, "CUresult (__pyx_t_4cuda_5ccuda_CUeglStreamConnection *)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuEGLStreamConsumerAcquireFrame", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuEGLStreamConsumerAcquireFrame, "CUresult (__pyx_t_4cuda_5ccuda_CUeglStreamConnection *, CUgraphicsResource *, CUstream *, unsigned int)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuEGLStreamConsumerReleaseFrame", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuEGLStreamConsumerReleaseFrame, "CUresult (__pyx_t_4cuda_5ccuda_CUeglStreamConnection *, CUgraphicsResource, CUstream *)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuEGLStreamProducerConnect", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuEGLStreamProducerConnect, "CUresult (__pyx_t_4cuda_5ccuda_CUeglStreamConnection *, __pyx_t_4cuda_5ccuda_EGLStreamKHR, __pyx_t_4cuda_5ccuda_EGLint, __pyx_t_4cuda_5ccuda_EGLint)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuEGLStreamProducerDisconnect", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuEGLStreamProducerDisconnect, "CUresult (__pyx_t_4cuda_5ccuda_CUeglStreamConnection *)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuEGLStreamProducerPresentFrame", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuEGLStreamProducerPresentFrame, "CUresult (__pyx_t_4cuda_5ccuda_CUeglStreamConnection *, __pyx_t_4cuda_5ccuda_CUeglFrame, CUstream *)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuEGLStreamProducerReturnFrame", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuEGLStreamProducerReturnFrame, "CUresult (__pyx_t_4cuda_5ccuda_CUeglStreamConnection *, __pyx_t_4cuda_5ccuda_CUeglFrame *, CUstream *)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuGraphicsResourceGetMappedEglFrame", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuGraphicsResourceGetMappedEglFrame, "CUresult (__pyx_t_4cuda_5ccuda_CUeglFrame *, CUgraphicsResource, unsigned int, unsigned int)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuEventCreateFromEGLSync", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuEventCreateFromEGLSync, "CUresult (CUevent *, __pyx_t_4cuda_5ccuda_EGLSyncKHR, unsigned int)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuGraphicsGLRegisterBuffer", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuGraphicsGLRegisterBuffer, "CUresult (CUgraphicsResource *, __pyx_t_4cuda_5ccuda_GLuint, unsigned int)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuGraphicsGLRegisterImage", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuGraphicsGLRegisterImage, "CUresult (CUgraphicsResource *, __pyx_t_4cuda_5ccuda_GLuint, __pyx_t_4cuda_5ccuda_GLenum, unsigned int)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuGLGetDevices_v2", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuGLGetDevices_v2, "CUresult (unsigned int *, CUdevice *, unsigned int, __pyx_t_4cuda_5ccuda_CUGLDeviceList)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuVDPAUGetDevice", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuVDPAUGetDevice, "CUresult (CUdevice *, __pyx_t_4cuda_5ccuda_VdpDevice, __pyx_t_4cuda_5ccuda_VdpGetProcAddress *)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuVDPAUCtxCreate_v2", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuVDPAUCtxCreate_v2, "CUresult (CUcontext *, unsigned int, CUdevice, __pyx_t_4cuda_5ccuda_VdpDevice, __pyx_t_4cuda_5ccuda_VdpGetProcAddress *)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuGraphicsVDPAURegisterVideoSurface", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuGraphicsVDPAURegisterVideoSurface, "CUresult (CUgraphicsResource *, __pyx_t_4cuda_5ccuda_VdpVideoSurface, unsigned int)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  if (__Pyx_ExportFunction("_cuGraphicsVDPAURegisterOutputSurface", (void (*)(void))__pyx_f_4cuda_5_cuda_5ccuda__cuGraphicsVDPAURegisterOutputSurface, "CUresult (CUgraphicsResource *, __pyx_t_4cuda_5ccuda_VdpOutputSurface, unsigned int)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  __Pyx_RefNannyFinishContext();
  return 0;
  __pyx_L1_error:;
  __Pyx_RefNannyFinishContext();
  return -1;
}

static int __Pyx_modinit_type_init_code(void) {
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("__Pyx_modinit_type_init_code", 0);
  /*--- Type init code ---*/
  __Pyx_RefNannyFinishContext();
  return 0;
}

static int __Pyx_modinit_type_import_code(void) {
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("__Pyx_modinit_type_import_code", 0);
  /*--- Type import code ---*/
  __Pyx_RefNannyFinishContext();
  return 0;
}

static int __Pyx_modinit_variable_import_code(void) {
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("__Pyx_modinit_variable_import_code", 0);
  /*--- Variable import code ---*/
  __Pyx_RefNannyFinishContext();
  return 0;
}

static int __Pyx_modinit_function_import_code(void) {
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  __Pyx_RefNannySetupContext("__Pyx_modinit_function_import_code", 0);
  /*--- Function import code ---*/
  __pyx_t_1 = PyImport_ImportModule("cuda.ccuda"); if (!__pyx_t_1) __PYX_ERR(0, 1, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  if (__Pyx_ImportFunction_3_0_7(__pyx_t_1, "cuGetProcAddress", (void (**)(void))&__pyx_f_4cuda_5ccuda_cuGetProcAddress, "CUresult (char const *, void **, int, cuuint64_t, CUdriverProcAddressQueryResult *)") < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __Pyx_RefNannyFinishContext();
  return 0;
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_RefNannyFinishContext();
  return -1;
}


#if PY_MAJOR_VERSION >= 3
#if CYTHON_PEP489_MULTI_PHASE_INIT
static PyObject* __pyx_pymod_create(PyObject *spec, PyModuleDef *def); /*proto*/
static int __pyx_pymod_exec_ccuda(PyObject* module); /*proto*/
static PyModuleDef_Slot __pyx_moduledef_slots[] = {
  {Py_mod_create, (void*)__pyx_pymod_create},
  {Py_mod_exec, (void*)__pyx_pymod_exec_ccuda},
  {0, NULL}
};
#endif

#ifdef __cplusplus
namespace {
  struct PyModuleDef __pyx_moduledef =
  #else
  static struct PyModuleDef __pyx_moduledef =
  #endif
  {
      PyModuleDef_HEAD_INIT,
      "ccuda",
      0, /* m_doc */
    #if CYTHON_PEP489_MULTI_PHASE_INIT
      0, /* m_size */
    #elif CYTHON_USE_MODULE_STATE
      sizeof(__pyx_mstate), /* m_size */
    #else
      -1, /* m_size */
    #endif
      __pyx_methods /* m_methods */,
    #if CYTHON_PEP489_MULTI_PHASE_INIT
      __pyx_moduledef_slots, /* m_slots */
    #else
      NULL, /* m_reload */
    #endif
    #if CYTHON_USE_MODULE_STATE
      __pyx_m_traverse, /* m_traverse */
      __pyx_m_clear, /* m_clear */
      NULL /* m_free */
    #else
      NULL, /* m_traverse */
      NULL, /* m_clear */
      NULL /* m_free */
    #endif
  };
  #ifdef __cplusplus
} /* anonymous namespace */
#endif
#endif

#ifndef CYTHON_NO_PYINIT_EXPORT
#define __Pyx_PyMODINIT_FUNC PyMODINIT_FUNC
#elif PY_MAJOR_VERSION < 3
#ifdef __cplusplus
#define __Pyx_PyMODINIT_FUNC extern "C" void
#else
#define __Pyx_PyMODINIT_FUNC void
#endif
#else
#ifdef __cplusplus
#define __Pyx_PyMODINIT_FUNC extern "C" PyObject *
#else
#define __Pyx_PyMODINIT_FUNC PyObject *
#endif
#endif


#if PY_MAJOR_VERSION < 3
__Pyx_PyMODINIT_FUNC initccuda(void) CYTHON_SMALL_CODE; /*proto*/
__Pyx_PyMODINIT_FUNC initccuda(void)
#else
__Pyx_PyMODINIT_FUNC PyInit_ccuda(void) CYTHON_SMALL_CODE; /*proto*/
__Pyx_PyMODINIT_FUNC PyInit_ccuda(void)
#if CYTHON_PEP489_MULTI_PHASE_INIT
{
  return PyModuleDef_Init(&__pyx_moduledef);
}
static CYTHON_SMALL_CODE int __Pyx_check_single_interpreter(void) {
    #if PY_VERSION_HEX >= 0x030700A1
    static PY_INT64_T main_interpreter_id = -1;
    PY_INT64_T current_id = PyInterpreterState_GetID(PyThreadState_Get()->interp);
    if (main_interpreter_id == -1) {
        main_interpreter_id = current_id;
        return (unlikely(current_id == -1)) ? -1 : 0;
    } else if (unlikely(main_interpreter_id != current_id))
    #else
    static PyInterpreterState *main_interpreter = NULL;
    PyInterpreterState *current_interpreter = PyThreadState_Get()->interp;
    if (!main_interpreter) {
        main_interpreter = current_interpreter;
    } else if (unlikely(main_interpreter != current_interpreter))
    #endif
    {
        PyErr_SetString(
            PyExc_ImportError,
            "Interpreter change detected - this module can only be loaded into one interpreter per process.");
        return -1;
    }
    return 0;
}
#if CYTHON_COMPILING_IN_LIMITED_API
static CYTHON_SMALL_CODE int __Pyx_copy_spec_to_module(PyObject *spec, PyObject *module, const char* from_name, const char* to_name, int allow_none)
#else
static CYTHON_SMALL_CODE int __Pyx_copy_spec_to_module(PyObject *spec, PyObject *moddict, const char* from_name, const char* to_name, int allow_none)
#endif
{
    PyObject *value = PyObject_GetAttrString(spec, from_name);
    int result = 0;
    if (likely(value)) {
        if (allow_none || value != Py_None) {
#if CYTHON_COMPILING_IN_LIMITED_API
            result = PyModule_AddObject(module, to_name, value);
#else
            result = PyDict_SetItemString(moddict, to_name, value);
#endif
        }
        Py_DECREF(value);
    } else if (PyErr_ExceptionMatches(PyExc_AttributeError)) {
        PyErr_Clear();
    } else {
        result = -1;
    }
    return result;
}
static CYTHON_SMALL_CODE PyObject* __pyx_pymod_create(PyObject *spec, PyModuleDef *def) {
    PyObject *module = NULL, *moddict, *modname;
    CYTHON_UNUSED_VAR(def);
    if (__Pyx_check_single_interpreter())
        return NULL;
    if (__pyx_m)
        return __Pyx_NewRef(__pyx_m);
    modname = PyObject_GetAttrString(spec, "name");
    if (unlikely(!modname)) goto bad;
    module = PyModule_NewObject(modname);
    Py_DECREF(modname);
    if (unlikely(!module)) goto bad;
#if CYTHON_COMPILING_IN_LIMITED_API
    moddict = module;
#else
    moddict = PyModule_GetDict(module);
    if (unlikely(!moddict)) goto bad;
#endif
    if (unlikely(__Pyx_copy_spec_to_module(spec, moddict, "loader", "__loader__", 1) < 0)) goto bad;
    if (unlikely(__Pyx_copy_spec_to_module(spec, moddict, "origin", "__file__", 1) < 0)) goto bad;
    if (unlikely(__Pyx_copy_spec_to_module(spec, moddict, "parent", "__package__", 1) < 0)) goto bad;
    if (unlikely(__Pyx_copy_spec_to_module(spec, moddict, "submodule_search_locations", "__path__", 0) < 0)) goto bad;
    return module;
bad:
    Py_XDECREF(module);
    return NULL;
}


static CYTHON_SMALL_CODE int __pyx_pymod_exec_ccuda(PyObject *__pyx_pyinit_module)
#endif
#endif
{
  int stringtab_initialized = 0;
  #if CYTHON_USE_MODULE_STATE
  int pystate_addmodule_run = 0;
  #endif
  __Pyx_TraceDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  int __pyx_lineno = 0;
  const char *__pyx_filename = NULL;
  int __pyx_clineno = 0;
  __Pyx_RefNannyDeclarations
  #if CYTHON_PEP489_MULTI_PHASE_INIT
  if (__pyx_m) {
    if (__pyx_m == __pyx_pyinit_module) return 0;
    PyErr_SetString(PyExc_RuntimeError, "Module 'ccuda' has already been imported. Re-initialisation is not supported.");
    return -1;
  }
  #elif PY_MAJOR_VERSION >= 3
  if (__pyx_m) return __Pyx_NewRef(__pyx_m);
  #endif
  /*--- Module creation code ---*/
  #if CYTHON_PEP489_MULTI_PHASE_INIT
  __pyx_m = __pyx_pyinit_module;
  Py_INCREF(__pyx_m);
  #else
  #if PY_MAJOR_VERSION < 3
  __pyx_m = Py_InitModule4("ccuda", __pyx_methods, 0, 0, PYTHON_API_VERSION); Py_XINCREF(__pyx_m);
  if (unlikely(!__pyx_m)) __PYX_ERR(0, 1, __pyx_L1_error)
  #elif CYTHON_USE_MODULE_STATE
  __pyx_t_1 = PyModule_Create(&__pyx_moduledef); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1, __pyx_L1_error)
  {
    int add_module_result = PyState_AddModule(__pyx_t_1, &__pyx_moduledef);
    __pyx_t_1 = 0; /* transfer ownership from __pyx_t_1 to "ccuda" pseudovariable */
    if (unlikely((add_module_result < 0))) __PYX_ERR(0, 1, __pyx_L1_error)
    pystate_addmodule_run = 1;
  }
  #else
  __pyx_m = PyModule_Create(&__pyx_moduledef);
  if (unlikely(!__pyx_m)) __PYX_ERR(0, 1, __pyx_L1_error)
  #endif
  #endif
  CYTHON_UNUSED_VAR(__pyx_t_1);
  __pyx_d = PyModule_GetDict(__pyx_m); if (unlikely(!__pyx_d)) __PYX_ERR(0, 1, __pyx_L1_error)
  Py_INCREF(__pyx_d);
  __pyx_b = __Pyx_PyImport_AddModuleRef(__Pyx_BUILTIN_MODULE_NAME); if (unlikely(!__pyx_b)) __PYX_ERR(0, 1, __pyx_L1_error)
  __pyx_cython_runtime = __Pyx_PyImport_AddModuleRef((const char *) "cython_runtime"); if (unlikely(!__pyx_cython_runtime)) __PYX_ERR(0, 1, __pyx_L1_error)
  if (PyObject_SetAttrString(__pyx_m, "__builtins__", __pyx_b) < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  #if CYTHON_REFNANNY
__Pyx_RefNanny = __Pyx_RefNannyImportAPI("refnanny");
if (!__Pyx_RefNanny) {
  PyErr_Clear();
  __Pyx_RefNanny = __Pyx_RefNannyImportAPI("Cython.Runtime.refnanny");
  if (!__Pyx_RefNanny)
      Py_FatalError("failed to import 'refnanny' module");
}
#endif
  __Pyx_RefNannySetupContext("__Pyx_PyMODINIT_FUNC PyInit_ccuda(void)", 0);
  if (__Pyx_check_binary_version(__PYX_LIMITED_VERSION_HEX, __Pyx_get_runtime_version(), CYTHON_COMPILING_IN_LIMITED_API) < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  #ifdef __Pxy_PyFrame_Initialize_Offsets
  __Pxy_PyFrame_Initialize_Offsets();
  #endif
  __pyx_empty_tuple = PyTuple_New(0); if (unlikely(!__pyx_empty_tuple)) __PYX_ERR(0, 1, __pyx_L1_error)
  __pyx_empty_bytes = PyBytes_FromStringAndSize("", 0); if (unlikely(!__pyx_empty_bytes)) __PYX_ERR(0, 1, __pyx_L1_error)
  __pyx_empty_unicode = PyUnicode_FromStringAndSize("", 0); if (unlikely(!__pyx_empty_unicode)) __PYX_ERR(0, 1, __pyx_L1_error)
  #ifdef __Pyx_CyFunction_USED
  if (__pyx_CyFunction_init(__pyx_m) < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  #endif
  #ifdef __Pyx_FusedFunction_USED
  if (__pyx_FusedFunction_init(__pyx_m) < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  #endif
  #ifdef __Pyx_Coroutine_USED
  if (__pyx_Coroutine_init(__pyx_m) < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  #endif
  #ifdef __Pyx_Generator_USED
  if (__pyx_Generator_init(__pyx_m) < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  #endif
  #ifdef __Pyx_AsyncGen_USED
  if (__pyx_AsyncGen_init(__pyx_m) < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  #endif
  #ifdef __Pyx_StopAsyncIteration_USED
  if (__pyx_StopAsyncIteration_init(__pyx_m) < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  #endif
  /*--- Library function declarations ---*/
  /*--- Threads initialization code ---*/
  #if defined(WITH_THREAD) && PY_VERSION_HEX < 0x030700F0 && defined(__PYX_FORCE_INIT_THREADS) && __PYX_FORCE_INIT_THREADS
  PyEval_InitThreads();
  #endif
  /*--- Initialize various global constants etc. ---*/
  if (__Pyx_InitConstants() < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  stringtab_initialized = 1;
  if (__Pyx_InitGlobals() < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  #if PY_MAJOR_VERSION < 3 && (__PYX_DEFAULT_STRING_ENCODING_IS_ASCII || __PYX_DEFAULT_STRING_ENCODING_IS_DEFAULT)
  if (__Pyx_init_sys_getdefaultencoding_params() < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  #endif
  if (__pyx_module_is_main_cuda___cuda__ccuda) {
    if (PyObject_SetAttr(__pyx_m, __pyx_n_s_name, __pyx_n_s_main) < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  }
  #if PY_MAJOR_VERSION >= 3
  {
    PyObject *modules = PyImport_GetModuleDict(); if (unlikely(!modules)) __PYX_ERR(0, 1, __pyx_L1_error)
    if (!PyDict_GetItemString(modules, "cuda._cuda.ccuda")) {
      if (unlikely((PyDict_SetItemString(modules, "cuda._cuda.ccuda", __pyx_m) < 0))) __PYX_ERR(0, 1, __pyx_L1_error)
    }
  }
  #endif
  /*--- Builtin init code ---*/
  if (__Pyx_InitCachedBuiltins() < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  /*--- Constants init code ---*/
  if (__Pyx_InitCachedConstants() < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  /*--- Global type/function init code ---*/
  (void)__Pyx_modinit_global_init_code();
  (void)__Pyx_modinit_variable_export_code();
  if (unlikely((__Pyx_modinit_function_export_code() < 0))) __PYX_ERR(0, 1, __pyx_L1_error)
  (void)__Pyx_modinit_type_init_code();
  (void)__Pyx_modinit_type_import_code();
  (void)__Pyx_modinit_variable_import_code();
  if (unlikely((__Pyx_modinit_function_import_code() < 0))) __PYX_ERR(0, 1, __pyx_L1_error)
  /*--- Execution code ---*/
  #if defined(__Pyx_Generator_USED) || defined(__Pyx_Coroutine_USED)
  if (__Pyx_patch_abc() < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  #endif
  __Pyx_TraceCall("__Pyx_PyMODINIT_FUNC PyInit_ccuda(void)", __pyx_f[0], 1, 0, __PYX_ERR(0, 1, __pyx_L1_error));

  /* "cuda/_cuda/ccuda.pyx":9
 * # is strictly prohibited.
 * cimport cuda._lib.dlfcn as dlfcn
 * import os             # <<<<<<<<<<<<<<
 * import sys
 * cimport cuda._cuda.loader as loader
 */
  __pyx_t_2 = __Pyx_ImportDottedModule(__pyx_n_s_os, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 9, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_d, __pyx_n_s_os, __pyx_t_2) < 0) __PYX_ERR(0, 9, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;

  /* "cuda/_cuda/ccuda.pyx":10
 * cimport cuda._lib.dlfcn as dlfcn
 * import os
 * import sys             # <<<<<<<<<<<<<<
 * cimport cuda._cuda.loader as loader
 * cdef bint __cuPythonInit = False
 */
  __pyx_t_2 = __Pyx_ImportDottedModule(__pyx_n_s_sys, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 10, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_d, __pyx_n_s_sys, __pyx_t_2) < 0) __PYX_ERR(0, 10, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;

  /* "cuda/_cuda/ccuda.pyx":12
 * import sys
 * cimport cuda._cuda.loader as loader
 * cdef bint __cuPythonInit = False             # <<<<<<<<<<<<<<
 * cdef void *__cuGetErrorString = NULL
 * cdef void *__cuGetErrorName = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuPythonInit = 0;

  /* "cuda/_cuda/ccuda.pyx":13
 * cimport cuda._cuda.loader as loader
 * cdef bint __cuPythonInit = False
 * cdef void *__cuGetErrorString = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuGetErrorName = NULL
 * cdef void *__cuInit = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuGetErrorString = NULL;

  /* "cuda/_cuda/ccuda.pyx":14
 * cdef bint __cuPythonInit = False
 * cdef void *__cuGetErrorString = NULL
 * cdef void *__cuGetErrorName = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuInit = NULL
 * cdef void *__cuDriverGetVersion = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuGetErrorName = NULL;

  /* "cuda/_cuda/ccuda.pyx":15
 * cdef void *__cuGetErrorString = NULL
 * cdef void *__cuGetErrorName = NULL
 * cdef void *__cuInit = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuDriverGetVersion = NULL
 * cdef void *__cuDeviceGet = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuInit = NULL;

  /* "cuda/_cuda/ccuda.pyx":16
 * cdef void *__cuGetErrorName = NULL
 * cdef void *__cuInit = NULL
 * cdef void *__cuDriverGetVersion = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuDeviceGet = NULL
 * cdef void *__cuDeviceGetCount = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuDriverGetVersion = NULL;

  /* "cuda/_cuda/ccuda.pyx":17
 * cdef void *__cuInit = NULL
 * cdef void *__cuDriverGetVersion = NULL
 * cdef void *__cuDeviceGet = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuDeviceGetCount = NULL
 * cdef void *__cuDeviceGetName = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuDeviceGet = NULL;

  /* "cuda/_cuda/ccuda.pyx":18
 * cdef void *__cuDriverGetVersion = NULL
 * cdef void *__cuDeviceGet = NULL
 * cdef void *__cuDeviceGetCount = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuDeviceGetName = NULL
 * cdef void *__cuDeviceGetUuid = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuDeviceGetCount = NULL;

  /* "cuda/_cuda/ccuda.pyx":19
 * cdef void *__cuDeviceGet = NULL
 * cdef void *__cuDeviceGetCount = NULL
 * cdef void *__cuDeviceGetName = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuDeviceGetUuid = NULL
 * cdef void *__cuDeviceGetUuid_v2 = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuDeviceGetName = NULL;

  /* "cuda/_cuda/ccuda.pyx":20
 * cdef void *__cuDeviceGetCount = NULL
 * cdef void *__cuDeviceGetName = NULL
 * cdef void *__cuDeviceGetUuid = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuDeviceGetUuid_v2 = NULL
 * cdef void *__cuDeviceGetLuid = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuDeviceGetUuid = NULL;

  /* "cuda/_cuda/ccuda.pyx":21
 * cdef void *__cuDeviceGetName = NULL
 * cdef void *__cuDeviceGetUuid = NULL
 * cdef void *__cuDeviceGetUuid_v2 = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuDeviceGetLuid = NULL
 * cdef void *__cuDeviceTotalMem_v2 = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuDeviceGetUuid_v2 = NULL;

  /* "cuda/_cuda/ccuda.pyx":22
 * cdef void *__cuDeviceGetUuid = NULL
 * cdef void *__cuDeviceGetUuid_v2 = NULL
 * cdef void *__cuDeviceGetLuid = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuDeviceTotalMem_v2 = NULL
 * cdef void *__cuDeviceGetTexture1DLinearMaxWidth = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuDeviceGetLuid = NULL;

  /* "cuda/_cuda/ccuda.pyx":23
 * cdef void *__cuDeviceGetUuid_v2 = NULL
 * cdef void *__cuDeviceGetLuid = NULL
 * cdef void *__cuDeviceTotalMem_v2 = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuDeviceGetTexture1DLinearMaxWidth = NULL
 * cdef void *__cuDeviceGetAttribute = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuDeviceTotalMem_v2 = NULL;

  /* "cuda/_cuda/ccuda.pyx":24
 * cdef void *__cuDeviceGetLuid = NULL
 * cdef void *__cuDeviceTotalMem_v2 = NULL
 * cdef void *__cuDeviceGetTexture1DLinearMaxWidth = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuDeviceGetAttribute = NULL
 * cdef void *__cuDeviceGetNvSciSyncAttributes = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuDeviceGetTexture1DLinearMaxWidth = NULL;

  /* "cuda/_cuda/ccuda.pyx":25
 * cdef void *__cuDeviceTotalMem_v2 = NULL
 * cdef void *__cuDeviceGetTexture1DLinearMaxWidth = NULL
 * cdef void *__cuDeviceGetAttribute = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuDeviceGetNvSciSyncAttributes = NULL
 * cdef void *__cuDeviceSetMemPool = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuDeviceGetAttribute = NULL;

  /* "cuda/_cuda/ccuda.pyx":26
 * cdef void *__cuDeviceGetTexture1DLinearMaxWidth = NULL
 * cdef void *__cuDeviceGetAttribute = NULL
 * cdef void *__cuDeviceGetNvSciSyncAttributes = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuDeviceSetMemPool = NULL
 * cdef void *__cuDeviceGetMemPool = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuDeviceGetNvSciSyncAttributes = NULL;

  /* "cuda/_cuda/ccuda.pyx":27
 * cdef void *__cuDeviceGetAttribute = NULL
 * cdef void *__cuDeviceGetNvSciSyncAttributes = NULL
 * cdef void *__cuDeviceSetMemPool = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuDeviceGetMemPool = NULL
 * cdef void *__cuDeviceGetDefaultMemPool = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuDeviceSetMemPool = NULL;

  /* "cuda/_cuda/ccuda.pyx":28
 * cdef void *__cuDeviceGetNvSciSyncAttributes = NULL
 * cdef void *__cuDeviceSetMemPool = NULL
 * cdef void *__cuDeviceGetMemPool = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuDeviceGetDefaultMemPool = NULL
 * cdef void *__cuDeviceGetExecAffinitySupport = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuDeviceGetMemPool = NULL;

  /* "cuda/_cuda/ccuda.pyx":29
 * cdef void *__cuDeviceSetMemPool = NULL
 * cdef void *__cuDeviceGetMemPool = NULL
 * cdef void *__cuDeviceGetDefaultMemPool = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuDeviceGetExecAffinitySupport = NULL
 * cdef void *__cuFlushGPUDirectRDMAWrites = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuDeviceGetDefaultMemPool = NULL;

  /* "cuda/_cuda/ccuda.pyx":30
 * cdef void *__cuDeviceGetMemPool = NULL
 * cdef void *__cuDeviceGetDefaultMemPool = NULL
 * cdef void *__cuDeviceGetExecAffinitySupport = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuFlushGPUDirectRDMAWrites = NULL
 * cdef void *__cuDeviceGetProperties = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuDeviceGetExecAffinitySupport = NULL;

  /* "cuda/_cuda/ccuda.pyx":31
 * cdef void *__cuDeviceGetDefaultMemPool = NULL
 * cdef void *__cuDeviceGetExecAffinitySupport = NULL
 * cdef void *__cuFlushGPUDirectRDMAWrites = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuDeviceGetProperties = NULL
 * cdef void *__cuDeviceComputeCapability = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuFlushGPUDirectRDMAWrites = NULL;

  /* "cuda/_cuda/ccuda.pyx":32
 * cdef void *__cuDeviceGetExecAffinitySupport = NULL
 * cdef void *__cuFlushGPUDirectRDMAWrites = NULL
 * cdef void *__cuDeviceGetProperties = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuDeviceComputeCapability = NULL
 * cdef void *__cuDevicePrimaryCtxRetain = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuDeviceGetProperties = NULL;

  /* "cuda/_cuda/ccuda.pyx":33
 * cdef void *__cuFlushGPUDirectRDMAWrites = NULL
 * cdef void *__cuDeviceGetProperties = NULL
 * cdef void *__cuDeviceComputeCapability = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuDevicePrimaryCtxRetain = NULL
 * cdef void *__cuDevicePrimaryCtxRelease_v2 = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuDeviceComputeCapability = NULL;

  /* "cuda/_cuda/ccuda.pyx":34
 * cdef void *__cuDeviceGetProperties = NULL
 * cdef void *__cuDeviceComputeCapability = NULL
 * cdef void *__cuDevicePrimaryCtxRetain = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuDevicePrimaryCtxRelease_v2 = NULL
 * cdef void *__cuDevicePrimaryCtxSetFlags_v2 = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuDevicePrimaryCtxRetain = NULL;

  /* "cuda/_cuda/ccuda.pyx":35
 * cdef void *__cuDeviceComputeCapability = NULL
 * cdef void *__cuDevicePrimaryCtxRetain = NULL
 * cdef void *__cuDevicePrimaryCtxRelease_v2 = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuDevicePrimaryCtxSetFlags_v2 = NULL
 * cdef void *__cuDevicePrimaryCtxGetState = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuDevicePrimaryCtxRelease_v2 = NULL;

  /* "cuda/_cuda/ccuda.pyx":36
 * cdef void *__cuDevicePrimaryCtxRetain = NULL
 * cdef void *__cuDevicePrimaryCtxRelease_v2 = NULL
 * cdef void *__cuDevicePrimaryCtxSetFlags_v2 = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuDevicePrimaryCtxGetState = NULL
 * cdef void *__cuDevicePrimaryCtxReset_v2 = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuDevicePrimaryCtxSetFlags_v2 = NULL;

  /* "cuda/_cuda/ccuda.pyx":37
 * cdef void *__cuDevicePrimaryCtxRelease_v2 = NULL
 * cdef void *__cuDevicePrimaryCtxSetFlags_v2 = NULL
 * cdef void *__cuDevicePrimaryCtxGetState = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuDevicePrimaryCtxReset_v2 = NULL
 * cdef void *__cuCtxCreate_v2 = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuDevicePrimaryCtxGetState = NULL;

  /* "cuda/_cuda/ccuda.pyx":38
 * cdef void *__cuDevicePrimaryCtxSetFlags_v2 = NULL
 * cdef void *__cuDevicePrimaryCtxGetState = NULL
 * cdef void *__cuDevicePrimaryCtxReset_v2 = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuCtxCreate_v2 = NULL
 * cdef void *__cuCtxCreate_v3 = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuDevicePrimaryCtxReset_v2 = NULL;

  /* "cuda/_cuda/ccuda.pyx":39
 * cdef void *__cuDevicePrimaryCtxGetState = NULL
 * cdef void *__cuDevicePrimaryCtxReset_v2 = NULL
 * cdef void *__cuCtxCreate_v2 = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuCtxCreate_v3 = NULL
 * cdef void *__cuCtxDestroy_v2 = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuCtxCreate_v2 = NULL;

  /* "cuda/_cuda/ccuda.pyx":40
 * cdef void *__cuDevicePrimaryCtxReset_v2 = NULL
 * cdef void *__cuCtxCreate_v2 = NULL
 * cdef void *__cuCtxCreate_v3 = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuCtxDestroy_v2 = NULL
 * cdef void *__cuCtxPushCurrent_v2 = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuCtxCreate_v3 = NULL;

  /* "cuda/_cuda/ccuda.pyx":41
 * cdef void *__cuCtxCreate_v2 = NULL
 * cdef void *__cuCtxCreate_v3 = NULL
 * cdef void *__cuCtxDestroy_v2 = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuCtxPushCurrent_v2 = NULL
 * cdef void *__cuCtxPopCurrent_v2 = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuCtxDestroy_v2 = NULL;

  /* "cuda/_cuda/ccuda.pyx":42
 * cdef void *__cuCtxCreate_v3 = NULL
 * cdef void *__cuCtxDestroy_v2 = NULL
 * cdef void *__cuCtxPushCurrent_v2 = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuCtxPopCurrent_v2 = NULL
 * cdef void *__cuCtxSetCurrent = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuCtxPushCurrent_v2 = NULL;

  /* "cuda/_cuda/ccuda.pyx":43
 * cdef void *__cuCtxDestroy_v2 = NULL
 * cdef void *__cuCtxPushCurrent_v2 = NULL
 * cdef void *__cuCtxPopCurrent_v2 = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuCtxSetCurrent = NULL
 * cdef void *__cuCtxGetCurrent = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuCtxPopCurrent_v2 = NULL;

  /* "cuda/_cuda/ccuda.pyx":44
 * cdef void *__cuCtxPushCurrent_v2 = NULL
 * cdef void *__cuCtxPopCurrent_v2 = NULL
 * cdef void *__cuCtxSetCurrent = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuCtxGetCurrent = NULL
 * cdef void *__cuCtxGetDevice = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuCtxSetCurrent = NULL;

  /* "cuda/_cuda/ccuda.pyx":45
 * cdef void *__cuCtxPopCurrent_v2 = NULL
 * cdef void *__cuCtxSetCurrent = NULL
 * cdef void *__cuCtxGetCurrent = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuCtxGetDevice = NULL
 * cdef void *__cuCtxGetFlags = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuCtxGetCurrent = NULL;

  /* "cuda/_cuda/ccuda.pyx":46
 * cdef void *__cuCtxSetCurrent = NULL
 * cdef void *__cuCtxGetCurrent = NULL
 * cdef void *__cuCtxGetDevice = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuCtxGetFlags = NULL
 * cdef void *__cuCtxSetFlags = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuCtxGetDevice = NULL;

  /* "cuda/_cuda/ccuda.pyx":47
 * cdef void *__cuCtxGetCurrent = NULL
 * cdef void *__cuCtxGetDevice = NULL
 * cdef void *__cuCtxGetFlags = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuCtxSetFlags = NULL
 * cdef void *__cuCtxGetId = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuCtxGetFlags = NULL;

  /* "cuda/_cuda/ccuda.pyx":48
 * cdef void *__cuCtxGetDevice = NULL
 * cdef void *__cuCtxGetFlags = NULL
 * cdef void *__cuCtxSetFlags = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuCtxGetId = NULL
 * cdef void *__cuCtxSynchronize = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuCtxSetFlags = NULL;

  /* "cuda/_cuda/ccuda.pyx":49
 * cdef void *__cuCtxGetFlags = NULL
 * cdef void *__cuCtxSetFlags = NULL
 * cdef void *__cuCtxGetId = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuCtxSynchronize = NULL
 * cdef void *__cuCtxSetLimit = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuCtxGetId = NULL;

  /* "cuda/_cuda/ccuda.pyx":50
 * cdef void *__cuCtxSetFlags = NULL
 * cdef void *__cuCtxGetId = NULL
 * cdef void *__cuCtxSynchronize = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuCtxSetLimit = NULL
 * cdef void *__cuCtxGetLimit = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuCtxSynchronize = NULL;

  /* "cuda/_cuda/ccuda.pyx":51
 * cdef void *__cuCtxGetId = NULL
 * cdef void *__cuCtxSynchronize = NULL
 * cdef void *__cuCtxSetLimit = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuCtxGetLimit = NULL
 * cdef void *__cuCtxGetCacheConfig = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuCtxSetLimit = NULL;

  /* "cuda/_cuda/ccuda.pyx":52
 * cdef void *__cuCtxSynchronize = NULL
 * cdef void *__cuCtxSetLimit = NULL
 * cdef void *__cuCtxGetLimit = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuCtxGetCacheConfig = NULL
 * cdef void *__cuCtxSetCacheConfig = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuCtxGetLimit = NULL;

  /* "cuda/_cuda/ccuda.pyx":53
 * cdef void *__cuCtxSetLimit = NULL
 * cdef void *__cuCtxGetLimit = NULL
 * cdef void *__cuCtxGetCacheConfig = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuCtxSetCacheConfig = NULL
 * cdef void *__cuCtxGetApiVersion = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuCtxGetCacheConfig = NULL;

  /* "cuda/_cuda/ccuda.pyx":54
 * cdef void *__cuCtxGetLimit = NULL
 * cdef void *__cuCtxGetCacheConfig = NULL
 * cdef void *__cuCtxSetCacheConfig = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuCtxGetApiVersion = NULL
 * cdef void *__cuCtxGetStreamPriorityRange = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuCtxSetCacheConfig = NULL;

  /* "cuda/_cuda/ccuda.pyx":55
 * cdef void *__cuCtxGetCacheConfig = NULL
 * cdef void *__cuCtxSetCacheConfig = NULL
 * cdef void *__cuCtxGetApiVersion = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuCtxGetStreamPriorityRange = NULL
 * cdef void *__cuCtxResetPersistingL2Cache = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuCtxGetApiVersion = NULL;

  /* "cuda/_cuda/ccuda.pyx":56
 * cdef void *__cuCtxSetCacheConfig = NULL
 * cdef void *__cuCtxGetApiVersion = NULL
 * cdef void *__cuCtxGetStreamPriorityRange = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuCtxResetPersistingL2Cache = NULL
 * cdef void *__cuCtxGetExecAffinity = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuCtxGetStreamPriorityRange = NULL;

  /* "cuda/_cuda/ccuda.pyx":57
 * cdef void *__cuCtxGetApiVersion = NULL
 * cdef void *__cuCtxGetStreamPriorityRange = NULL
 * cdef void *__cuCtxResetPersistingL2Cache = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuCtxGetExecAffinity = NULL
 * cdef void *__cuCtxAttach = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuCtxResetPersistingL2Cache = NULL;

  /* "cuda/_cuda/ccuda.pyx":58
 * cdef void *__cuCtxGetStreamPriorityRange = NULL
 * cdef void *__cuCtxResetPersistingL2Cache = NULL
 * cdef void *__cuCtxGetExecAffinity = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuCtxAttach = NULL
 * cdef void *__cuCtxDetach = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuCtxGetExecAffinity = NULL;

  /* "cuda/_cuda/ccuda.pyx":59
 * cdef void *__cuCtxResetPersistingL2Cache = NULL
 * cdef void *__cuCtxGetExecAffinity = NULL
 * cdef void *__cuCtxAttach = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuCtxDetach = NULL
 * cdef void *__cuCtxGetSharedMemConfig = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuCtxAttach = NULL;

  /* "cuda/_cuda/ccuda.pyx":60
 * cdef void *__cuCtxGetExecAffinity = NULL
 * cdef void *__cuCtxAttach = NULL
 * cdef void *__cuCtxDetach = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuCtxGetSharedMemConfig = NULL
 * cdef void *__cuCtxSetSharedMemConfig = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuCtxDetach = NULL;

  /* "cuda/_cuda/ccuda.pyx":61
 * cdef void *__cuCtxAttach = NULL
 * cdef void *__cuCtxDetach = NULL
 * cdef void *__cuCtxGetSharedMemConfig = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuCtxSetSharedMemConfig = NULL
 * cdef void *__cuModuleLoad = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuCtxGetSharedMemConfig = NULL;

  /* "cuda/_cuda/ccuda.pyx":62
 * cdef void *__cuCtxDetach = NULL
 * cdef void *__cuCtxGetSharedMemConfig = NULL
 * cdef void *__cuCtxSetSharedMemConfig = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuModuleLoad = NULL
 * cdef void *__cuModuleLoadData = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuCtxSetSharedMemConfig = NULL;

  /* "cuda/_cuda/ccuda.pyx":63
 * cdef void *__cuCtxGetSharedMemConfig = NULL
 * cdef void *__cuCtxSetSharedMemConfig = NULL
 * cdef void *__cuModuleLoad = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuModuleLoadData = NULL
 * cdef void *__cuModuleLoadDataEx = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuModuleLoad = NULL;

  /* "cuda/_cuda/ccuda.pyx":64
 * cdef void *__cuCtxSetSharedMemConfig = NULL
 * cdef void *__cuModuleLoad = NULL
 * cdef void *__cuModuleLoadData = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuModuleLoadDataEx = NULL
 * cdef void *__cuModuleLoadFatBinary = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuModuleLoadData = NULL;

  /* "cuda/_cuda/ccuda.pyx":65
 * cdef void *__cuModuleLoad = NULL
 * cdef void *__cuModuleLoadData = NULL
 * cdef void *__cuModuleLoadDataEx = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuModuleLoadFatBinary = NULL
 * cdef void *__cuModuleUnload = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuModuleLoadDataEx = NULL;

  /* "cuda/_cuda/ccuda.pyx":66
 * cdef void *__cuModuleLoadData = NULL
 * cdef void *__cuModuleLoadDataEx = NULL
 * cdef void *__cuModuleLoadFatBinary = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuModuleUnload = NULL
 * cdef void *__cuModuleGetLoadingMode = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuModuleLoadFatBinary = NULL;

  /* "cuda/_cuda/ccuda.pyx":67
 * cdef void *__cuModuleLoadDataEx = NULL
 * cdef void *__cuModuleLoadFatBinary = NULL
 * cdef void *__cuModuleUnload = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuModuleGetLoadingMode = NULL
 * cdef void *__cuModuleGetFunction = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuModuleUnload = NULL;

  /* "cuda/_cuda/ccuda.pyx":68
 * cdef void *__cuModuleLoadFatBinary = NULL
 * cdef void *__cuModuleUnload = NULL
 * cdef void *__cuModuleGetLoadingMode = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuModuleGetFunction = NULL
 * cdef void *__cuModuleGetFunctionCount = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuModuleGetLoadingMode = NULL;

  /* "cuda/_cuda/ccuda.pyx":69
 * cdef void *__cuModuleUnload = NULL
 * cdef void *__cuModuleGetLoadingMode = NULL
 * cdef void *__cuModuleGetFunction = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuModuleGetFunctionCount = NULL
 * cdef void *__cuModuleEnumerateFunctions = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuModuleGetFunction = NULL;

  /* "cuda/_cuda/ccuda.pyx":70
 * cdef void *__cuModuleGetLoadingMode = NULL
 * cdef void *__cuModuleGetFunction = NULL
 * cdef void *__cuModuleGetFunctionCount = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuModuleEnumerateFunctions = NULL
 * cdef void *__cuModuleGetGlobal_v2 = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuModuleGetFunctionCount = NULL;

  /* "cuda/_cuda/ccuda.pyx":71
 * cdef void *__cuModuleGetFunction = NULL
 * cdef void *__cuModuleGetFunctionCount = NULL
 * cdef void *__cuModuleEnumerateFunctions = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuModuleGetGlobal_v2 = NULL
 * cdef void *__cuLinkCreate_v2 = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuModuleEnumerateFunctions = NULL;

  /* "cuda/_cuda/ccuda.pyx":72
 * cdef void *__cuModuleGetFunctionCount = NULL
 * cdef void *__cuModuleEnumerateFunctions = NULL
 * cdef void *__cuModuleGetGlobal_v2 = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuLinkCreate_v2 = NULL
 * cdef void *__cuLinkAddData_v2 = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuModuleGetGlobal_v2 = NULL;

  /* "cuda/_cuda/ccuda.pyx":73
 * cdef void *__cuModuleEnumerateFunctions = NULL
 * cdef void *__cuModuleGetGlobal_v2 = NULL
 * cdef void *__cuLinkCreate_v2 = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuLinkAddData_v2 = NULL
 * cdef void *__cuLinkAddFile_v2 = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuLinkCreate_v2 = NULL;

  /* "cuda/_cuda/ccuda.pyx":74
 * cdef void *__cuModuleGetGlobal_v2 = NULL
 * cdef void *__cuLinkCreate_v2 = NULL
 * cdef void *__cuLinkAddData_v2 = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuLinkAddFile_v2 = NULL
 * cdef void *__cuLinkComplete = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuLinkAddData_v2 = NULL;

  /* "cuda/_cuda/ccuda.pyx":75
 * cdef void *__cuLinkCreate_v2 = NULL
 * cdef void *__cuLinkAddData_v2 = NULL
 * cdef void *__cuLinkAddFile_v2 = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuLinkComplete = NULL
 * cdef void *__cuLinkDestroy = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuLinkAddFile_v2 = NULL;

  /* "cuda/_cuda/ccuda.pyx":76
 * cdef void *__cuLinkAddData_v2 = NULL
 * cdef void *__cuLinkAddFile_v2 = NULL
 * cdef void *__cuLinkComplete = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuLinkDestroy = NULL
 * cdef void *__cuModuleGetTexRef = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuLinkComplete = NULL;

  /* "cuda/_cuda/ccuda.pyx":77
 * cdef void *__cuLinkAddFile_v2 = NULL
 * cdef void *__cuLinkComplete = NULL
 * cdef void *__cuLinkDestroy = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuModuleGetTexRef = NULL
 * cdef void *__cuModuleGetSurfRef = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuLinkDestroy = NULL;

  /* "cuda/_cuda/ccuda.pyx":78
 * cdef void *__cuLinkComplete = NULL
 * cdef void *__cuLinkDestroy = NULL
 * cdef void *__cuModuleGetTexRef = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuModuleGetSurfRef = NULL
 * cdef void *__cuLibraryLoadData = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuModuleGetTexRef = NULL;

  /* "cuda/_cuda/ccuda.pyx":79
 * cdef void *__cuLinkDestroy = NULL
 * cdef void *__cuModuleGetTexRef = NULL
 * cdef void *__cuModuleGetSurfRef = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuLibraryLoadData = NULL
 * cdef void *__cuLibraryLoadFromFile = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuModuleGetSurfRef = NULL;

  /* "cuda/_cuda/ccuda.pyx":80
 * cdef void *__cuModuleGetTexRef = NULL
 * cdef void *__cuModuleGetSurfRef = NULL
 * cdef void *__cuLibraryLoadData = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuLibraryLoadFromFile = NULL
 * cdef void *__cuLibraryUnload = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuLibraryLoadData = NULL;

  /* "cuda/_cuda/ccuda.pyx":81
 * cdef void *__cuModuleGetSurfRef = NULL
 * cdef void *__cuLibraryLoadData = NULL
 * cdef void *__cuLibraryLoadFromFile = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuLibraryUnload = NULL
 * cdef void *__cuLibraryGetKernel = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuLibraryLoadFromFile = NULL;

  /* "cuda/_cuda/ccuda.pyx":82
 * cdef void *__cuLibraryLoadData = NULL
 * cdef void *__cuLibraryLoadFromFile = NULL
 * cdef void *__cuLibraryUnload = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuLibraryGetKernel = NULL
 * cdef void *__cuLibraryGetKernelCount = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuLibraryUnload = NULL;

  /* "cuda/_cuda/ccuda.pyx":83
 * cdef void *__cuLibraryLoadFromFile = NULL
 * cdef void *__cuLibraryUnload = NULL
 * cdef void *__cuLibraryGetKernel = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuLibraryGetKernelCount = NULL
 * cdef void *__cuLibraryEnumerateKernels = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuLibraryGetKernel = NULL;

  /* "cuda/_cuda/ccuda.pyx":84
 * cdef void *__cuLibraryUnload = NULL
 * cdef void *__cuLibraryGetKernel = NULL
 * cdef void *__cuLibraryGetKernelCount = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuLibraryEnumerateKernels = NULL
 * cdef void *__cuLibraryGetModule = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuLibraryGetKernelCount = NULL;

  /* "cuda/_cuda/ccuda.pyx":85
 * cdef void *__cuLibraryGetKernel = NULL
 * cdef void *__cuLibraryGetKernelCount = NULL
 * cdef void *__cuLibraryEnumerateKernels = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuLibraryGetModule = NULL
 * cdef void *__cuKernelGetFunction = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuLibraryEnumerateKernels = NULL;

  /* "cuda/_cuda/ccuda.pyx":86
 * cdef void *__cuLibraryGetKernelCount = NULL
 * cdef void *__cuLibraryEnumerateKernels = NULL
 * cdef void *__cuLibraryGetModule = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuKernelGetFunction = NULL
 * cdef void *__cuLibraryGetGlobal = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuLibraryGetModule = NULL;

  /* "cuda/_cuda/ccuda.pyx":87
 * cdef void *__cuLibraryEnumerateKernels = NULL
 * cdef void *__cuLibraryGetModule = NULL
 * cdef void *__cuKernelGetFunction = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuLibraryGetGlobal = NULL
 * cdef void *__cuLibraryGetManaged = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuKernelGetFunction = NULL;

  /* "cuda/_cuda/ccuda.pyx":88
 * cdef void *__cuLibraryGetModule = NULL
 * cdef void *__cuKernelGetFunction = NULL
 * cdef void *__cuLibraryGetGlobal = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuLibraryGetManaged = NULL
 * cdef void *__cuLibraryGetUnifiedFunction = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuLibraryGetGlobal = NULL;

  /* "cuda/_cuda/ccuda.pyx":89
 * cdef void *__cuKernelGetFunction = NULL
 * cdef void *__cuLibraryGetGlobal = NULL
 * cdef void *__cuLibraryGetManaged = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuLibraryGetUnifiedFunction = NULL
 * cdef void *__cuKernelGetAttribute = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuLibraryGetManaged = NULL;

  /* "cuda/_cuda/ccuda.pyx":90
 * cdef void *__cuLibraryGetGlobal = NULL
 * cdef void *__cuLibraryGetManaged = NULL
 * cdef void *__cuLibraryGetUnifiedFunction = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuKernelGetAttribute = NULL
 * cdef void *__cuKernelSetAttribute = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuLibraryGetUnifiedFunction = NULL;

  /* "cuda/_cuda/ccuda.pyx":91
 * cdef void *__cuLibraryGetManaged = NULL
 * cdef void *__cuLibraryGetUnifiedFunction = NULL
 * cdef void *__cuKernelGetAttribute = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuKernelSetAttribute = NULL
 * cdef void *__cuKernelSetCacheConfig = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuKernelGetAttribute = NULL;

  /* "cuda/_cuda/ccuda.pyx":92
 * cdef void *__cuLibraryGetUnifiedFunction = NULL
 * cdef void *__cuKernelGetAttribute = NULL
 * cdef void *__cuKernelSetAttribute = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuKernelSetCacheConfig = NULL
 * cdef void *__cuKernelGetName = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuKernelSetAttribute = NULL;

  /* "cuda/_cuda/ccuda.pyx":93
 * cdef void *__cuKernelGetAttribute = NULL
 * cdef void *__cuKernelSetAttribute = NULL
 * cdef void *__cuKernelSetCacheConfig = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuKernelGetName = NULL
 * cdef void *__cuKernelGetParamInfo = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuKernelSetCacheConfig = NULL;

  /* "cuda/_cuda/ccuda.pyx":94
 * cdef void *__cuKernelSetAttribute = NULL
 * cdef void *__cuKernelSetCacheConfig = NULL
 * cdef void *__cuKernelGetName = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuKernelGetParamInfo = NULL
 * cdef void *__cuMemGetInfo_v2 = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuKernelGetName = NULL;

  /* "cuda/_cuda/ccuda.pyx":95
 * cdef void *__cuKernelSetCacheConfig = NULL
 * cdef void *__cuKernelGetName = NULL
 * cdef void *__cuKernelGetParamInfo = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuMemGetInfo_v2 = NULL
 * cdef void *__cuMemAlloc_v2 = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuKernelGetParamInfo = NULL;

  /* "cuda/_cuda/ccuda.pyx":96
 * cdef void *__cuKernelGetName = NULL
 * cdef void *__cuKernelGetParamInfo = NULL
 * cdef void *__cuMemGetInfo_v2 = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuMemAlloc_v2 = NULL
 * cdef void *__cuMemAllocPitch_v2 = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuMemGetInfo_v2 = NULL;

  /* "cuda/_cuda/ccuda.pyx":97
 * cdef void *__cuKernelGetParamInfo = NULL
 * cdef void *__cuMemGetInfo_v2 = NULL
 * cdef void *__cuMemAlloc_v2 = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuMemAllocPitch_v2 = NULL
 * cdef void *__cuMemFree_v2 = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuMemAlloc_v2 = NULL;

  /* "cuda/_cuda/ccuda.pyx":98
 * cdef void *__cuMemGetInfo_v2 = NULL
 * cdef void *__cuMemAlloc_v2 = NULL
 * cdef void *__cuMemAllocPitch_v2 = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuMemFree_v2 = NULL
 * cdef void *__cuMemGetAddressRange_v2 = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuMemAllocPitch_v2 = NULL;

  /* "cuda/_cuda/ccuda.pyx":99
 * cdef void *__cuMemAlloc_v2 = NULL
 * cdef void *__cuMemAllocPitch_v2 = NULL
 * cdef void *__cuMemFree_v2 = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuMemGetAddressRange_v2 = NULL
 * cdef void *__cuMemAllocHost_v2 = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuMemFree_v2 = NULL;

  /* "cuda/_cuda/ccuda.pyx":100
 * cdef void *__cuMemAllocPitch_v2 = NULL
 * cdef void *__cuMemFree_v2 = NULL
 * cdef void *__cuMemGetAddressRange_v2 = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuMemAllocHost_v2 = NULL
 * cdef void *__cuMemFreeHost = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuMemGetAddressRange_v2 = NULL;

  /* "cuda/_cuda/ccuda.pyx":101
 * cdef void *__cuMemFree_v2 = NULL
 * cdef void *__cuMemGetAddressRange_v2 = NULL
 * cdef void *__cuMemAllocHost_v2 = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuMemFreeHost = NULL
 * cdef void *__cuMemHostAlloc = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuMemAllocHost_v2 = NULL;

  /* "cuda/_cuda/ccuda.pyx":102
 * cdef void *__cuMemGetAddressRange_v2 = NULL
 * cdef void *__cuMemAllocHost_v2 = NULL
 * cdef void *__cuMemFreeHost = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuMemHostAlloc = NULL
 * cdef void *__cuMemHostGetDevicePointer_v2 = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuMemFreeHost = NULL;

  /* "cuda/_cuda/ccuda.pyx":103
 * cdef void *__cuMemAllocHost_v2 = NULL
 * cdef void *__cuMemFreeHost = NULL
 * cdef void *__cuMemHostAlloc = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuMemHostGetDevicePointer_v2 = NULL
 * cdef void *__cuMemHostGetFlags = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuMemHostAlloc = NULL;

  /* "cuda/_cuda/ccuda.pyx":104
 * cdef void *__cuMemFreeHost = NULL
 * cdef void *__cuMemHostAlloc = NULL
 * cdef void *__cuMemHostGetDevicePointer_v2 = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuMemHostGetFlags = NULL
 * cdef void *__cuMemAllocManaged = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuMemHostGetDevicePointer_v2 = NULL;

  /* "cuda/_cuda/ccuda.pyx":105
 * cdef void *__cuMemHostAlloc = NULL
 * cdef void *__cuMemHostGetDevicePointer_v2 = NULL
 * cdef void *__cuMemHostGetFlags = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuMemAllocManaged = NULL
 * cdef void *__cuDeviceRegisterAsyncNotification = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuMemHostGetFlags = NULL;

  /* "cuda/_cuda/ccuda.pyx":106
 * cdef void *__cuMemHostGetDevicePointer_v2 = NULL
 * cdef void *__cuMemHostGetFlags = NULL
 * cdef void *__cuMemAllocManaged = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuDeviceRegisterAsyncNotification = NULL
 * cdef void *__cuDeviceUnregisterAsyncNotification = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuMemAllocManaged = NULL;

  /* "cuda/_cuda/ccuda.pyx":107
 * cdef void *__cuMemHostGetFlags = NULL
 * cdef void *__cuMemAllocManaged = NULL
 * cdef void *__cuDeviceRegisterAsyncNotification = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuDeviceUnregisterAsyncNotification = NULL
 * cdef void *__cuDeviceGetByPCIBusId = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuDeviceRegisterAsyncNotification = NULL;

  /* "cuda/_cuda/ccuda.pyx":108
 * cdef void *__cuMemAllocManaged = NULL
 * cdef void *__cuDeviceRegisterAsyncNotification = NULL
 * cdef void *__cuDeviceUnregisterAsyncNotification = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuDeviceGetByPCIBusId = NULL
 * cdef void *__cuDeviceGetPCIBusId = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuDeviceUnregisterAsyncNotification = NULL;

  /* "cuda/_cuda/ccuda.pyx":109
 * cdef void *__cuDeviceRegisterAsyncNotification = NULL
 * cdef void *__cuDeviceUnregisterAsyncNotification = NULL
 * cdef void *__cuDeviceGetByPCIBusId = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuDeviceGetPCIBusId = NULL
 * cdef void *__cuIpcGetEventHandle = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuDeviceGetByPCIBusId = NULL;

  /* "cuda/_cuda/ccuda.pyx":110
 * cdef void *__cuDeviceUnregisterAsyncNotification = NULL
 * cdef void *__cuDeviceGetByPCIBusId = NULL
 * cdef void *__cuDeviceGetPCIBusId = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuIpcGetEventHandle = NULL
 * cdef void *__cuIpcOpenEventHandle = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuDeviceGetPCIBusId = NULL;

  /* "cuda/_cuda/ccuda.pyx":111
 * cdef void *__cuDeviceGetByPCIBusId = NULL
 * cdef void *__cuDeviceGetPCIBusId = NULL
 * cdef void *__cuIpcGetEventHandle = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuIpcOpenEventHandle = NULL
 * cdef void *__cuIpcGetMemHandle = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuIpcGetEventHandle = NULL;

  /* "cuda/_cuda/ccuda.pyx":112
 * cdef void *__cuDeviceGetPCIBusId = NULL
 * cdef void *__cuIpcGetEventHandle = NULL
 * cdef void *__cuIpcOpenEventHandle = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuIpcGetMemHandle = NULL
 * cdef void *__cuIpcOpenMemHandle_v2 = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuIpcOpenEventHandle = NULL;

  /* "cuda/_cuda/ccuda.pyx":113
 * cdef void *__cuIpcGetEventHandle = NULL
 * cdef void *__cuIpcOpenEventHandle = NULL
 * cdef void *__cuIpcGetMemHandle = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuIpcOpenMemHandle_v2 = NULL
 * cdef void *__cuIpcCloseMemHandle = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuIpcGetMemHandle = NULL;

  /* "cuda/_cuda/ccuda.pyx":114
 * cdef void *__cuIpcOpenEventHandle = NULL
 * cdef void *__cuIpcGetMemHandle = NULL
 * cdef void *__cuIpcOpenMemHandle_v2 = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuIpcCloseMemHandle = NULL
 * cdef void *__cuMemHostRegister_v2 = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuIpcOpenMemHandle_v2 = NULL;

  /* "cuda/_cuda/ccuda.pyx":115
 * cdef void *__cuIpcGetMemHandle = NULL
 * cdef void *__cuIpcOpenMemHandle_v2 = NULL
 * cdef void *__cuIpcCloseMemHandle = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuMemHostRegister_v2 = NULL
 * cdef void *__cuMemHostUnregister = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuIpcCloseMemHandle = NULL;

  /* "cuda/_cuda/ccuda.pyx":116
 * cdef void *__cuIpcOpenMemHandle_v2 = NULL
 * cdef void *__cuIpcCloseMemHandle = NULL
 * cdef void *__cuMemHostRegister_v2 = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuMemHostUnregister = NULL
 * cdef void *__cuMemcpy = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuMemHostRegister_v2 = NULL;

  /* "cuda/_cuda/ccuda.pyx":117
 * cdef void *__cuIpcCloseMemHandle = NULL
 * cdef void *__cuMemHostRegister_v2 = NULL
 * cdef void *__cuMemHostUnregister = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuMemcpy = NULL
 * cdef void *__cuMemcpyPeer = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuMemHostUnregister = NULL;

  /* "cuda/_cuda/ccuda.pyx":118
 * cdef void *__cuMemHostRegister_v2 = NULL
 * cdef void *__cuMemHostUnregister = NULL
 * cdef void *__cuMemcpy = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuMemcpyPeer = NULL
 * cdef void *__cuMemcpyHtoD_v2 = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuMemcpy = NULL;

  /* "cuda/_cuda/ccuda.pyx":119
 * cdef void *__cuMemHostUnregister = NULL
 * cdef void *__cuMemcpy = NULL
 * cdef void *__cuMemcpyPeer = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuMemcpyHtoD_v2 = NULL
 * cdef void *__cuMemcpyDtoH_v2 = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuMemcpyPeer = NULL;

  /* "cuda/_cuda/ccuda.pyx":120
 * cdef void *__cuMemcpy = NULL
 * cdef void *__cuMemcpyPeer = NULL
 * cdef void *__cuMemcpyHtoD_v2 = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuMemcpyDtoH_v2 = NULL
 * cdef void *__cuMemcpyDtoD_v2 = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuMemcpyHtoD_v2 = NULL;

  /* "cuda/_cuda/ccuda.pyx":121
 * cdef void *__cuMemcpyPeer = NULL
 * cdef void *__cuMemcpyHtoD_v2 = NULL
 * cdef void *__cuMemcpyDtoH_v2 = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuMemcpyDtoD_v2 = NULL
 * cdef void *__cuMemcpyDtoA_v2 = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuMemcpyDtoH_v2 = NULL;

  /* "cuda/_cuda/ccuda.pyx":122
 * cdef void *__cuMemcpyHtoD_v2 = NULL
 * cdef void *__cuMemcpyDtoH_v2 = NULL
 * cdef void *__cuMemcpyDtoD_v2 = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuMemcpyDtoA_v2 = NULL
 * cdef void *__cuMemcpyAtoD_v2 = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuMemcpyDtoD_v2 = NULL;

  /* "cuda/_cuda/ccuda.pyx":123
 * cdef void *__cuMemcpyDtoH_v2 = NULL
 * cdef void *__cuMemcpyDtoD_v2 = NULL
 * cdef void *__cuMemcpyDtoA_v2 = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuMemcpyAtoD_v2 = NULL
 * cdef void *__cuMemcpyHtoA_v2 = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuMemcpyDtoA_v2 = NULL;

  /* "cuda/_cuda/ccuda.pyx":124
 * cdef void *__cuMemcpyDtoD_v2 = NULL
 * cdef void *__cuMemcpyDtoA_v2 = NULL
 * cdef void *__cuMemcpyAtoD_v2 = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuMemcpyHtoA_v2 = NULL
 * cdef void *__cuMemcpyAtoH_v2 = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuMemcpyAtoD_v2 = NULL;

  /* "cuda/_cuda/ccuda.pyx":125
 * cdef void *__cuMemcpyDtoA_v2 = NULL
 * cdef void *__cuMemcpyAtoD_v2 = NULL
 * cdef void *__cuMemcpyHtoA_v2 = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuMemcpyAtoH_v2 = NULL
 * cdef void *__cuMemcpyAtoA_v2 = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuMemcpyHtoA_v2 = NULL;

  /* "cuda/_cuda/ccuda.pyx":126
 * cdef void *__cuMemcpyAtoD_v2 = NULL
 * cdef void *__cuMemcpyHtoA_v2 = NULL
 * cdef void *__cuMemcpyAtoH_v2 = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuMemcpyAtoA_v2 = NULL
 * cdef void *__cuMemcpy2D_v2 = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuMemcpyAtoH_v2 = NULL;

  /* "cuda/_cuda/ccuda.pyx":127
 * cdef void *__cuMemcpyHtoA_v2 = NULL
 * cdef void *__cuMemcpyAtoH_v2 = NULL
 * cdef void *__cuMemcpyAtoA_v2 = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuMemcpy2D_v2 = NULL
 * cdef void *__cuMemcpy2DUnaligned_v2 = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuMemcpyAtoA_v2 = NULL;

  /* "cuda/_cuda/ccuda.pyx":128
 * cdef void *__cuMemcpyAtoH_v2 = NULL
 * cdef void *__cuMemcpyAtoA_v2 = NULL
 * cdef void *__cuMemcpy2D_v2 = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuMemcpy2DUnaligned_v2 = NULL
 * cdef void *__cuMemcpy3D_v2 = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuMemcpy2D_v2 = NULL;

  /* "cuda/_cuda/ccuda.pyx":129
 * cdef void *__cuMemcpyAtoA_v2 = NULL
 * cdef void *__cuMemcpy2D_v2 = NULL
 * cdef void *__cuMemcpy2DUnaligned_v2 = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuMemcpy3D_v2 = NULL
 * cdef void *__cuMemcpy3DPeer = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuMemcpy2DUnaligned_v2 = NULL;

  /* "cuda/_cuda/ccuda.pyx":130
 * cdef void *__cuMemcpy2D_v2 = NULL
 * cdef void *__cuMemcpy2DUnaligned_v2 = NULL
 * cdef void *__cuMemcpy3D_v2 = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuMemcpy3DPeer = NULL
 * cdef void *__cuMemcpyAsync = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuMemcpy3D_v2 = NULL;

  /* "cuda/_cuda/ccuda.pyx":131
 * cdef void *__cuMemcpy2DUnaligned_v2 = NULL
 * cdef void *__cuMemcpy3D_v2 = NULL
 * cdef void *__cuMemcpy3DPeer = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuMemcpyAsync = NULL
 * cdef void *__cuMemcpyPeerAsync = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuMemcpy3DPeer = NULL;

  /* "cuda/_cuda/ccuda.pyx":132
 * cdef void *__cuMemcpy3D_v2 = NULL
 * cdef void *__cuMemcpy3DPeer = NULL
 * cdef void *__cuMemcpyAsync = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuMemcpyPeerAsync = NULL
 * cdef void *__cuMemcpyHtoDAsync_v2 = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuMemcpyAsync = NULL;

  /* "cuda/_cuda/ccuda.pyx":133
 * cdef void *__cuMemcpy3DPeer = NULL
 * cdef void *__cuMemcpyAsync = NULL
 * cdef void *__cuMemcpyPeerAsync = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuMemcpyHtoDAsync_v2 = NULL
 * cdef void *__cuMemcpyDtoHAsync_v2 = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuMemcpyPeerAsync = NULL;

  /* "cuda/_cuda/ccuda.pyx":134
 * cdef void *__cuMemcpyAsync = NULL
 * cdef void *__cuMemcpyPeerAsync = NULL
 * cdef void *__cuMemcpyHtoDAsync_v2 = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuMemcpyDtoHAsync_v2 = NULL
 * cdef void *__cuMemcpyDtoDAsync_v2 = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuMemcpyHtoDAsync_v2 = NULL;

  /* "cuda/_cuda/ccuda.pyx":135
 * cdef void *__cuMemcpyPeerAsync = NULL
 * cdef void *__cuMemcpyHtoDAsync_v2 = NULL
 * cdef void *__cuMemcpyDtoHAsync_v2 = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuMemcpyDtoDAsync_v2 = NULL
 * cdef void *__cuMemcpyHtoAAsync_v2 = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuMemcpyDtoHAsync_v2 = NULL;

  /* "cuda/_cuda/ccuda.pyx":136
 * cdef void *__cuMemcpyHtoDAsync_v2 = NULL
 * cdef void *__cuMemcpyDtoHAsync_v2 = NULL
 * cdef void *__cuMemcpyDtoDAsync_v2 = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuMemcpyHtoAAsync_v2 = NULL
 * cdef void *__cuMemcpyAtoHAsync_v2 = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuMemcpyDtoDAsync_v2 = NULL;

  /* "cuda/_cuda/ccuda.pyx":137
 * cdef void *__cuMemcpyDtoHAsync_v2 = NULL
 * cdef void *__cuMemcpyDtoDAsync_v2 = NULL
 * cdef void *__cuMemcpyHtoAAsync_v2 = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuMemcpyAtoHAsync_v2 = NULL
 * cdef void *__cuMemcpy2DAsync_v2 = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuMemcpyHtoAAsync_v2 = NULL;

  /* "cuda/_cuda/ccuda.pyx":138
 * cdef void *__cuMemcpyDtoDAsync_v2 = NULL
 * cdef void *__cuMemcpyHtoAAsync_v2 = NULL
 * cdef void *__cuMemcpyAtoHAsync_v2 = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuMemcpy2DAsync_v2 = NULL
 * cdef void *__cuMemcpy3DAsync_v2 = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuMemcpyAtoHAsync_v2 = NULL;

  /* "cuda/_cuda/ccuda.pyx":139
 * cdef void *__cuMemcpyHtoAAsync_v2 = NULL
 * cdef void *__cuMemcpyAtoHAsync_v2 = NULL
 * cdef void *__cuMemcpy2DAsync_v2 = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuMemcpy3DAsync_v2 = NULL
 * cdef void *__cuMemcpy3DPeerAsync = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuMemcpy2DAsync_v2 = NULL;

  /* "cuda/_cuda/ccuda.pyx":140
 * cdef void *__cuMemcpyAtoHAsync_v2 = NULL
 * cdef void *__cuMemcpy2DAsync_v2 = NULL
 * cdef void *__cuMemcpy3DAsync_v2 = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuMemcpy3DPeerAsync = NULL
 * cdef void *__cuMemsetD8_v2 = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuMemcpy3DAsync_v2 = NULL;

  /* "cuda/_cuda/ccuda.pyx":141
 * cdef void *__cuMemcpy2DAsync_v2 = NULL
 * cdef void *__cuMemcpy3DAsync_v2 = NULL
 * cdef void *__cuMemcpy3DPeerAsync = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuMemsetD8_v2 = NULL
 * cdef void *__cuMemsetD16_v2 = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuMemcpy3DPeerAsync = NULL;

  /* "cuda/_cuda/ccuda.pyx":142
 * cdef void *__cuMemcpy3DAsync_v2 = NULL
 * cdef void *__cuMemcpy3DPeerAsync = NULL
 * cdef void *__cuMemsetD8_v2 = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuMemsetD16_v2 = NULL
 * cdef void *__cuMemsetD32_v2 = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuMemsetD8_v2 = NULL;

  /* "cuda/_cuda/ccuda.pyx":143
 * cdef void *__cuMemcpy3DPeerAsync = NULL
 * cdef void *__cuMemsetD8_v2 = NULL
 * cdef void *__cuMemsetD16_v2 = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuMemsetD32_v2 = NULL
 * cdef void *__cuMemsetD2D8_v2 = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuMemsetD16_v2 = NULL;

  /* "cuda/_cuda/ccuda.pyx":144
 * cdef void *__cuMemsetD8_v2 = NULL
 * cdef void *__cuMemsetD16_v2 = NULL
 * cdef void *__cuMemsetD32_v2 = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuMemsetD2D8_v2 = NULL
 * cdef void *__cuMemsetD2D16_v2 = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuMemsetD32_v2 = NULL;

  /* "cuda/_cuda/ccuda.pyx":145
 * cdef void *__cuMemsetD16_v2 = NULL
 * cdef void *__cuMemsetD32_v2 = NULL
 * cdef void *__cuMemsetD2D8_v2 = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuMemsetD2D16_v2 = NULL
 * cdef void *__cuMemsetD2D32_v2 = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuMemsetD2D8_v2 = NULL;

  /* "cuda/_cuda/ccuda.pyx":146
 * cdef void *__cuMemsetD32_v2 = NULL
 * cdef void *__cuMemsetD2D8_v2 = NULL
 * cdef void *__cuMemsetD2D16_v2 = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuMemsetD2D32_v2 = NULL
 * cdef void *__cuMemsetD8Async = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuMemsetD2D16_v2 = NULL;

  /* "cuda/_cuda/ccuda.pyx":147
 * cdef void *__cuMemsetD2D8_v2 = NULL
 * cdef void *__cuMemsetD2D16_v2 = NULL
 * cdef void *__cuMemsetD2D32_v2 = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuMemsetD8Async = NULL
 * cdef void *__cuMemsetD16Async = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuMemsetD2D32_v2 = NULL;

  /* "cuda/_cuda/ccuda.pyx":148
 * cdef void *__cuMemsetD2D16_v2 = NULL
 * cdef void *__cuMemsetD2D32_v2 = NULL
 * cdef void *__cuMemsetD8Async = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuMemsetD16Async = NULL
 * cdef void *__cuMemsetD32Async = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuMemsetD8Async = NULL;

  /* "cuda/_cuda/ccuda.pyx":149
 * cdef void *__cuMemsetD2D32_v2 = NULL
 * cdef void *__cuMemsetD8Async = NULL
 * cdef void *__cuMemsetD16Async = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuMemsetD32Async = NULL
 * cdef void *__cuMemsetD2D8Async = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuMemsetD16Async = NULL;

  /* "cuda/_cuda/ccuda.pyx":150
 * cdef void *__cuMemsetD8Async = NULL
 * cdef void *__cuMemsetD16Async = NULL
 * cdef void *__cuMemsetD32Async = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuMemsetD2D8Async = NULL
 * cdef void *__cuMemsetD2D16Async = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuMemsetD32Async = NULL;

  /* "cuda/_cuda/ccuda.pyx":151
 * cdef void *__cuMemsetD16Async = NULL
 * cdef void *__cuMemsetD32Async = NULL
 * cdef void *__cuMemsetD2D8Async = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuMemsetD2D16Async = NULL
 * cdef void *__cuMemsetD2D32Async = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuMemsetD2D8Async = NULL;

  /* "cuda/_cuda/ccuda.pyx":152
 * cdef void *__cuMemsetD32Async = NULL
 * cdef void *__cuMemsetD2D8Async = NULL
 * cdef void *__cuMemsetD2D16Async = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuMemsetD2D32Async = NULL
 * cdef void *__cuArrayCreate_v2 = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuMemsetD2D16Async = NULL;

  /* "cuda/_cuda/ccuda.pyx":153
 * cdef void *__cuMemsetD2D8Async = NULL
 * cdef void *__cuMemsetD2D16Async = NULL
 * cdef void *__cuMemsetD2D32Async = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuArrayCreate_v2 = NULL
 * cdef void *__cuArrayGetDescriptor_v2 = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuMemsetD2D32Async = NULL;

  /* "cuda/_cuda/ccuda.pyx":154
 * cdef void *__cuMemsetD2D16Async = NULL
 * cdef void *__cuMemsetD2D32Async = NULL
 * cdef void *__cuArrayCreate_v2 = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuArrayGetDescriptor_v2 = NULL
 * cdef void *__cuArrayGetSparseProperties = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuArrayCreate_v2 = NULL;

  /* "cuda/_cuda/ccuda.pyx":155
 * cdef void *__cuMemsetD2D32Async = NULL
 * cdef void *__cuArrayCreate_v2 = NULL
 * cdef void *__cuArrayGetDescriptor_v2 = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuArrayGetSparseProperties = NULL
 * cdef void *__cuMipmappedArrayGetSparseProperties = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuArrayGetDescriptor_v2 = NULL;

  /* "cuda/_cuda/ccuda.pyx":156
 * cdef void *__cuArrayCreate_v2 = NULL
 * cdef void *__cuArrayGetDescriptor_v2 = NULL
 * cdef void *__cuArrayGetSparseProperties = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuMipmappedArrayGetSparseProperties = NULL
 * cdef void *__cuArrayGetMemoryRequirements = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuArrayGetSparseProperties = NULL;

  /* "cuda/_cuda/ccuda.pyx":157
 * cdef void *__cuArrayGetDescriptor_v2 = NULL
 * cdef void *__cuArrayGetSparseProperties = NULL
 * cdef void *__cuMipmappedArrayGetSparseProperties = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuArrayGetMemoryRequirements = NULL
 * cdef void *__cuMipmappedArrayGetMemoryRequirements = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuMipmappedArrayGetSparseProperties = NULL;

  /* "cuda/_cuda/ccuda.pyx":158
 * cdef void *__cuArrayGetSparseProperties = NULL
 * cdef void *__cuMipmappedArrayGetSparseProperties = NULL
 * cdef void *__cuArrayGetMemoryRequirements = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuMipmappedArrayGetMemoryRequirements = NULL
 * cdef void *__cuArrayGetPlane = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuArrayGetMemoryRequirements = NULL;

  /* "cuda/_cuda/ccuda.pyx":159
 * cdef void *__cuMipmappedArrayGetSparseProperties = NULL
 * cdef void *__cuArrayGetMemoryRequirements = NULL
 * cdef void *__cuMipmappedArrayGetMemoryRequirements = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuArrayGetPlane = NULL
 * cdef void *__cuArrayDestroy = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuMipmappedArrayGetMemoryRequirements = NULL;

  /* "cuda/_cuda/ccuda.pyx":160
 * cdef void *__cuArrayGetMemoryRequirements = NULL
 * cdef void *__cuMipmappedArrayGetMemoryRequirements = NULL
 * cdef void *__cuArrayGetPlane = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuArrayDestroy = NULL
 * cdef void *__cuArray3DCreate_v2 = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuArrayGetPlane = NULL;

  /* "cuda/_cuda/ccuda.pyx":161
 * cdef void *__cuMipmappedArrayGetMemoryRequirements = NULL
 * cdef void *__cuArrayGetPlane = NULL
 * cdef void *__cuArrayDestroy = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuArray3DCreate_v2 = NULL
 * cdef void *__cuArray3DGetDescriptor_v2 = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuArrayDestroy = NULL;

  /* "cuda/_cuda/ccuda.pyx":162
 * cdef void *__cuArrayGetPlane = NULL
 * cdef void *__cuArrayDestroy = NULL
 * cdef void *__cuArray3DCreate_v2 = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuArray3DGetDescriptor_v2 = NULL
 * cdef void *__cuMipmappedArrayCreate = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuArray3DCreate_v2 = NULL;

  /* "cuda/_cuda/ccuda.pyx":163
 * cdef void *__cuArrayDestroy = NULL
 * cdef void *__cuArray3DCreate_v2 = NULL
 * cdef void *__cuArray3DGetDescriptor_v2 = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuMipmappedArrayCreate = NULL
 * cdef void *__cuMipmappedArrayGetLevel = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuArray3DGetDescriptor_v2 = NULL;

  /* "cuda/_cuda/ccuda.pyx":164
 * cdef void *__cuArray3DCreate_v2 = NULL
 * cdef void *__cuArray3DGetDescriptor_v2 = NULL
 * cdef void *__cuMipmappedArrayCreate = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuMipmappedArrayGetLevel = NULL
 * cdef void *__cuMipmappedArrayDestroy = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuMipmappedArrayCreate = NULL;

  /* "cuda/_cuda/ccuda.pyx":165
 * cdef void *__cuArray3DGetDescriptor_v2 = NULL
 * cdef void *__cuMipmappedArrayCreate = NULL
 * cdef void *__cuMipmappedArrayGetLevel = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuMipmappedArrayDestroy = NULL
 * cdef void *__cuMemGetHandleForAddressRange = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuMipmappedArrayGetLevel = NULL;

  /* "cuda/_cuda/ccuda.pyx":166
 * cdef void *__cuMipmappedArrayCreate = NULL
 * cdef void *__cuMipmappedArrayGetLevel = NULL
 * cdef void *__cuMipmappedArrayDestroy = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuMemGetHandleForAddressRange = NULL
 * cdef void *__cuMemAddressReserve = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuMipmappedArrayDestroy = NULL;

  /* "cuda/_cuda/ccuda.pyx":167
 * cdef void *__cuMipmappedArrayGetLevel = NULL
 * cdef void *__cuMipmappedArrayDestroy = NULL
 * cdef void *__cuMemGetHandleForAddressRange = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuMemAddressReserve = NULL
 * cdef void *__cuMemAddressFree = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuMemGetHandleForAddressRange = NULL;

  /* "cuda/_cuda/ccuda.pyx":168
 * cdef void *__cuMipmappedArrayDestroy = NULL
 * cdef void *__cuMemGetHandleForAddressRange = NULL
 * cdef void *__cuMemAddressReserve = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuMemAddressFree = NULL
 * cdef void *__cuMemCreate = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuMemAddressReserve = NULL;

  /* "cuda/_cuda/ccuda.pyx":169
 * cdef void *__cuMemGetHandleForAddressRange = NULL
 * cdef void *__cuMemAddressReserve = NULL
 * cdef void *__cuMemAddressFree = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuMemCreate = NULL
 * cdef void *__cuMemRelease = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuMemAddressFree = NULL;

  /* "cuda/_cuda/ccuda.pyx":170
 * cdef void *__cuMemAddressReserve = NULL
 * cdef void *__cuMemAddressFree = NULL
 * cdef void *__cuMemCreate = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuMemRelease = NULL
 * cdef void *__cuMemMap = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuMemCreate = NULL;

  /* "cuda/_cuda/ccuda.pyx":171
 * cdef void *__cuMemAddressFree = NULL
 * cdef void *__cuMemCreate = NULL
 * cdef void *__cuMemRelease = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuMemMap = NULL
 * cdef void *__cuMemMapArrayAsync = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuMemRelease = NULL;

  /* "cuda/_cuda/ccuda.pyx":172
 * cdef void *__cuMemCreate = NULL
 * cdef void *__cuMemRelease = NULL
 * cdef void *__cuMemMap = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuMemMapArrayAsync = NULL
 * cdef void *__cuMemUnmap = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuMemMap = NULL;

  /* "cuda/_cuda/ccuda.pyx":173
 * cdef void *__cuMemRelease = NULL
 * cdef void *__cuMemMap = NULL
 * cdef void *__cuMemMapArrayAsync = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuMemUnmap = NULL
 * cdef void *__cuMemSetAccess = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuMemMapArrayAsync = NULL;

  /* "cuda/_cuda/ccuda.pyx":174
 * cdef void *__cuMemMap = NULL
 * cdef void *__cuMemMapArrayAsync = NULL
 * cdef void *__cuMemUnmap = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuMemSetAccess = NULL
 * cdef void *__cuMemGetAccess = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuMemUnmap = NULL;

  /* "cuda/_cuda/ccuda.pyx":175
 * cdef void *__cuMemMapArrayAsync = NULL
 * cdef void *__cuMemUnmap = NULL
 * cdef void *__cuMemSetAccess = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuMemGetAccess = NULL
 * cdef void *__cuMemExportToShareableHandle = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuMemSetAccess = NULL;

  /* "cuda/_cuda/ccuda.pyx":176
 * cdef void *__cuMemUnmap = NULL
 * cdef void *__cuMemSetAccess = NULL
 * cdef void *__cuMemGetAccess = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuMemExportToShareableHandle = NULL
 * cdef void *__cuMemImportFromShareableHandle = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuMemGetAccess = NULL;

  /* "cuda/_cuda/ccuda.pyx":177
 * cdef void *__cuMemSetAccess = NULL
 * cdef void *__cuMemGetAccess = NULL
 * cdef void *__cuMemExportToShareableHandle = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuMemImportFromShareableHandle = NULL
 * cdef void *__cuMemGetAllocationGranularity = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuMemExportToShareableHandle = NULL;

  /* "cuda/_cuda/ccuda.pyx":178
 * cdef void *__cuMemGetAccess = NULL
 * cdef void *__cuMemExportToShareableHandle = NULL
 * cdef void *__cuMemImportFromShareableHandle = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuMemGetAllocationGranularity = NULL
 * cdef void *__cuMemGetAllocationPropertiesFromHandle = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuMemImportFromShareableHandle = NULL;

  /* "cuda/_cuda/ccuda.pyx":179
 * cdef void *__cuMemExportToShareableHandle = NULL
 * cdef void *__cuMemImportFromShareableHandle = NULL
 * cdef void *__cuMemGetAllocationGranularity = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuMemGetAllocationPropertiesFromHandle = NULL
 * cdef void *__cuMemRetainAllocationHandle = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuMemGetAllocationGranularity = NULL;

  /* "cuda/_cuda/ccuda.pyx":180
 * cdef void *__cuMemImportFromShareableHandle = NULL
 * cdef void *__cuMemGetAllocationGranularity = NULL
 * cdef void *__cuMemGetAllocationPropertiesFromHandle = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuMemRetainAllocationHandle = NULL
 * cdef void *__cuMemFreeAsync = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuMemGetAllocationPropertiesFromHandle = NULL;

  /* "cuda/_cuda/ccuda.pyx":181
 * cdef void *__cuMemGetAllocationGranularity = NULL
 * cdef void *__cuMemGetAllocationPropertiesFromHandle = NULL
 * cdef void *__cuMemRetainAllocationHandle = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuMemFreeAsync = NULL
 * cdef void *__cuMemAllocAsync = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuMemRetainAllocationHandle = NULL;

  /* "cuda/_cuda/ccuda.pyx":182
 * cdef void *__cuMemGetAllocationPropertiesFromHandle = NULL
 * cdef void *__cuMemRetainAllocationHandle = NULL
 * cdef void *__cuMemFreeAsync = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuMemAllocAsync = NULL
 * cdef void *__cuMemPoolTrimTo = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuMemFreeAsync = NULL;

  /* "cuda/_cuda/ccuda.pyx":183
 * cdef void *__cuMemRetainAllocationHandle = NULL
 * cdef void *__cuMemFreeAsync = NULL
 * cdef void *__cuMemAllocAsync = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuMemPoolTrimTo = NULL
 * cdef void *__cuMemPoolSetAttribute = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuMemAllocAsync = NULL;

  /* "cuda/_cuda/ccuda.pyx":184
 * cdef void *__cuMemFreeAsync = NULL
 * cdef void *__cuMemAllocAsync = NULL
 * cdef void *__cuMemPoolTrimTo = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuMemPoolSetAttribute = NULL
 * cdef void *__cuMemPoolGetAttribute = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuMemPoolTrimTo = NULL;

  /* "cuda/_cuda/ccuda.pyx":185
 * cdef void *__cuMemAllocAsync = NULL
 * cdef void *__cuMemPoolTrimTo = NULL
 * cdef void *__cuMemPoolSetAttribute = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuMemPoolGetAttribute = NULL
 * cdef void *__cuMemPoolSetAccess = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuMemPoolSetAttribute = NULL;

  /* "cuda/_cuda/ccuda.pyx":186
 * cdef void *__cuMemPoolTrimTo = NULL
 * cdef void *__cuMemPoolSetAttribute = NULL
 * cdef void *__cuMemPoolGetAttribute = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuMemPoolSetAccess = NULL
 * cdef void *__cuMemPoolGetAccess = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuMemPoolGetAttribute = NULL;

  /* "cuda/_cuda/ccuda.pyx":187
 * cdef void *__cuMemPoolSetAttribute = NULL
 * cdef void *__cuMemPoolGetAttribute = NULL
 * cdef void *__cuMemPoolSetAccess = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuMemPoolGetAccess = NULL
 * cdef void *__cuMemPoolCreate = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuMemPoolSetAccess = NULL;

  /* "cuda/_cuda/ccuda.pyx":188
 * cdef void *__cuMemPoolGetAttribute = NULL
 * cdef void *__cuMemPoolSetAccess = NULL
 * cdef void *__cuMemPoolGetAccess = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuMemPoolCreate = NULL
 * cdef void *__cuMemPoolDestroy = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuMemPoolGetAccess = NULL;

  /* "cuda/_cuda/ccuda.pyx":189
 * cdef void *__cuMemPoolSetAccess = NULL
 * cdef void *__cuMemPoolGetAccess = NULL
 * cdef void *__cuMemPoolCreate = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuMemPoolDestroy = NULL
 * cdef void *__cuMemAllocFromPoolAsync = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuMemPoolCreate = NULL;

  /* "cuda/_cuda/ccuda.pyx":190
 * cdef void *__cuMemPoolGetAccess = NULL
 * cdef void *__cuMemPoolCreate = NULL
 * cdef void *__cuMemPoolDestroy = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuMemAllocFromPoolAsync = NULL
 * cdef void *__cuMemPoolExportToShareableHandle = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuMemPoolDestroy = NULL;

  /* "cuda/_cuda/ccuda.pyx":191
 * cdef void *__cuMemPoolCreate = NULL
 * cdef void *__cuMemPoolDestroy = NULL
 * cdef void *__cuMemAllocFromPoolAsync = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuMemPoolExportToShareableHandle = NULL
 * cdef void *__cuMemPoolImportFromShareableHandle = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuMemAllocFromPoolAsync = NULL;

  /* "cuda/_cuda/ccuda.pyx":192
 * cdef void *__cuMemPoolDestroy = NULL
 * cdef void *__cuMemAllocFromPoolAsync = NULL
 * cdef void *__cuMemPoolExportToShareableHandle = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuMemPoolImportFromShareableHandle = NULL
 * cdef void *__cuMemPoolExportPointer = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuMemPoolExportToShareableHandle = NULL;

  /* "cuda/_cuda/ccuda.pyx":193
 * cdef void *__cuMemAllocFromPoolAsync = NULL
 * cdef void *__cuMemPoolExportToShareableHandle = NULL
 * cdef void *__cuMemPoolImportFromShareableHandle = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuMemPoolExportPointer = NULL
 * cdef void *__cuMemPoolImportPointer = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuMemPoolImportFromShareableHandle = NULL;

  /* "cuda/_cuda/ccuda.pyx":194
 * cdef void *__cuMemPoolExportToShareableHandle = NULL
 * cdef void *__cuMemPoolImportFromShareableHandle = NULL
 * cdef void *__cuMemPoolExportPointer = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuMemPoolImportPointer = NULL
 * cdef void *__cuMulticastCreate = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuMemPoolExportPointer = NULL;

  /* "cuda/_cuda/ccuda.pyx":195
 * cdef void *__cuMemPoolImportFromShareableHandle = NULL
 * cdef void *__cuMemPoolExportPointer = NULL
 * cdef void *__cuMemPoolImportPointer = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuMulticastCreate = NULL
 * cdef void *__cuMulticastAddDevice = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuMemPoolImportPointer = NULL;

  /* "cuda/_cuda/ccuda.pyx":196
 * cdef void *__cuMemPoolExportPointer = NULL
 * cdef void *__cuMemPoolImportPointer = NULL
 * cdef void *__cuMulticastCreate = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuMulticastAddDevice = NULL
 * cdef void *__cuMulticastBindMem = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuMulticastCreate = NULL;

  /* "cuda/_cuda/ccuda.pyx":197
 * cdef void *__cuMemPoolImportPointer = NULL
 * cdef void *__cuMulticastCreate = NULL
 * cdef void *__cuMulticastAddDevice = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuMulticastBindMem = NULL
 * cdef void *__cuMulticastBindAddr = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuMulticastAddDevice = NULL;

  /* "cuda/_cuda/ccuda.pyx":198
 * cdef void *__cuMulticastCreate = NULL
 * cdef void *__cuMulticastAddDevice = NULL
 * cdef void *__cuMulticastBindMem = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuMulticastBindAddr = NULL
 * cdef void *__cuMulticastUnbind = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuMulticastBindMem = NULL;

  /* "cuda/_cuda/ccuda.pyx":199
 * cdef void *__cuMulticastAddDevice = NULL
 * cdef void *__cuMulticastBindMem = NULL
 * cdef void *__cuMulticastBindAddr = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuMulticastUnbind = NULL
 * cdef void *__cuMulticastGetGranularity = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuMulticastBindAddr = NULL;

  /* "cuda/_cuda/ccuda.pyx":200
 * cdef void *__cuMulticastBindMem = NULL
 * cdef void *__cuMulticastBindAddr = NULL
 * cdef void *__cuMulticastUnbind = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuMulticastGetGranularity = NULL
 * cdef void *__cuPointerGetAttribute = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuMulticastUnbind = NULL;

  /* "cuda/_cuda/ccuda.pyx":201
 * cdef void *__cuMulticastBindAddr = NULL
 * cdef void *__cuMulticastUnbind = NULL
 * cdef void *__cuMulticastGetGranularity = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuPointerGetAttribute = NULL
 * cdef void *__cuMemPrefetchAsync = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuMulticastGetGranularity = NULL;

  /* "cuda/_cuda/ccuda.pyx":202
 * cdef void *__cuMulticastUnbind = NULL
 * cdef void *__cuMulticastGetGranularity = NULL
 * cdef void *__cuPointerGetAttribute = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuMemPrefetchAsync = NULL
 * cdef void *__cuMemPrefetchAsync_v2 = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuPointerGetAttribute = NULL;

  /* "cuda/_cuda/ccuda.pyx":203
 * cdef void *__cuMulticastGetGranularity = NULL
 * cdef void *__cuPointerGetAttribute = NULL
 * cdef void *__cuMemPrefetchAsync = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuMemPrefetchAsync_v2 = NULL
 * cdef void *__cuMemAdvise = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuMemPrefetchAsync = NULL;

  /* "cuda/_cuda/ccuda.pyx":204
 * cdef void *__cuPointerGetAttribute = NULL
 * cdef void *__cuMemPrefetchAsync = NULL
 * cdef void *__cuMemPrefetchAsync_v2 = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuMemAdvise = NULL
 * cdef void *__cuMemAdvise_v2 = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuMemPrefetchAsync_v2 = NULL;

  /* "cuda/_cuda/ccuda.pyx":205
 * cdef void *__cuMemPrefetchAsync = NULL
 * cdef void *__cuMemPrefetchAsync_v2 = NULL
 * cdef void *__cuMemAdvise = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuMemAdvise_v2 = NULL
 * cdef void *__cuMemRangeGetAttribute = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuMemAdvise = NULL;

  /* "cuda/_cuda/ccuda.pyx":206
 * cdef void *__cuMemPrefetchAsync_v2 = NULL
 * cdef void *__cuMemAdvise = NULL
 * cdef void *__cuMemAdvise_v2 = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuMemRangeGetAttribute = NULL
 * cdef void *__cuMemRangeGetAttributes = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuMemAdvise_v2 = NULL;

  /* "cuda/_cuda/ccuda.pyx":207
 * cdef void *__cuMemAdvise = NULL
 * cdef void *__cuMemAdvise_v2 = NULL
 * cdef void *__cuMemRangeGetAttribute = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuMemRangeGetAttributes = NULL
 * cdef void *__cuPointerSetAttribute = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuMemRangeGetAttribute = NULL;

  /* "cuda/_cuda/ccuda.pyx":208
 * cdef void *__cuMemAdvise_v2 = NULL
 * cdef void *__cuMemRangeGetAttribute = NULL
 * cdef void *__cuMemRangeGetAttributes = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuPointerSetAttribute = NULL
 * cdef void *__cuPointerGetAttributes = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuMemRangeGetAttributes = NULL;

  /* "cuda/_cuda/ccuda.pyx":209
 * cdef void *__cuMemRangeGetAttribute = NULL
 * cdef void *__cuMemRangeGetAttributes = NULL
 * cdef void *__cuPointerSetAttribute = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuPointerGetAttributes = NULL
 * cdef void *__cuStreamCreate = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuPointerSetAttribute = NULL;

  /* "cuda/_cuda/ccuda.pyx":210
 * cdef void *__cuMemRangeGetAttributes = NULL
 * cdef void *__cuPointerSetAttribute = NULL
 * cdef void *__cuPointerGetAttributes = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuStreamCreate = NULL
 * cdef void *__cuStreamCreateWithPriority = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuPointerGetAttributes = NULL;

  /* "cuda/_cuda/ccuda.pyx":211
 * cdef void *__cuPointerSetAttribute = NULL
 * cdef void *__cuPointerGetAttributes = NULL
 * cdef void *__cuStreamCreate = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuStreamCreateWithPriority = NULL
 * cdef void *__cuStreamGetPriority = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuStreamCreate = NULL;

  /* "cuda/_cuda/ccuda.pyx":212
 * cdef void *__cuPointerGetAttributes = NULL
 * cdef void *__cuStreamCreate = NULL
 * cdef void *__cuStreamCreateWithPriority = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuStreamGetPriority = NULL
 * cdef void *__cuStreamGetFlags = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuStreamCreateWithPriority = NULL;

  /* "cuda/_cuda/ccuda.pyx":213
 * cdef void *__cuStreamCreate = NULL
 * cdef void *__cuStreamCreateWithPriority = NULL
 * cdef void *__cuStreamGetPriority = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuStreamGetFlags = NULL
 * cdef void *__cuStreamGetId = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuStreamGetPriority = NULL;

  /* "cuda/_cuda/ccuda.pyx":214
 * cdef void *__cuStreamCreateWithPriority = NULL
 * cdef void *__cuStreamGetPriority = NULL
 * cdef void *__cuStreamGetFlags = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuStreamGetId = NULL
 * cdef void *__cuStreamGetCtx = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuStreamGetFlags = NULL;

  /* "cuda/_cuda/ccuda.pyx":215
 * cdef void *__cuStreamGetPriority = NULL
 * cdef void *__cuStreamGetFlags = NULL
 * cdef void *__cuStreamGetId = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuStreamGetCtx = NULL
 * cdef void *__cuStreamWaitEvent = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuStreamGetId = NULL;

  /* "cuda/_cuda/ccuda.pyx":216
 * cdef void *__cuStreamGetFlags = NULL
 * cdef void *__cuStreamGetId = NULL
 * cdef void *__cuStreamGetCtx = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuStreamWaitEvent = NULL
 * cdef void *__cuStreamAddCallback = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuStreamGetCtx = NULL;

  /* "cuda/_cuda/ccuda.pyx":217
 * cdef void *__cuStreamGetId = NULL
 * cdef void *__cuStreamGetCtx = NULL
 * cdef void *__cuStreamWaitEvent = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuStreamAddCallback = NULL
 * cdef void *__cuStreamBeginCapture_v2 = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuStreamWaitEvent = NULL;

  /* "cuda/_cuda/ccuda.pyx":218
 * cdef void *__cuStreamGetCtx = NULL
 * cdef void *__cuStreamWaitEvent = NULL
 * cdef void *__cuStreamAddCallback = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuStreamBeginCapture_v2 = NULL
 * cdef void *__cuStreamBeginCaptureToGraph = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuStreamAddCallback = NULL;

  /* "cuda/_cuda/ccuda.pyx":219
 * cdef void *__cuStreamWaitEvent = NULL
 * cdef void *__cuStreamAddCallback = NULL
 * cdef void *__cuStreamBeginCapture_v2 = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuStreamBeginCaptureToGraph = NULL
 * cdef void *__cuThreadExchangeStreamCaptureMode = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuStreamBeginCapture_v2 = NULL;

  /* "cuda/_cuda/ccuda.pyx":220
 * cdef void *__cuStreamAddCallback = NULL
 * cdef void *__cuStreamBeginCapture_v2 = NULL
 * cdef void *__cuStreamBeginCaptureToGraph = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuThreadExchangeStreamCaptureMode = NULL
 * cdef void *__cuStreamEndCapture = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuStreamBeginCaptureToGraph = NULL;

  /* "cuda/_cuda/ccuda.pyx":221
 * cdef void *__cuStreamBeginCapture_v2 = NULL
 * cdef void *__cuStreamBeginCaptureToGraph = NULL
 * cdef void *__cuThreadExchangeStreamCaptureMode = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuStreamEndCapture = NULL
 * cdef void *__cuStreamIsCapturing = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuThreadExchangeStreamCaptureMode = NULL;

  /* "cuda/_cuda/ccuda.pyx":222
 * cdef void *__cuStreamBeginCaptureToGraph = NULL
 * cdef void *__cuThreadExchangeStreamCaptureMode = NULL
 * cdef void *__cuStreamEndCapture = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuStreamIsCapturing = NULL
 * cdef void *__cuStreamGetCaptureInfo_v2 = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuStreamEndCapture = NULL;

  /* "cuda/_cuda/ccuda.pyx":223
 * cdef void *__cuThreadExchangeStreamCaptureMode = NULL
 * cdef void *__cuStreamEndCapture = NULL
 * cdef void *__cuStreamIsCapturing = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuStreamGetCaptureInfo_v2 = NULL
 * cdef void *__cuStreamGetCaptureInfo_v3 = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuStreamIsCapturing = NULL;

  /* "cuda/_cuda/ccuda.pyx":224
 * cdef void *__cuStreamEndCapture = NULL
 * cdef void *__cuStreamIsCapturing = NULL
 * cdef void *__cuStreamGetCaptureInfo_v2 = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuStreamGetCaptureInfo_v3 = NULL
 * cdef void *__cuStreamUpdateCaptureDependencies = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuStreamGetCaptureInfo_v2 = NULL;

  /* "cuda/_cuda/ccuda.pyx":225
 * cdef void *__cuStreamIsCapturing = NULL
 * cdef void *__cuStreamGetCaptureInfo_v2 = NULL
 * cdef void *__cuStreamGetCaptureInfo_v3 = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuStreamUpdateCaptureDependencies = NULL
 * cdef void *__cuStreamUpdateCaptureDependencies_v2 = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuStreamGetCaptureInfo_v3 = NULL;

  /* "cuda/_cuda/ccuda.pyx":226
 * cdef void *__cuStreamGetCaptureInfo_v2 = NULL
 * cdef void *__cuStreamGetCaptureInfo_v3 = NULL
 * cdef void *__cuStreamUpdateCaptureDependencies = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuStreamUpdateCaptureDependencies_v2 = NULL
 * cdef void *__cuStreamAttachMemAsync = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuStreamUpdateCaptureDependencies = NULL;

  /* "cuda/_cuda/ccuda.pyx":227
 * cdef void *__cuStreamGetCaptureInfo_v3 = NULL
 * cdef void *__cuStreamUpdateCaptureDependencies = NULL
 * cdef void *__cuStreamUpdateCaptureDependencies_v2 = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuStreamAttachMemAsync = NULL
 * cdef void *__cuStreamQuery = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuStreamUpdateCaptureDependencies_v2 = NULL;

  /* "cuda/_cuda/ccuda.pyx":228
 * cdef void *__cuStreamUpdateCaptureDependencies = NULL
 * cdef void *__cuStreamUpdateCaptureDependencies_v2 = NULL
 * cdef void *__cuStreamAttachMemAsync = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuStreamQuery = NULL
 * cdef void *__cuStreamSynchronize = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuStreamAttachMemAsync = NULL;

  /* "cuda/_cuda/ccuda.pyx":229
 * cdef void *__cuStreamUpdateCaptureDependencies_v2 = NULL
 * cdef void *__cuStreamAttachMemAsync = NULL
 * cdef void *__cuStreamQuery = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuStreamSynchronize = NULL
 * cdef void *__cuStreamDestroy_v2 = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuStreamQuery = NULL;

  /* "cuda/_cuda/ccuda.pyx":230
 * cdef void *__cuStreamAttachMemAsync = NULL
 * cdef void *__cuStreamQuery = NULL
 * cdef void *__cuStreamSynchronize = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuStreamDestroy_v2 = NULL
 * cdef void *__cuStreamCopyAttributes = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuStreamSynchronize = NULL;

  /* "cuda/_cuda/ccuda.pyx":231
 * cdef void *__cuStreamQuery = NULL
 * cdef void *__cuStreamSynchronize = NULL
 * cdef void *__cuStreamDestroy_v2 = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuStreamCopyAttributes = NULL
 * cdef void *__cuStreamGetAttribute = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuStreamDestroy_v2 = NULL;

  /* "cuda/_cuda/ccuda.pyx":232
 * cdef void *__cuStreamSynchronize = NULL
 * cdef void *__cuStreamDestroy_v2 = NULL
 * cdef void *__cuStreamCopyAttributes = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuStreamGetAttribute = NULL
 * cdef void *__cuStreamSetAttribute = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuStreamCopyAttributes = NULL;

  /* "cuda/_cuda/ccuda.pyx":233
 * cdef void *__cuStreamDestroy_v2 = NULL
 * cdef void *__cuStreamCopyAttributes = NULL
 * cdef void *__cuStreamGetAttribute = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuStreamSetAttribute = NULL
 * cdef void *__cuEventCreate = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuStreamGetAttribute = NULL;

  /* "cuda/_cuda/ccuda.pyx":234
 * cdef void *__cuStreamCopyAttributes = NULL
 * cdef void *__cuStreamGetAttribute = NULL
 * cdef void *__cuStreamSetAttribute = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuEventCreate = NULL
 * cdef void *__cuEventRecord = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuStreamSetAttribute = NULL;

  /* "cuda/_cuda/ccuda.pyx":235
 * cdef void *__cuStreamGetAttribute = NULL
 * cdef void *__cuStreamSetAttribute = NULL
 * cdef void *__cuEventCreate = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuEventRecord = NULL
 * cdef void *__cuEventRecordWithFlags = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuEventCreate = NULL;

  /* "cuda/_cuda/ccuda.pyx":236
 * cdef void *__cuStreamSetAttribute = NULL
 * cdef void *__cuEventCreate = NULL
 * cdef void *__cuEventRecord = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuEventRecordWithFlags = NULL
 * cdef void *__cuEventQuery = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuEventRecord = NULL;

  /* "cuda/_cuda/ccuda.pyx":237
 * cdef void *__cuEventCreate = NULL
 * cdef void *__cuEventRecord = NULL
 * cdef void *__cuEventRecordWithFlags = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuEventQuery = NULL
 * cdef void *__cuEventSynchronize = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuEventRecordWithFlags = NULL;

  /* "cuda/_cuda/ccuda.pyx":238
 * cdef void *__cuEventRecord = NULL
 * cdef void *__cuEventRecordWithFlags = NULL
 * cdef void *__cuEventQuery = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuEventSynchronize = NULL
 * cdef void *__cuEventDestroy_v2 = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuEventQuery = NULL;

  /* "cuda/_cuda/ccuda.pyx":239
 * cdef void *__cuEventRecordWithFlags = NULL
 * cdef void *__cuEventQuery = NULL
 * cdef void *__cuEventSynchronize = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuEventDestroy_v2 = NULL
 * cdef void *__cuEventElapsedTime = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuEventSynchronize = NULL;

  /* "cuda/_cuda/ccuda.pyx":240
 * cdef void *__cuEventQuery = NULL
 * cdef void *__cuEventSynchronize = NULL
 * cdef void *__cuEventDestroy_v2 = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuEventElapsedTime = NULL
 * cdef void *__cuImportExternalMemory = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuEventDestroy_v2 = NULL;

  /* "cuda/_cuda/ccuda.pyx":241
 * cdef void *__cuEventSynchronize = NULL
 * cdef void *__cuEventDestroy_v2 = NULL
 * cdef void *__cuEventElapsedTime = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuImportExternalMemory = NULL
 * cdef void *__cuExternalMemoryGetMappedBuffer = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuEventElapsedTime = NULL;

  /* "cuda/_cuda/ccuda.pyx":242
 * cdef void *__cuEventDestroy_v2 = NULL
 * cdef void *__cuEventElapsedTime = NULL
 * cdef void *__cuImportExternalMemory = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuExternalMemoryGetMappedBuffer = NULL
 * cdef void *__cuExternalMemoryGetMappedMipmappedArray = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuImportExternalMemory = NULL;

  /* "cuda/_cuda/ccuda.pyx":243
 * cdef void *__cuEventElapsedTime = NULL
 * cdef void *__cuImportExternalMemory = NULL
 * cdef void *__cuExternalMemoryGetMappedBuffer = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuExternalMemoryGetMappedMipmappedArray = NULL
 * cdef void *__cuDestroyExternalMemory = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuExternalMemoryGetMappedBuffer = NULL;

  /* "cuda/_cuda/ccuda.pyx":244
 * cdef void *__cuImportExternalMemory = NULL
 * cdef void *__cuExternalMemoryGetMappedBuffer = NULL
 * cdef void *__cuExternalMemoryGetMappedMipmappedArray = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuDestroyExternalMemory = NULL
 * cdef void *__cuImportExternalSemaphore = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuExternalMemoryGetMappedMipmappedArray = NULL;

  /* "cuda/_cuda/ccuda.pyx":245
 * cdef void *__cuExternalMemoryGetMappedBuffer = NULL
 * cdef void *__cuExternalMemoryGetMappedMipmappedArray = NULL
 * cdef void *__cuDestroyExternalMemory = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuImportExternalSemaphore = NULL
 * cdef void *__cuSignalExternalSemaphoresAsync = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuDestroyExternalMemory = NULL;

  /* "cuda/_cuda/ccuda.pyx":246
 * cdef void *__cuExternalMemoryGetMappedMipmappedArray = NULL
 * cdef void *__cuDestroyExternalMemory = NULL
 * cdef void *__cuImportExternalSemaphore = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuSignalExternalSemaphoresAsync = NULL
 * cdef void *__cuWaitExternalSemaphoresAsync = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuImportExternalSemaphore = NULL;

  /* "cuda/_cuda/ccuda.pyx":247
 * cdef void *__cuDestroyExternalMemory = NULL
 * cdef void *__cuImportExternalSemaphore = NULL
 * cdef void *__cuSignalExternalSemaphoresAsync = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuWaitExternalSemaphoresAsync = NULL
 * cdef void *__cuDestroyExternalSemaphore = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuSignalExternalSemaphoresAsync = NULL;

  /* "cuda/_cuda/ccuda.pyx":248
 * cdef void *__cuImportExternalSemaphore = NULL
 * cdef void *__cuSignalExternalSemaphoresAsync = NULL
 * cdef void *__cuWaitExternalSemaphoresAsync = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuDestroyExternalSemaphore = NULL
 * cdef void *__cuStreamWaitValue32_v2 = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuWaitExternalSemaphoresAsync = NULL;

  /* "cuda/_cuda/ccuda.pyx":249
 * cdef void *__cuSignalExternalSemaphoresAsync = NULL
 * cdef void *__cuWaitExternalSemaphoresAsync = NULL
 * cdef void *__cuDestroyExternalSemaphore = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuStreamWaitValue32_v2 = NULL
 * cdef void *__cuStreamWaitValue64_v2 = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuDestroyExternalSemaphore = NULL;

  /* "cuda/_cuda/ccuda.pyx":250
 * cdef void *__cuWaitExternalSemaphoresAsync = NULL
 * cdef void *__cuDestroyExternalSemaphore = NULL
 * cdef void *__cuStreamWaitValue32_v2 = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuStreamWaitValue64_v2 = NULL
 * cdef void *__cuStreamWriteValue32_v2 = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuStreamWaitValue32_v2 = NULL;

  /* "cuda/_cuda/ccuda.pyx":251
 * cdef void *__cuDestroyExternalSemaphore = NULL
 * cdef void *__cuStreamWaitValue32_v2 = NULL
 * cdef void *__cuStreamWaitValue64_v2 = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuStreamWriteValue32_v2 = NULL
 * cdef void *__cuStreamWriteValue64_v2 = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuStreamWaitValue64_v2 = NULL;

  /* "cuda/_cuda/ccuda.pyx":252
 * cdef void *__cuStreamWaitValue32_v2 = NULL
 * cdef void *__cuStreamWaitValue64_v2 = NULL
 * cdef void *__cuStreamWriteValue32_v2 = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuStreamWriteValue64_v2 = NULL
 * cdef void *__cuStreamBatchMemOp_v2 = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuStreamWriteValue32_v2 = NULL;

  /* "cuda/_cuda/ccuda.pyx":253
 * cdef void *__cuStreamWaitValue64_v2 = NULL
 * cdef void *__cuStreamWriteValue32_v2 = NULL
 * cdef void *__cuStreamWriteValue64_v2 = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuStreamBatchMemOp_v2 = NULL
 * cdef void *__cuFuncGetAttribute = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuStreamWriteValue64_v2 = NULL;

  /* "cuda/_cuda/ccuda.pyx":254
 * cdef void *__cuStreamWriteValue32_v2 = NULL
 * cdef void *__cuStreamWriteValue64_v2 = NULL
 * cdef void *__cuStreamBatchMemOp_v2 = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuFuncGetAttribute = NULL
 * cdef void *__cuFuncSetAttribute = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuStreamBatchMemOp_v2 = NULL;

  /* "cuda/_cuda/ccuda.pyx":255
 * cdef void *__cuStreamWriteValue64_v2 = NULL
 * cdef void *__cuStreamBatchMemOp_v2 = NULL
 * cdef void *__cuFuncGetAttribute = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuFuncSetAttribute = NULL
 * cdef void *__cuFuncSetCacheConfig = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuFuncGetAttribute = NULL;

  /* "cuda/_cuda/ccuda.pyx":256
 * cdef void *__cuStreamBatchMemOp_v2 = NULL
 * cdef void *__cuFuncGetAttribute = NULL
 * cdef void *__cuFuncSetAttribute = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuFuncSetCacheConfig = NULL
 * cdef void *__cuFuncGetModule = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuFuncSetAttribute = NULL;

  /* "cuda/_cuda/ccuda.pyx":257
 * cdef void *__cuFuncGetAttribute = NULL
 * cdef void *__cuFuncSetAttribute = NULL
 * cdef void *__cuFuncSetCacheConfig = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuFuncGetModule = NULL
 * cdef void *__cuFuncGetName = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuFuncSetCacheConfig = NULL;

  /* "cuda/_cuda/ccuda.pyx":258
 * cdef void *__cuFuncSetAttribute = NULL
 * cdef void *__cuFuncSetCacheConfig = NULL
 * cdef void *__cuFuncGetModule = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuFuncGetName = NULL
 * cdef void *__cuFuncGetParamInfo = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuFuncGetModule = NULL;

  /* "cuda/_cuda/ccuda.pyx":259
 * cdef void *__cuFuncSetCacheConfig = NULL
 * cdef void *__cuFuncGetModule = NULL
 * cdef void *__cuFuncGetName = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuFuncGetParamInfo = NULL
 * cdef void *__cuFuncIsLoaded = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuFuncGetName = NULL;

  /* "cuda/_cuda/ccuda.pyx":260
 * cdef void *__cuFuncGetModule = NULL
 * cdef void *__cuFuncGetName = NULL
 * cdef void *__cuFuncGetParamInfo = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuFuncIsLoaded = NULL
 * cdef void *__cuFuncLoad = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuFuncGetParamInfo = NULL;

  /* "cuda/_cuda/ccuda.pyx":261
 * cdef void *__cuFuncGetName = NULL
 * cdef void *__cuFuncGetParamInfo = NULL
 * cdef void *__cuFuncIsLoaded = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuFuncLoad = NULL
 * cdef void *__cuLaunchKernel = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuFuncIsLoaded = NULL;

  /* "cuda/_cuda/ccuda.pyx":262
 * cdef void *__cuFuncGetParamInfo = NULL
 * cdef void *__cuFuncIsLoaded = NULL
 * cdef void *__cuFuncLoad = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuLaunchKernel = NULL
 * cdef void *__cuLaunchKernelEx = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuFuncLoad = NULL;

  /* "cuda/_cuda/ccuda.pyx":263
 * cdef void *__cuFuncIsLoaded = NULL
 * cdef void *__cuFuncLoad = NULL
 * cdef void *__cuLaunchKernel = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuLaunchKernelEx = NULL
 * cdef void *__cuLaunchCooperativeKernel = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuLaunchKernel = NULL;

  /* "cuda/_cuda/ccuda.pyx":264
 * cdef void *__cuFuncLoad = NULL
 * cdef void *__cuLaunchKernel = NULL
 * cdef void *__cuLaunchKernelEx = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuLaunchCooperativeKernel = NULL
 * cdef void *__cuLaunchCooperativeKernelMultiDevice = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuLaunchKernelEx = NULL;

  /* "cuda/_cuda/ccuda.pyx":265
 * cdef void *__cuLaunchKernel = NULL
 * cdef void *__cuLaunchKernelEx = NULL
 * cdef void *__cuLaunchCooperativeKernel = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuLaunchCooperativeKernelMultiDevice = NULL
 * cdef void *__cuLaunchHostFunc = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuLaunchCooperativeKernel = NULL;

  /* "cuda/_cuda/ccuda.pyx":266
 * cdef void *__cuLaunchKernelEx = NULL
 * cdef void *__cuLaunchCooperativeKernel = NULL
 * cdef void *__cuLaunchCooperativeKernelMultiDevice = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuLaunchHostFunc = NULL
 * cdef void *__cuFuncSetBlockShape = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuLaunchCooperativeKernelMultiDevice = NULL;

  /* "cuda/_cuda/ccuda.pyx":267
 * cdef void *__cuLaunchCooperativeKernel = NULL
 * cdef void *__cuLaunchCooperativeKernelMultiDevice = NULL
 * cdef void *__cuLaunchHostFunc = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuFuncSetBlockShape = NULL
 * cdef void *__cuFuncSetSharedSize = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuLaunchHostFunc = NULL;

  /* "cuda/_cuda/ccuda.pyx":268
 * cdef void *__cuLaunchCooperativeKernelMultiDevice = NULL
 * cdef void *__cuLaunchHostFunc = NULL
 * cdef void *__cuFuncSetBlockShape = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuFuncSetSharedSize = NULL
 * cdef void *__cuParamSetSize = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuFuncSetBlockShape = NULL;

  /* "cuda/_cuda/ccuda.pyx":269
 * cdef void *__cuLaunchHostFunc = NULL
 * cdef void *__cuFuncSetBlockShape = NULL
 * cdef void *__cuFuncSetSharedSize = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuParamSetSize = NULL
 * cdef void *__cuParamSeti = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuFuncSetSharedSize = NULL;

  /* "cuda/_cuda/ccuda.pyx":270
 * cdef void *__cuFuncSetBlockShape = NULL
 * cdef void *__cuFuncSetSharedSize = NULL
 * cdef void *__cuParamSetSize = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuParamSeti = NULL
 * cdef void *__cuParamSetf = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuParamSetSize = NULL;

  /* "cuda/_cuda/ccuda.pyx":271
 * cdef void *__cuFuncSetSharedSize = NULL
 * cdef void *__cuParamSetSize = NULL
 * cdef void *__cuParamSeti = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuParamSetf = NULL
 * cdef void *__cuParamSetv = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuParamSeti = NULL;

  /* "cuda/_cuda/ccuda.pyx":272
 * cdef void *__cuParamSetSize = NULL
 * cdef void *__cuParamSeti = NULL
 * cdef void *__cuParamSetf = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuParamSetv = NULL
 * cdef void *__cuLaunch = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuParamSetf = NULL;

  /* "cuda/_cuda/ccuda.pyx":273
 * cdef void *__cuParamSeti = NULL
 * cdef void *__cuParamSetf = NULL
 * cdef void *__cuParamSetv = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuLaunch = NULL
 * cdef void *__cuLaunchGrid = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuParamSetv = NULL;

  /* "cuda/_cuda/ccuda.pyx":274
 * cdef void *__cuParamSetf = NULL
 * cdef void *__cuParamSetv = NULL
 * cdef void *__cuLaunch = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuLaunchGrid = NULL
 * cdef void *__cuLaunchGridAsync = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuLaunch = NULL;

  /* "cuda/_cuda/ccuda.pyx":275
 * cdef void *__cuParamSetv = NULL
 * cdef void *__cuLaunch = NULL
 * cdef void *__cuLaunchGrid = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuLaunchGridAsync = NULL
 * cdef void *__cuParamSetTexRef = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuLaunchGrid = NULL;

  /* "cuda/_cuda/ccuda.pyx":276
 * cdef void *__cuLaunch = NULL
 * cdef void *__cuLaunchGrid = NULL
 * cdef void *__cuLaunchGridAsync = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuParamSetTexRef = NULL
 * cdef void *__cuFuncSetSharedMemConfig = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuLaunchGridAsync = NULL;

  /* "cuda/_cuda/ccuda.pyx":277
 * cdef void *__cuLaunchGrid = NULL
 * cdef void *__cuLaunchGridAsync = NULL
 * cdef void *__cuParamSetTexRef = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuFuncSetSharedMemConfig = NULL
 * cdef void *__cuGraphCreate = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuParamSetTexRef = NULL;

  /* "cuda/_cuda/ccuda.pyx":278
 * cdef void *__cuLaunchGridAsync = NULL
 * cdef void *__cuParamSetTexRef = NULL
 * cdef void *__cuFuncSetSharedMemConfig = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuGraphCreate = NULL
 * cdef void *__cuGraphAddKernelNode_v2 = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuFuncSetSharedMemConfig = NULL;

  /* "cuda/_cuda/ccuda.pyx":279
 * cdef void *__cuParamSetTexRef = NULL
 * cdef void *__cuFuncSetSharedMemConfig = NULL
 * cdef void *__cuGraphCreate = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuGraphAddKernelNode_v2 = NULL
 * cdef void *__cuGraphKernelNodeGetParams_v2 = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuGraphCreate = NULL;

  /* "cuda/_cuda/ccuda.pyx":280
 * cdef void *__cuFuncSetSharedMemConfig = NULL
 * cdef void *__cuGraphCreate = NULL
 * cdef void *__cuGraphAddKernelNode_v2 = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuGraphKernelNodeGetParams_v2 = NULL
 * cdef void *__cuGraphKernelNodeSetParams_v2 = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuGraphAddKernelNode_v2 = NULL;

  /* "cuda/_cuda/ccuda.pyx":281
 * cdef void *__cuGraphCreate = NULL
 * cdef void *__cuGraphAddKernelNode_v2 = NULL
 * cdef void *__cuGraphKernelNodeGetParams_v2 = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuGraphKernelNodeSetParams_v2 = NULL
 * cdef void *__cuGraphAddMemcpyNode = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuGraphKernelNodeGetParams_v2 = NULL;

  /* "cuda/_cuda/ccuda.pyx":282
 * cdef void *__cuGraphAddKernelNode_v2 = NULL
 * cdef void *__cuGraphKernelNodeGetParams_v2 = NULL
 * cdef void *__cuGraphKernelNodeSetParams_v2 = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuGraphAddMemcpyNode = NULL
 * cdef void *__cuGraphMemcpyNodeGetParams = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuGraphKernelNodeSetParams_v2 = NULL;

  /* "cuda/_cuda/ccuda.pyx":283
 * cdef void *__cuGraphKernelNodeGetParams_v2 = NULL
 * cdef void *__cuGraphKernelNodeSetParams_v2 = NULL
 * cdef void *__cuGraphAddMemcpyNode = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuGraphMemcpyNodeGetParams = NULL
 * cdef void *__cuGraphMemcpyNodeSetParams = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuGraphAddMemcpyNode = NULL;

  /* "cuda/_cuda/ccuda.pyx":284
 * cdef void *__cuGraphKernelNodeSetParams_v2 = NULL
 * cdef void *__cuGraphAddMemcpyNode = NULL
 * cdef void *__cuGraphMemcpyNodeGetParams = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuGraphMemcpyNodeSetParams = NULL
 * cdef void *__cuGraphAddMemsetNode = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuGraphMemcpyNodeGetParams = NULL;

  /* "cuda/_cuda/ccuda.pyx":285
 * cdef void *__cuGraphAddMemcpyNode = NULL
 * cdef void *__cuGraphMemcpyNodeGetParams = NULL
 * cdef void *__cuGraphMemcpyNodeSetParams = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuGraphAddMemsetNode = NULL
 * cdef void *__cuGraphMemsetNodeGetParams = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuGraphMemcpyNodeSetParams = NULL;

  /* "cuda/_cuda/ccuda.pyx":286
 * cdef void *__cuGraphMemcpyNodeGetParams = NULL
 * cdef void *__cuGraphMemcpyNodeSetParams = NULL
 * cdef void *__cuGraphAddMemsetNode = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuGraphMemsetNodeGetParams = NULL
 * cdef void *__cuGraphMemsetNodeSetParams = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuGraphAddMemsetNode = NULL;

  /* "cuda/_cuda/ccuda.pyx":287
 * cdef void *__cuGraphMemcpyNodeSetParams = NULL
 * cdef void *__cuGraphAddMemsetNode = NULL
 * cdef void *__cuGraphMemsetNodeGetParams = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuGraphMemsetNodeSetParams = NULL
 * cdef void *__cuGraphAddHostNode = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuGraphMemsetNodeGetParams = NULL;

  /* "cuda/_cuda/ccuda.pyx":288
 * cdef void *__cuGraphAddMemsetNode = NULL
 * cdef void *__cuGraphMemsetNodeGetParams = NULL
 * cdef void *__cuGraphMemsetNodeSetParams = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuGraphAddHostNode = NULL
 * cdef void *__cuGraphHostNodeGetParams = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuGraphMemsetNodeSetParams = NULL;

  /* "cuda/_cuda/ccuda.pyx":289
 * cdef void *__cuGraphMemsetNodeGetParams = NULL
 * cdef void *__cuGraphMemsetNodeSetParams = NULL
 * cdef void *__cuGraphAddHostNode = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuGraphHostNodeGetParams = NULL
 * cdef void *__cuGraphHostNodeSetParams = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuGraphAddHostNode = NULL;

  /* "cuda/_cuda/ccuda.pyx":290
 * cdef void *__cuGraphMemsetNodeSetParams = NULL
 * cdef void *__cuGraphAddHostNode = NULL
 * cdef void *__cuGraphHostNodeGetParams = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuGraphHostNodeSetParams = NULL
 * cdef void *__cuGraphAddChildGraphNode = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuGraphHostNodeGetParams = NULL;

  /* "cuda/_cuda/ccuda.pyx":291
 * cdef void *__cuGraphAddHostNode = NULL
 * cdef void *__cuGraphHostNodeGetParams = NULL
 * cdef void *__cuGraphHostNodeSetParams = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuGraphAddChildGraphNode = NULL
 * cdef void *__cuGraphChildGraphNodeGetGraph = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuGraphHostNodeSetParams = NULL;

  /* "cuda/_cuda/ccuda.pyx":292
 * cdef void *__cuGraphHostNodeGetParams = NULL
 * cdef void *__cuGraphHostNodeSetParams = NULL
 * cdef void *__cuGraphAddChildGraphNode = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuGraphChildGraphNodeGetGraph = NULL
 * cdef void *__cuGraphAddEmptyNode = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuGraphAddChildGraphNode = NULL;

  /* "cuda/_cuda/ccuda.pyx":293
 * cdef void *__cuGraphHostNodeSetParams = NULL
 * cdef void *__cuGraphAddChildGraphNode = NULL
 * cdef void *__cuGraphChildGraphNodeGetGraph = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuGraphAddEmptyNode = NULL
 * cdef void *__cuGraphAddEventRecordNode = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuGraphChildGraphNodeGetGraph = NULL;

  /* "cuda/_cuda/ccuda.pyx":294
 * cdef void *__cuGraphAddChildGraphNode = NULL
 * cdef void *__cuGraphChildGraphNodeGetGraph = NULL
 * cdef void *__cuGraphAddEmptyNode = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuGraphAddEventRecordNode = NULL
 * cdef void *__cuGraphEventRecordNodeGetEvent = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuGraphAddEmptyNode = NULL;

  /* "cuda/_cuda/ccuda.pyx":295
 * cdef void *__cuGraphChildGraphNodeGetGraph = NULL
 * cdef void *__cuGraphAddEmptyNode = NULL
 * cdef void *__cuGraphAddEventRecordNode = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuGraphEventRecordNodeGetEvent = NULL
 * cdef void *__cuGraphEventRecordNodeSetEvent = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuGraphAddEventRecordNode = NULL;

  /* "cuda/_cuda/ccuda.pyx":296
 * cdef void *__cuGraphAddEmptyNode = NULL
 * cdef void *__cuGraphAddEventRecordNode = NULL
 * cdef void *__cuGraphEventRecordNodeGetEvent = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuGraphEventRecordNodeSetEvent = NULL
 * cdef void *__cuGraphAddEventWaitNode = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuGraphEventRecordNodeGetEvent = NULL;

  /* "cuda/_cuda/ccuda.pyx":297
 * cdef void *__cuGraphAddEventRecordNode = NULL
 * cdef void *__cuGraphEventRecordNodeGetEvent = NULL
 * cdef void *__cuGraphEventRecordNodeSetEvent = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuGraphAddEventWaitNode = NULL
 * cdef void *__cuGraphEventWaitNodeGetEvent = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuGraphEventRecordNodeSetEvent = NULL;

  /* "cuda/_cuda/ccuda.pyx":298
 * cdef void *__cuGraphEventRecordNodeGetEvent = NULL
 * cdef void *__cuGraphEventRecordNodeSetEvent = NULL
 * cdef void *__cuGraphAddEventWaitNode = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuGraphEventWaitNodeGetEvent = NULL
 * cdef void *__cuGraphEventWaitNodeSetEvent = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuGraphAddEventWaitNode = NULL;

  /* "cuda/_cuda/ccuda.pyx":299
 * cdef void *__cuGraphEventRecordNodeSetEvent = NULL
 * cdef void *__cuGraphAddEventWaitNode = NULL
 * cdef void *__cuGraphEventWaitNodeGetEvent = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuGraphEventWaitNodeSetEvent = NULL
 * cdef void *__cuGraphAddExternalSemaphoresSignalNode = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuGraphEventWaitNodeGetEvent = NULL;

  /* "cuda/_cuda/ccuda.pyx":300
 * cdef void *__cuGraphAddEventWaitNode = NULL
 * cdef void *__cuGraphEventWaitNodeGetEvent = NULL
 * cdef void *__cuGraphEventWaitNodeSetEvent = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuGraphAddExternalSemaphoresSignalNode = NULL
 * cdef void *__cuGraphExternalSemaphoresSignalNodeGetParams = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuGraphEventWaitNodeSetEvent = NULL;

  /* "cuda/_cuda/ccuda.pyx":301
 * cdef void *__cuGraphEventWaitNodeGetEvent = NULL
 * cdef void *__cuGraphEventWaitNodeSetEvent = NULL
 * cdef void *__cuGraphAddExternalSemaphoresSignalNode = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuGraphExternalSemaphoresSignalNodeGetParams = NULL
 * cdef void *__cuGraphExternalSemaphoresSignalNodeSetParams = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuGraphAddExternalSemaphoresSignalNode = NULL;

  /* "cuda/_cuda/ccuda.pyx":302
 * cdef void *__cuGraphEventWaitNodeSetEvent = NULL
 * cdef void *__cuGraphAddExternalSemaphoresSignalNode = NULL
 * cdef void *__cuGraphExternalSemaphoresSignalNodeGetParams = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuGraphExternalSemaphoresSignalNodeSetParams = NULL
 * cdef void *__cuGraphAddExternalSemaphoresWaitNode = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuGraphExternalSemaphoresSignalNodeGetParams = NULL;

  /* "cuda/_cuda/ccuda.pyx":303
 * cdef void *__cuGraphAddExternalSemaphoresSignalNode = NULL
 * cdef void *__cuGraphExternalSemaphoresSignalNodeGetParams = NULL
 * cdef void *__cuGraphExternalSemaphoresSignalNodeSetParams = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuGraphAddExternalSemaphoresWaitNode = NULL
 * cdef void *__cuGraphExternalSemaphoresWaitNodeGetParams = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuGraphExternalSemaphoresSignalNodeSetParams = NULL;

  /* "cuda/_cuda/ccuda.pyx":304
 * cdef void *__cuGraphExternalSemaphoresSignalNodeGetParams = NULL
 * cdef void *__cuGraphExternalSemaphoresSignalNodeSetParams = NULL
 * cdef void *__cuGraphAddExternalSemaphoresWaitNode = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuGraphExternalSemaphoresWaitNodeGetParams = NULL
 * cdef void *__cuGraphExternalSemaphoresWaitNodeSetParams = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuGraphAddExternalSemaphoresWaitNode = NULL;

  /* "cuda/_cuda/ccuda.pyx":305
 * cdef void *__cuGraphExternalSemaphoresSignalNodeSetParams = NULL
 * cdef void *__cuGraphAddExternalSemaphoresWaitNode = NULL
 * cdef void *__cuGraphExternalSemaphoresWaitNodeGetParams = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuGraphExternalSemaphoresWaitNodeSetParams = NULL
 * cdef void *__cuGraphAddBatchMemOpNode = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuGraphExternalSemaphoresWaitNodeGetParams = NULL;

  /* "cuda/_cuda/ccuda.pyx":306
 * cdef void *__cuGraphAddExternalSemaphoresWaitNode = NULL
 * cdef void *__cuGraphExternalSemaphoresWaitNodeGetParams = NULL
 * cdef void *__cuGraphExternalSemaphoresWaitNodeSetParams = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuGraphAddBatchMemOpNode = NULL
 * cdef void *__cuGraphBatchMemOpNodeGetParams = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuGraphExternalSemaphoresWaitNodeSetParams = NULL;

  /* "cuda/_cuda/ccuda.pyx":307
 * cdef void *__cuGraphExternalSemaphoresWaitNodeGetParams = NULL
 * cdef void *__cuGraphExternalSemaphoresWaitNodeSetParams = NULL
 * cdef void *__cuGraphAddBatchMemOpNode = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuGraphBatchMemOpNodeGetParams = NULL
 * cdef void *__cuGraphBatchMemOpNodeSetParams = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuGraphAddBatchMemOpNode = NULL;

  /* "cuda/_cuda/ccuda.pyx":308
 * cdef void *__cuGraphExternalSemaphoresWaitNodeSetParams = NULL
 * cdef void *__cuGraphAddBatchMemOpNode = NULL
 * cdef void *__cuGraphBatchMemOpNodeGetParams = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuGraphBatchMemOpNodeSetParams = NULL
 * cdef void *__cuGraphExecBatchMemOpNodeSetParams = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuGraphBatchMemOpNodeGetParams = NULL;

  /* "cuda/_cuda/ccuda.pyx":309
 * cdef void *__cuGraphAddBatchMemOpNode = NULL
 * cdef void *__cuGraphBatchMemOpNodeGetParams = NULL
 * cdef void *__cuGraphBatchMemOpNodeSetParams = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuGraphExecBatchMemOpNodeSetParams = NULL
 * cdef void *__cuGraphAddMemAllocNode = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuGraphBatchMemOpNodeSetParams = NULL;

  /* "cuda/_cuda/ccuda.pyx":310
 * cdef void *__cuGraphBatchMemOpNodeGetParams = NULL
 * cdef void *__cuGraphBatchMemOpNodeSetParams = NULL
 * cdef void *__cuGraphExecBatchMemOpNodeSetParams = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuGraphAddMemAllocNode = NULL
 * cdef void *__cuGraphMemAllocNodeGetParams = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuGraphExecBatchMemOpNodeSetParams = NULL;

  /* "cuda/_cuda/ccuda.pyx":311
 * cdef void *__cuGraphBatchMemOpNodeSetParams = NULL
 * cdef void *__cuGraphExecBatchMemOpNodeSetParams = NULL
 * cdef void *__cuGraphAddMemAllocNode = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuGraphMemAllocNodeGetParams = NULL
 * cdef void *__cuGraphAddMemFreeNode = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuGraphAddMemAllocNode = NULL;

  /* "cuda/_cuda/ccuda.pyx":312
 * cdef void *__cuGraphExecBatchMemOpNodeSetParams = NULL
 * cdef void *__cuGraphAddMemAllocNode = NULL
 * cdef void *__cuGraphMemAllocNodeGetParams = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuGraphAddMemFreeNode = NULL
 * cdef void *__cuGraphMemFreeNodeGetParams = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuGraphMemAllocNodeGetParams = NULL;

  /* "cuda/_cuda/ccuda.pyx":313
 * cdef void *__cuGraphAddMemAllocNode = NULL
 * cdef void *__cuGraphMemAllocNodeGetParams = NULL
 * cdef void *__cuGraphAddMemFreeNode = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuGraphMemFreeNodeGetParams = NULL
 * cdef void *__cuDeviceGraphMemTrim = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuGraphAddMemFreeNode = NULL;

  /* "cuda/_cuda/ccuda.pyx":314
 * cdef void *__cuGraphMemAllocNodeGetParams = NULL
 * cdef void *__cuGraphAddMemFreeNode = NULL
 * cdef void *__cuGraphMemFreeNodeGetParams = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuDeviceGraphMemTrim = NULL
 * cdef void *__cuDeviceGetGraphMemAttribute = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuGraphMemFreeNodeGetParams = NULL;

  /* "cuda/_cuda/ccuda.pyx":315
 * cdef void *__cuGraphAddMemFreeNode = NULL
 * cdef void *__cuGraphMemFreeNodeGetParams = NULL
 * cdef void *__cuDeviceGraphMemTrim = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuDeviceGetGraphMemAttribute = NULL
 * cdef void *__cuDeviceSetGraphMemAttribute = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuDeviceGraphMemTrim = NULL;

  /* "cuda/_cuda/ccuda.pyx":316
 * cdef void *__cuGraphMemFreeNodeGetParams = NULL
 * cdef void *__cuDeviceGraphMemTrim = NULL
 * cdef void *__cuDeviceGetGraphMemAttribute = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuDeviceSetGraphMemAttribute = NULL
 * cdef void *__cuGraphClone = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuDeviceGetGraphMemAttribute = NULL;

  /* "cuda/_cuda/ccuda.pyx":317
 * cdef void *__cuDeviceGraphMemTrim = NULL
 * cdef void *__cuDeviceGetGraphMemAttribute = NULL
 * cdef void *__cuDeviceSetGraphMemAttribute = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuGraphClone = NULL
 * cdef void *__cuGraphNodeFindInClone = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuDeviceSetGraphMemAttribute = NULL;

  /* "cuda/_cuda/ccuda.pyx":318
 * cdef void *__cuDeviceGetGraphMemAttribute = NULL
 * cdef void *__cuDeviceSetGraphMemAttribute = NULL
 * cdef void *__cuGraphClone = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuGraphNodeFindInClone = NULL
 * cdef void *__cuGraphNodeGetType = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuGraphClone = NULL;

  /* "cuda/_cuda/ccuda.pyx":319
 * cdef void *__cuDeviceSetGraphMemAttribute = NULL
 * cdef void *__cuGraphClone = NULL
 * cdef void *__cuGraphNodeFindInClone = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuGraphNodeGetType = NULL
 * cdef void *__cuGraphGetNodes = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuGraphNodeFindInClone = NULL;

  /* "cuda/_cuda/ccuda.pyx":320
 * cdef void *__cuGraphClone = NULL
 * cdef void *__cuGraphNodeFindInClone = NULL
 * cdef void *__cuGraphNodeGetType = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuGraphGetNodes = NULL
 * cdef void *__cuGraphGetRootNodes = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuGraphNodeGetType = NULL;

  /* "cuda/_cuda/ccuda.pyx":321
 * cdef void *__cuGraphNodeFindInClone = NULL
 * cdef void *__cuGraphNodeGetType = NULL
 * cdef void *__cuGraphGetNodes = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuGraphGetRootNodes = NULL
 * cdef void *__cuGraphGetEdges = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuGraphGetNodes = NULL;

  /* "cuda/_cuda/ccuda.pyx":322
 * cdef void *__cuGraphNodeGetType = NULL
 * cdef void *__cuGraphGetNodes = NULL
 * cdef void *__cuGraphGetRootNodes = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuGraphGetEdges = NULL
 * cdef void *__cuGraphGetEdges_v2 = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuGraphGetRootNodes = NULL;

  /* "cuda/_cuda/ccuda.pyx":323
 * cdef void *__cuGraphGetNodes = NULL
 * cdef void *__cuGraphGetRootNodes = NULL
 * cdef void *__cuGraphGetEdges = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuGraphGetEdges_v2 = NULL
 * cdef void *__cuGraphNodeGetDependencies = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuGraphGetEdges = NULL;

  /* "cuda/_cuda/ccuda.pyx":324
 * cdef void *__cuGraphGetRootNodes = NULL
 * cdef void *__cuGraphGetEdges = NULL
 * cdef void *__cuGraphGetEdges_v2 = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuGraphNodeGetDependencies = NULL
 * cdef void *__cuGraphNodeGetDependencies_v2 = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuGraphGetEdges_v2 = NULL;

  /* "cuda/_cuda/ccuda.pyx":325
 * cdef void *__cuGraphGetEdges = NULL
 * cdef void *__cuGraphGetEdges_v2 = NULL
 * cdef void *__cuGraphNodeGetDependencies = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuGraphNodeGetDependencies_v2 = NULL
 * cdef void *__cuGraphNodeGetDependentNodes = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuGraphNodeGetDependencies = NULL;

  /* "cuda/_cuda/ccuda.pyx":326
 * cdef void *__cuGraphGetEdges_v2 = NULL
 * cdef void *__cuGraphNodeGetDependencies = NULL
 * cdef void *__cuGraphNodeGetDependencies_v2 = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuGraphNodeGetDependentNodes = NULL
 * cdef void *__cuGraphNodeGetDependentNodes_v2 = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuGraphNodeGetDependencies_v2 = NULL;

  /* "cuda/_cuda/ccuda.pyx":327
 * cdef void *__cuGraphNodeGetDependencies = NULL
 * cdef void *__cuGraphNodeGetDependencies_v2 = NULL
 * cdef void *__cuGraphNodeGetDependentNodes = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuGraphNodeGetDependentNodes_v2 = NULL
 * cdef void *__cuGraphAddDependencies = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuGraphNodeGetDependentNodes = NULL;

  /* "cuda/_cuda/ccuda.pyx":328
 * cdef void *__cuGraphNodeGetDependencies_v2 = NULL
 * cdef void *__cuGraphNodeGetDependentNodes = NULL
 * cdef void *__cuGraphNodeGetDependentNodes_v2 = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuGraphAddDependencies = NULL
 * cdef void *__cuGraphAddDependencies_v2 = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuGraphNodeGetDependentNodes_v2 = NULL;

  /* "cuda/_cuda/ccuda.pyx":329
 * cdef void *__cuGraphNodeGetDependentNodes = NULL
 * cdef void *__cuGraphNodeGetDependentNodes_v2 = NULL
 * cdef void *__cuGraphAddDependencies = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuGraphAddDependencies_v2 = NULL
 * cdef void *__cuGraphRemoveDependencies = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuGraphAddDependencies = NULL;

  /* "cuda/_cuda/ccuda.pyx":330
 * cdef void *__cuGraphNodeGetDependentNodes_v2 = NULL
 * cdef void *__cuGraphAddDependencies = NULL
 * cdef void *__cuGraphAddDependencies_v2 = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuGraphRemoveDependencies = NULL
 * cdef void *__cuGraphRemoveDependencies_v2 = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuGraphAddDependencies_v2 = NULL;

  /* "cuda/_cuda/ccuda.pyx":331
 * cdef void *__cuGraphAddDependencies = NULL
 * cdef void *__cuGraphAddDependencies_v2 = NULL
 * cdef void *__cuGraphRemoveDependencies = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuGraphRemoveDependencies_v2 = NULL
 * cdef void *__cuGraphDestroyNode = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuGraphRemoveDependencies = NULL;

  /* "cuda/_cuda/ccuda.pyx":332
 * cdef void *__cuGraphAddDependencies_v2 = NULL
 * cdef void *__cuGraphRemoveDependencies = NULL
 * cdef void *__cuGraphRemoveDependencies_v2 = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuGraphDestroyNode = NULL
 * cdef void *__cuGraphInstantiateWithFlags = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuGraphRemoveDependencies_v2 = NULL;

  /* "cuda/_cuda/ccuda.pyx":333
 * cdef void *__cuGraphRemoveDependencies = NULL
 * cdef void *__cuGraphRemoveDependencies_v2 = NULL
 * cdef void *__cuGraphDestroyNode = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuGraphInstantiateWithFlags = NULL
 * cdef void *__cuGraphInstantiateWithParams = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuGraphDestroyNode = NULL;

  /* "cuda/_cuda/ccuda.pyx":334
 * cdef void *__cuGraphRemoveDependencies_v2 = NULL
 * cdef void *__cuGraphDestroyNode = NULL
 * cdef void *__cuGraphInstantiateWithFlags = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuGraphInstantiateWithParams = NULL
 * cdef void *__cuGraphExecGetFlags = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuGraphInstantiateWithFlags = NULL;

  /* "cuda/_cuda/ccuda.pyx":335
 * cdef void *__cuGraphDestroyNode = NULL
 * cdef void *__cuGraphInstantiateWithFlags = NULL
 * cdef void *__cuGraphInstantiateWithParams = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuGraphExecGetFlags = NULL
 * cdef void *__cuGraphExecKernelNodeSetParams_v2 = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuGraphInstantiateWithParams = NULL;

  /* "cuda/_cuda/ccuda.pyx":336
 * cdef void *__cuGraphInstantiateWithFlags = NULL
 * cdef void *__cuGraphInstantiateWithParams = NULL
 * cdef void *__cuGraphExecGetFlags = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuGraphExecKernelNodeSetParams_v2 = NULL
 * cdef void *__cuGraphExecMemcpyNodeSetParams = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuGraphExecGetFlags = NULL;

  /* "cuda/_cuda/ccuda.pyx":337
 * cdef void *__cuGraphInstantiateWithParams = NULL
 * cdef void *__cuGraphExecGetFlags = NULL
 * cdef void *__cuGraphExecKernelNodeSetParams_v2 = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuGraphExecMemcpyNodeSetParams = NULL
 * cdef void *__cuGraphExecMemsetNodeSetParams = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuGraphExecKernelNodeSetParams_v2 = NULL;

  /* "cuda/_cuda/ccuda.pyx":338
 * cdef void *__cuGraphExecGetFlags = NULL
 * cdef void *__cuGraphExecKernelNodeSetParams_v2 = NULL
 * cdef void *__cuGraphExecMemcpyNodeSetParams = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuGraphExecMemsetNodeSetParams = NULL
 * cdef void *__cuGraphExecHostNodeSetParams = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuGraphExecMemcpyNodeSetParams = NULL;

  /* "cuda/_cuda/ccuda.pyx":339
 * cdef void *__cuGraphExecKernelNodeSetParams_v2 = NULL
 * cdef void *__cuGraphExecMemcpyNodeSetParams = NULL
 * cdef void *__cuGraphExecMemsetNodeSetParams = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuGraphExecHostNodeSetParams = NULL
 * cdef void *__cuGraphExecChildGraphNodeSetParams = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuGraphExecMemsetNodeSetParams = NULL;

  /* "cuda/_cuda/ccuda.pyx":340
 * cdef void *__cuGraphExecMemcpyNodeSetParams = NULL
 * cdef void *__cuGraphExecMemsetNodeSetParams = NULL
 * cdef void *__cuGraphExecHostNodeSetParams = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuGraphExecChildGraphNodeSetParams = NULL
 * cdef void *__cuGraphExecEventRecordNodeSetEvent = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuGraphExecHostNodeSetParams = NULL;

  /* "cuda/_cuda/ccuda.pyx":341
 * cdef void *__cuGraphExecMemsetNodeSetParams = NULL
 * cdef void *__cuGraphExecHostNodeSetParams = NULL
 * cdef void *__cuGraphExecChildGraphNodeSetParams = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuGraphExecEventRecordNodeSetEvent = NULL
 * cdef void *__cuGraphExecEventWaitNodeSetEvent = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuGraphExecChildGraphNodeSetParams = NULL;

  /* "cuda/_cuda/ccuda.pyx":342
 * cdef void *__cuGraphExecHostNodeSetParams = NULL
 * cdef void *__cuGraphExecChildGraphNodeSetParams = NULL
 * cdef void *__cuGraphExecEventRecordNodeSetEvent = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuGraphExecEventWaitNodeSetEvent = NULL
 * cdef void *__cuGraphExecExternalSemaphoresSignalNodeSetParams = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuGraphExecEventRecordNodeSetEvent = NULL;

  /* "cuda/_cuda/ccuda.pyx":343
 * cdef void *__cuGraphExecChildGraphNodeSetParams = NULL
 * cdef void *__cuGraphExecEventRecordNodeSetEvent = NULL
 * cdef void *__cuGraphExecEventWaitNodeSetEvent = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuGraphExecExternalSemaphoresSignalNodeSetParams = NULL
 * cdef void *__cuGraphExecExternalSemaphoresWaitNodeSetParams = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuGraphExecEventWaitNodeSetEvent = NULL;

  /* "cuda/_cuda/ccuda.pyx":344
 * cdef void *__cuGraphExecEventRecordNodeSetEvent = NULL
 * cdef void *__cuGraphExecEventWaitNodeSetEvent = NULL
 * cdef void *__cuGraphExecExternalSemaphoresSignalNodeSetParams = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuGraphExecExternalSemaphoresWaitNodeSetParams = NULL
 * cdef void *__cuGraphNodeSetEnabled = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuGraphExecExternalSemaphoresSignalNodeSetParams = NULL;

  /* "cuda/_cuda/ccuda.pyx":345
 * cdef void *__cuGraphExecEventWaitNodeSetEvent = NULL
 * cdef void *__cuGraphExecExternalSemaphoresSignalNodeSetParams = NULL
 * cdef void *__cuGraphExecExternalSemaphoresWaitNodeSetParams = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuGraphNodeSetEnabled = NULL
 * cdef void *__cuGraphNodeGetEnabled = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuGraphExecExternalSemaphoresWaitNodeSetParams = NULL;

  /* "cuda/_cuda/ccuda.pyx":346
 * cdef void *__cuGraphExecExternalSemaphoresSignalNodeSetParams = NULL
 * cdef void *__cuGraphExecExternalSemaphoresWaitNodeSetParams = NULL
 * cdef void *__cuGraphNodeSetEnabled = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuGraphNodeGetEnabled = NULL
 * cdef void *__cuGraphUpload = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuGraphNodeSetEnabled = NULL;

  /* "cuda/_cuda/ccuda.pyx":347
 * cdef void *__cuGraphExecExternalSemaphoresWaitNodeSetParams = NULL
 * cdef void *__cuGraphNodeSetEnabled = NULL
 * cdef void *__cuGraphNodeGetEnabled = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuGraphUpload = NULL
 * cdef void *__cuGraphLaunch = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuGraphNodeGetEnabled = NULL;

  /* "cuda/_cuda/ccuda.pyx":348
 * cdef void *__cuGraphNodeSetEnabled = NULL
 * cdef void *__cuGraphNodeGetEnabled = NULL
 * cdef void *__cuGraphUpload = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuGraphLaunch = NULL
 * cdef void *__cuGraphExecDestroy = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuGraphUpload = NULL;

  /* "cuda/_cuda/ccuda.pyx":349
 * cdef void *__cuGraphNodeGetEnabled = NULL
 * cdef void *__cuGraphUpload = NULL
 * cdef void *__cuGraphLaunch = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuGraphExecDestroy = NULL
 * cdef void *__cuGraphDestroy = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuGraphLaunch = NULL;

  /* "cuda/_cuda/ccuda.pyx":350
 * cdef void *__cuGraphUpload = NULL
 * cdef void *__cuGraphLaunch = NULL
 * cdef void *__cuGraphExecDestroy = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuGraphDestroy = NULL
 * cdef void *__cuGraphExecUpdate_v2 = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuGraphExecDestroy = NULL;

  /* "cuda/_cuda/ccuda.pyx":351
 * cdef void *__cuGraphLaunch = NULL
 * cdef void *__cuGraphExecDestroy = NULL
 * cdef void *__cuGraphDestroy = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuGraphExecUpdate_v2 = NULL
 * cdef void *__cuGraphKernelNodeCopyAttributes = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuGraphDestroy = NULL;

  /* "cuda/_cuda/ccuda.pyx":352
 * cdef void *__cuGraphExecDestroy = NULL
 * cdef void *__cuGraphDestroy = NULL
 * cdef void *__cuGraphExecUpdate_v2 = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuGraphKernelNodeCopyAttributes = NULL
 * cdef void *__cuGraphKernelNodeGetAttribute = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuGraphExecUpdate_v2 = NULL;

  /* "cuda/_cuda/ccuda.pyx":353
 * cdef void *__cuGraphDestroy = NULL
 * cdef void *__cuGraphExecUpdate_v2 = NULL
 * cdef void *__cuGraphKernelNodeCopyAttributes = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuGraphKernelNodeGetAttribute = NULL
 * cdef void *__cuGraphKernelNodeSetAttribute = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuGraphKernelNodeCopyAttributes = NULL;

  /* "cuda/_cuda/ccuda.pyx":354
 * cdef void *__cuGraphExecUpdate_v2 = NULL
 * cdef void *__cuGraphKernelNodeCopyAttributes = NULL
 * cdef void *__cuGraphKernelNodeGetAttribute = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuGraphKernelNodeSetAttribute = NULL
 * cdef void *__cuGraphDebugDotPrint = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuGraphKernelNodeGetAttribute = NULL;

  /* "cuda/_cuda/ccuda.pyx":355
 * cdef void *__cuGraphKernelNodeCopyAttributes = NULL
 * cdef void *__cuGraphKernelNodeGetAttribute = NULL
 * cdef void *__cuGraphKernelNodeSetAttribute = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuGraphDebugDotPrint = NULL
 * cdef void *__cuUserObjectCreate = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuGraphKernelNodeSetAttribute = NULL;

  /* "cuda/_cuda/ccuda.pyx":356
 * cdef void *__cuGraphKernelNodeGetAttribute = NULL
 * cdef void *__cuGraphKernelNodeSetAttribute = NULL
 * cdef void *__cuGraphDebugDotPrint = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuUserObjectCreate = NULL
 * cdef void *__cuUserObjectRetain = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuGraphDebugDotPrint = NULL;

  /* "cuda/_cuda/ccuda.pyx":357
 * cdef void *__cuGraphKernelNodeSetAttribute = NULL
 * cdef void *__cuGraphDebugDotPrint = NULL
 * cdef void *__cuUserObjectCreate = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuUserObjectRetain = NULL
 * cdef void *__cuUserObjectRelease = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuUserObjectCreate = NULL;

  /* "cuda/_cuda/ccuda.pyx":358
 * cdef void *__cuGraphDebugDotPrint = NULL
 * cdef void *__cuUserObjectCreate = NULL
 * cdef void *__cuUserObjectRetain = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuUserObjectRelease = NULL
 * cdef void *__cuGraphRetainUserObject = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuUserObjectRetain = NULL;

  /* "cuda/_cuda/ccuda.pyx":359
 * cdef void *__cuUserObjectCreate = NULL
 * cdef void *__cuUserObjectRetain = NULL
 * cdef void *__cuUserObjectRelease = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuGraphRetainUserObject = NULL
 * cdef void *__cuGraphReleaseUserObject = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuUserObjectRelease = NULL;

  /* "cuda/_cuda/ccuda.pyx":360
 * cdef void *__cuUserObjectRetain = NULL
 * cdef void *__cuUserObjectRelease = NULL
 * cdef void *__cuGraphRetainUserObject = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuGraphReleaseUserObject = NULL
 * cdef void *__cuGraphAddNode = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuGraphRetainUserObject = NULL;

  /* "cuda/_cuda/ccuda.pyx":361
 * cdef void *__cuUserObjectRelease = NULL
 * cdef void *__cuGraphRetainUserObject = NULL
 * cdef void *__cuGraphReleaseUserObject = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuGraphAddNode = NULL
 * cdef void *__cuGraphAddNode_v2 = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuGraphReleaseUserObject = NULL;

  /* "cuda/_cuda/ccuda.pyx":362
 * cdef void *__cuGraphRetainUserObject = NULL
 * cdef void *__cuGraphReleaseUserObject = NULL
 * cdef void *__cuGraphAddNode = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuGraphAddNode_v2 = NULL
 * cdef void *__cuGraphNodeSetParams = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuGraphAddNode = NULL;

  /* "cuda/_cuda/ccuda.pyx":363
 * cdef void *__cuGraphReleaseUserObject = NULL
 * cdef void *__cuGraphAddNode = NULL
 * cdef void *__cuGraphAddNode_v2 = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuGraphNodeSetParams = NULL
 * cdef void *__cuGraphExecNodeSetParams = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuGraphAddNode_v2 = NULL;

  /* "cuda/_cuda/ccuda.pyx":364
 * cdef void *__cuGraphAddNode = NULL
 * cdef void *__cuGraphAddNode_v2 = NULL
 * cdef void *__cuGraphNodeSetParams = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuGraphExecNodeSetParams = NULL
 * cdef void *__cuGraphConditionalHandleCreate = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuGraphNodeSetParams = NULL;

  /* "cuda/_cuda/ccuda.pyx":365
 * cdef void *__cuGraphAddNode_v2 = NULL
 * cdef void *__cuGraphNodeSetParams = NULL
 * cdef void *__cuGraphExecNodeSetParams = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuGraphConditionalHandleCreate = NULL
 * cdef void *__cuOccupancyMaxActiveBlocksPerMultiprocessor = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuGraphExecNodeSetParams = NULL;

  /* "cuda/_cuda/ccuda.pyx":366
 * cdef void *__cuGraphNodeSetParams = NULL
 * cdef void *__cuGraphExecNodeSetParams = NULL
 * cdef void *__cuGraphConditionalHandleCreate = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuOccupancyMaxActiveBlocksPerMultiprocessor = NULL
 * cdef void *__cuOccupancyMaxActiveBlocksPerMultiprocessorWithFlags = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuGraphConditionalHandleCreate = NULL;

  /* "cuda/_cuda/ccuda.pyx":367
 * cdef void *__cuGraphExecNodeSetParams = NULL
 * cdef void *__cuGraphConditionalHandleCreate = NULL
 * cdef void *__cuOccupancyMaxActiveBlocksPerMultiprocessor = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuOccupancyMaxActiveBlocksPerMultiprocessorWithFlags = NULL
 * cdef void *__cuOccupancyMaxPotentialBlockSize = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuOccupancyMaxActiveBlocksPerMultiprocessor = NULL;

  /* "cuda/_cuda/ccuda.pyx":368
 * cdef void *__cuGraphConditionalHandleCreate = NULL
 * cdef void *__cuOccupancyMaxActiveBlocksPerMultiprocessor = NULL
 * cdef void *__cuOccupancyMaxActiveBlocksPerMultiprocessorWithFlags = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuOccupancyMaxPotentialBlockSize = NULL
 * cdef void *__cuOccupancyMaxPotentialBlockSizeWithFlags = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuOccupancyMaxActiveBlocksPerMultiprocessorWithFlags = NULL;

  /* "cuda/_cuda/ccuda.pyx":369
 * cdef void *__cuOccupancyMaxActiveBlocksPerMultiprocessor = NULL
 * cdef void *__cuOccupancyMaxActiveBlocksPerMultiprocessorWithFlags = NULL
 * cdef void *__cuOccupancyMaxPotentialBlockSize = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuOccupancyMaxPotentialBlockSizeWithFlags = NULL
 * cdef void *__cuOccupancyAvailableDynamicSMemPerBlock = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuOccupancyMaxPotentialBlockSize = NULL;

  /* "cuda/_cuda/ccuda.pyx":370
 * cdef void *__cuOccupancyMaxActiveBlocksPerMultiprocessorWithFlags = NULL
 * cdef void *__cuOccupancyMaxPotentialBlockSize = NULL
 * cdef void *__cuOccupancyMaxPotentialBlockSizeWithFlags = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuOccupancyAvailableDynamicSMemPerBlock = NULL
 * cdef void *__cuOccupancyMaxPotentialClusterSize = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuOccupancyMaxPotentialBlockSizeWithFlags = NULL;

  /* "cuda/_cuda/ccuda.pyx":371
 * cdef void *__cuOccupancyMaxPotentialBlockSize = NULL
 * cdef void *__cuOccupancyMaxPotentialBlockSizeWithFlags = NULL
 * cdef void *__cuOccupancyAvailableDynamicSMemPerBlock = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuOccupancyMaxPotentialClusterSize = NULL
 * cdef void *__cuOccupancyMaxActiveClusters = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuOccupancyAvailableDynamicSMemPerBlock = NULL;

  /* "cuda/_cuda/ccuda.pyx":372
 * cdef void *__cuOccupancyMaxPotentialBlockSizeWithFlags = NULL
 * cdef void *__cuOccupancyAvailableDynamicSMemPerBlock = NULL
 * cdef void *__cuOccupancyMaxPotentialClusterSize = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuOccupancyMaxActiveClusters = NULL
 * cdef void *__cuTexRefSetArray = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuOccupancyMaxPotentialClusterSize = NULL;

  /* "cuda/_cuda/ccuda.pyx":373
 * cdef void *__cuOccupancyAvailableDynamicSMemPerBlock = NULL
 * cdef void *__cuOccupancyMaxPotentialClusterSize = NULL
 * cdef void *__cuOccupancyMaxActiveClusters = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuTexRefSetArray = NULL
 * cdef void *__cuTexRefSetMipmappedArray = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuOccupancyMaxActiveClusters = NULL;

  /* "cuda/_cuda/ccuda.pyx":374
 * cdef void *__cuOccupancyMaxPotentialClusterSize = NULL
 * cdef void *__cuOccupancyMaxActiveClusters = NULL
 * cdef void *__cuTexRefSetArray = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuTexRefSetMipmappedArray = NULL
 * cdef void *__cuTexRefSetAddress_v2 = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuTexRefSetArray = NULL;

  /* "cuda/_cuda/ccuda.pyx":375
 * cdef void *__cuOccupancyMaxActiveClusters = NULL
 * cdef void *__cuTexRefSetArray = NULL
 * cdef void *__cuTexRefSetMipmappedArray = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuTexRefSetAddress_v2 = NULL
 * cdef void *__cuTexRefSetAddress2D_v3 = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuTexRefSetMipmappedArray = NULL;

  /* "cuda/_cuda/ccuda.pyx":376
 * cdef void *__cuTexRefSetArray = NULL
 * cdef void *__cuTexRefSetMipmappedArray = NULL
 * cdef void *__cuTexRefSetAddress_v2 = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuTexRefSetAddress2D_v3 = NULL
 * cdef void *__cuTexRefSetFormat = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuTexRefSetAddress_v2 = NULL;

  /* "cuda/_cuda/ccuda.pyx":377
 * cdef void *__cuTexRefSetMipmappedArray = NULL
 * cdef void *__cuTexRefSetAddress_v2 = NULL
 * cdef void *__cuTexRefSetAddress2D_v3 = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuTexRefSetFormat = NULL
 * cdef void *__cuTexRefSetAddressMode = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuTexRefSetAddress2D_v3 = NULL;

  /* "cuda/_cuda/ccuda.pyx":378
 * cdef void *__cuTexRefSetAddress_v2 = NULL
 * cdef void *__cuTexRefSetAddress2D_v3 = NULL
 * cdef void *__cuTexRefSetFormat = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuTexRefSetAddressMode = NULL
 * cdef void *__cuTexRefSetFilterMode = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuTexRefSetFormat = NULL;

  /* "cuda/_cuda/ccuda.pyx":379
 * cdef void *__cuTexRefSetAddress2D_v3 = NULL
 * cdef void *__cuTexRefSetFormat = NULL
 * cdef void *__cuTexRefSetAddressMode = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuTexRefSetFilterMode = NULL
 * cdef void *__cuTexRefSetMipmapFilterMode = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuTexRefSetAddressMode = NULL;

  /* "cuda/_cuda/ccuda.pyx":380
 * cdef void *__cuTexRefSetFormat = NULL
 * cdef void *__cuTexRefSetAddressMode = NULL
 * cdef void *__cuTexRefSetFilterMode = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuTexRefSetMipmapFilterMode = NULL
 * cdef void *__cuTexRefSetMipmapLevelBias = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuTexRefSetFilterMode = NULL;

  /* "cuda/_cuda/ccuda.pyx":381
 * cdef void *__cuTexRefSetAddressMode = NULL
 * cdef void *__cuTexRefSetFilterMode = NULL
 * cdef void *__cuTexRefSetMipmapFilterMode = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuTexRefSetMipmapLevelBias = NULL
 * cdef void *__cuTexRefSetMipmapLevelClamp = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuTexRefSetMipmapFilterMode = NULL;

  /* "cuda/_cuda/ccuda.pyx":382
 * cdef void *__cuTexRefSetFilterMode = NULL
 * cdef void *__cuTexRefSetMipmapFilterMode = NULL
 * cdef void *__cuTexRefSetMipmapLevelBias = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuTexRefSetMipmapLevelClamp = NULL
 * cdef void *__cuTexRefSetMaxAnisotropy = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuTexRefSetMipmapLevelBias = NULL;

  /* "cuda/_cuda/ccuda.pyx":383
 * cdef void *__cuTexRefSetMipmapFilterMode = NULL
 * cdef void *__cuTexRefSetMipmapLevelBias = NULL
 * cdef void *__cuTexRefSetMipmapLevelClamp = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuTexRefSetMaxAnisotropy = NULL
 * cdef void *__cuTexRefSetBorderColor = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuTexRefSetMipmapLevelClamp = NULL;

  /* "cuda/_cuda/ccuda.pyx":384
 * cdef void *__cuTexRefSetMipmapLevelBias = NULL
 * cdef void *__cuTexRefSetMipmapLevelClamp = NULL
 * cdef void *__cuTexRefSetMaxAnisotropy = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuTexRefSetBorderColor = NULL
 * cdef void *__cuTexRefSetFlags = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuTexRefSetMaxAnisotropy = NULL;

  /* "cuda/_cuda/ccuda.pyx":385
 * cdef void *__cuTexRefSetMipmapLevelClamp = NULL
 * cdef void *__cuTexRefSetMaxAnisotropy = NULL
 * cdef void *__cuTexRefSetBorderColor = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuTexRefSetFlags = NULL
 * cdef void *__cuTexRefGetAddress_v2 = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuTexRefSetBorderColor = NULL;

  /* "cuda/_cuda/ccuda.pyx":386
 * cdef void *__cuTexRefSetMaxAnisotropy = NULL
 * cdef void *__cuTexRefSetBorderColor = NULL
 * cdef void *__cuTexRefSetFlags = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuTexRefGetAddress_v2 = NULL
 * cdef void *__cuTexRefGetArray = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuTexRefSetFlags = NULL;

  /* "cuda/_cuda/ccuda.pyx":387
 * cdef void *__cuTexRefSetBorderColor = NULL
 * cdef void *__cuTexRefSetFlags = NULL
 * cdef void *__cuTexRefGetAddress_v2 = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuTexRefGetArray = NULL
 * cdef void *__cuTexRefGetMipmappedArray = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuTexRefGetAddress_v2 = NULL;

  /* "cuda/_cuda/ccuda.pyx":388
 * cdef void *__cuTexRefSetFlags = NULL
 * cdef void *__cuTexRefGetAddress_v2 = NULL
 * cdef void *__cuTexRefGetArray = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuTexRefGetMipmappedArray = NULL
 * cdef void *__cuTexRefGetAddressMode = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuTexRefGetArray = NULL;

  /* "cuda/_cuda/ccuda.pyx":389
 * cdef void *__cuTexRefGetAddress_v2 = NULL
 * cdef void *__cuTexRefGetArray = NULL
 * cdef void *__cuTexRefGetMipmappedArray = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuTexRefGetAddressMode = NULL
 * cdef void *__cuTexRefGetFilterMode = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuTexRefGetMipmappedArray = NULL;

  /* "cuda/_cuda/ccuda.pyx":390
 * cdef void *__cuTexRefGetArray = NULL
 * cdef void *__cuTexRefGetMipmappedArray = NULL
 * cdef void *__cuTexRefGetAddressMode = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuTexRefGetFilterMode = NULL
 * cdef void *__cuTexRefGetFormat = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuTexRefGetAddressMode = NULL;

  /* "cuda/_cuda/ccuda.pyx":391
 * cdef void *__cuTexRefGetMipmappedArray = NULL
 * cdef void *__cuTexRefGetAddressMode = NULL
 * cdef void *__cuTexRefGetFilterMode = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuTexRefGetFormat = NULL
 * cdef void *__cuTexRefGetMipmapFilterMode = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuTexRefGetFilterMode = NULL;

  /* "cuda/_cuda/ccuda.pyx":392
 * cdef void *__cuTexRefGetAddressMode = NULL
 * cdef void *__cuTexRefGetFilterMode = NULL
 * cdef void *__cuTexRefGetFormat = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuTexRefGetMipmapFilterMode = NULL
 * cdef void *__cuTexRefGetMipmapLevelBias = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuTexRefGetFormat = NULL;

  /* "cuda/_cuda/ccuda.pyx":393
 * cdef void *__cuTexRefGetFilterMode = NULL
 * cdef void *__cuTexRefGetFormat = NULL
 * cdef void *__cuTexRefGetMipmapFilterMode = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuTexRefGetMipmapLevelBias = NULL
 * cdef void *__cuTexRefGetMipmapLevelClamp = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuTexRefGetMipmapFilterMode = NULL;

  /* "cuda/_cuda/ccuda.pyx":394
 * cdef void *__cuTexRefGetFormat = NULL
 * cdef void *__cuTexRefGetMipmapFilterMode = NULL
 * cdef void *__cuTexRefGetMipmapLevelBias = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuTexRefGetMipmapLevelClamp = NULL
 * cdef void *__cuTexRefGetMaxAnisotropy = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuTexRefGetMipmapLevelBias = NULL;

  /* "cuda/_cuda/ccuda.pyx":395
 * cdef void *__cuTexRefGetMipmapFilterMode = NULL
 * cdef void *__cuTexRefGetMipmapLevelBias = NULL
 * cdef void *__cuTexRefGetMipmapLevelClamp = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuTexRefGetMaxAnisotropy = NULL
 * cdef void *__cuTexRefGetBorderColor = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuTexRefGetMipmapLevelClamp = NULL;

  /* "cuda/_cuda/ccuda.pyx":396
 * cdef void *__cuTexRefGetMipmapLevelBias = NULL
 * cdef void *__cuTexRefGetMipmapLevelClamp = NULL
 * cdef void *__cuTexRefGetMaxAnisotropy = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuTexRefGetBorderColor = NULL
 * cdef void *__cuTexRefGetFlags = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuTexRefGetMaxAnisotropy = NULL;

  /* "cuda/_cuda/ccuda.pyx":397
 * cdef void *__cuTexRefGetMipmapLevelClamp = NULL
 * cdef void *__cuTexRefGetMaxAnisotropy = NULL
 * cdef void *__cuTexRefGetBorderColor = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuTexRefGetFlags = NULL
 * cdef void *__cuTexRefCreate = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuTexRefGetBorderColor = NULL;

  /* "cuda/_cuda/ccuda.pyx":398
 * cdef void *__cuTexRefGetMaxAnisotropy = NULL
 * cdef void *__cuTexRefGetBorderColor = NULL
 * cdef void *__cuTexRefGetFlags = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuTexRefCreate = NULL
 * cdef void *__cuTexRefDestroy = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuTexRefGetFlags = NULL;

  /* "cuda/_cuda/ccuda.pyx":399
 * cdef void *__cuTexRefGetBorderColor = NULL
 * cdef void *__cuTexRefGetFlags = NULL
 * cdef void *__cuTexRefCreate = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuTexRefDestroy = NULL
 * cdef void *__cuSurfRefSetArray = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuTexRefCreate = NULL;

  /* "cuda/_cuda/ccuda.pyx":400
 * cdef void *__cuTexRefGetFlags = NULL
 * cdef void *__cuTexRefCreate = NULL
 * cdef void *__cuTexRefDestroy = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuSurfRefSetArray = NULL
 * cdef void *__cuSurfRefGetArray = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuTexRefDestroy = NULL;

  /* "cuda/_cuda/ccuda.pyx":401
 * cdef void *__cuTexRefCreate = NULL
 * cdef void *__cuTexRefDestroy = NULL
 * cdef void *__cuSurfRefSetArray = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuSurfRefGetArray = NULL
 * cdef void *__cuTexObjectCreate = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuSurfRefSetArray = NULL;

  /* "cuda/_cuda/ccuda.pyx":402
 * cdef void *__cuTexRefDestroy = NULL
 * cdef void *__cuSurfRefSetArray = NULL
 * cdef void *__cuSurfRefGetArray = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuTexObjectCreate = NULL
 * cdef void *__cuTexObjectDestroy = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuSurfRefGetArray = NULL;

  /* "cuda/_cuda/ccuda.pyx":403
 * cdef void *__cuSurfRefSetArray = NULL
 * cdef void *__cuSurfRefGetArray = NULL
 * cdef void *__cuTexObjectCreate = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuTexObjectDestroy = NULL
 * cdef void *__cuTexObjectGetResourceDesc = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuTexObjectCreate = NULL;

  /* "cuda/_cuda/ccuda.pyx":404
 * cdef void *__cuSurfRefGetArray = NULL
 * cdef void *__cuTexObjectCreate = NULL
 * cdef void *__cuTexObjectDestroy = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuTexObjectGetResourceDesc = NULL
 * cdef void *__cuTexObjectGetTextureDesc = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuTexObjectDestroy = NULL;

  /* "cuda/_cuda/ccuda.pyx":405
 * cdef void *__cuTexObjectCreate = NULL
 * cdef void *__cuTexObjectDestroy = NULL
 * cdef void *__cuTexObjectGetResourceDesc = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuTexObjectGetTextureDesc = NULL
 * cdef void *__cuTexObjectGetResourceViewDesc = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuTexObjectGetResourceDesc = NULL;

  /* "cuda/_cuda/ccuda.pyx":406
 * cdef void *__cuTexObjectDestroy = NULL
 * cdef void *__cuTexObjectGetResourceDesc = NULL
 * cdef void *__cuTexObjectGetTextureDesc = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuTexObjectGetResourceViewDesc = NULL
 * cdef void *__cuSurfObjectCreate = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuTexObjectGetTextureDesc = NULL;

  /* "cuda/_cuda/ccuda.pyx":407
 * cdef void *__cuTexObjectGetResourceDesc = NULL
 * cdef void *__cuTexObjectGetTextureDesc = NULL
 * cdef void *__cuTexObjectGetResourceViewDesc = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuSurfObjectCreate = NULL
 * cdef void *__cuSurfObjectDestroy = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuTexObjectGetResourceViewDesc = NULL;

  /* "cuda/_cuda/ccuda.pyx":408
 * cdef void *__cuTexObjectGetTextureDesc = NULL
 * cdef void *__cuTexObjectGetResourceViewDesc = NULL
 * cdef void *__cuSurfObjectCreate = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuSurfObjectDestroy = NULL
 * cdef void *__cuSurfObjectGetResourceDesc = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuSurfObjectCreate = NULL;

  /* "cuda/_cuda/ccuda.pyx":409
 * cdef void *__cuTexObjectGetResourceViewDesc = NULL
 * cdef void *__cuSurfObjectCreate = NULL
 * cdef void *__cuSurfObjectDestroy = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuSurfObjectGetResourceDesc = NULL
 * cdef void *__cuTensorMapEncodeTiled = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuSurfObjectDestroy = NULL;

  /* "cuda/_cuda/ccuda.pyx":410
 * cdef void *__cuSurfObjectCreate = NULL
 * cdef void *__cuSurfObjectDestroy = NULL
 * cdef void *__cuSurfObjectGetResourceDesc = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuTensorMapEncodeTiled = NULL
 * cdef void *__cuTensorMapEncodeIm2col = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuSurfObjectGetResourceDesc = NULL;

  /* "cuda/_cuda/ccuda.pyx":411
 * cdef void *__cuSurfObjectDestroy = NULL
 * cdef void *__cuSurfObjectGetResourceDesc = NULL
 * cdef void *__cuTensorMapEncodeTiled = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuTensorMapEncodeIm2col = NULL
 * cdef void *__cuTensorMapReplaceAddress = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuTensorMapEncodeTiled = NULL;

  /* "cuda/_cuda/ccuda.pyx":412
 * cdef void *__cuSurfObjectGetResourceDesc = NULL
 * cdef void *__cuTensorMapEncodeTiled = NULL
 * cdef void *__cuTensorMapEncodeIm2col = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuTensorMapReplaceAddress = NULL
 * cdef void *__cuDeviceCanAccessPeer = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuTensorMapEncodeIm2col = NULL;

  /* "cuda/_cuda/ccuda.pyx":413
 * cdef void *__cuTensorMapEncodeTiled = NULL
 * cdef void *__cuTensorMapEncodeIm2col = NULL
 * cdef void *__cuTensorMapReplaceAddress = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuDeviceCanAccessPeer = NULL
 * cdef void *__cuCtxEnablePeerAccess = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuTensorMapReplaceAddress = NULL;

  /* "cuda/_cuda/ccuda.pyx":414
 * cdef void *__cuTensorMapEncodeIm2col = NULL
 * cdef void *__cuTensorMapReplaceAddress = NULL
 * cdef void *__cuDeviceCanAccessPeer = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuCtxEnablePeerAccess = NULL
 * cdef void *__cuCtxDisablePeerAccess = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuDeviceCanAccessPeer = NULL;

  /* "cuda/_cuda/ccuda.pyx":415
 * cdef void *__cuTensorMapReplaceAddress = NULL
 * cdef void *__cuDeviceCanAccessPeer = NULL
 * cdef void *__cuCtxEnablePeerAccess = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuCtxDisablePeerAccess = NULL
 * cdef void *__cuDeviceGetP2PAttribute = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuCtxEnablePeerAccess = NULL;

  /* "cuda/_cuda/ccuda.pyx":416
 * cdef void *__cuDeviceCanAccessPeer = NULL
 * cdef void *__cuCtxEnablePeerAccess = NULL
 * cdef void *__cuCtxDisablePeerAccess = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuDeviceGetP2PAttribute = NULL
 * cdef void *__cuGraphicsUnregisterResource = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuCtxDisablePeerAccess = NULL;

  /* "cuda/_cuda/ccuda.pyx":417
 * cdef void *__cuCtxEnablePeerAccess = NULL
 * cdef void *__cuCtxDisablePeerAccess = NULL
 * cdef void *__cuDeviceGetP2PAttribute = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuGraphicsUnregisterResource = NULL
 * cdef void *__cuGraphicsSubResourceGetMappedArray = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuDeviceGetP2PAttribute = NULL;

  /* "cuda/_cuda/ccuda.pyx":418
 * cdef void *__cuCtxDisablePeerAccess = NULL
 * cdef void *__cuDeviceGetP2PAttribute = NULL
 * cdef void *__cuGraphicsUnregisterResource = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuGraphicsSubResourceGetMappedArray = NULL
 * cdef void *__cuGraphicsResourceGetMappedMipmappedArray = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuGraphicsUnregisterResource = NULL;

  /* "cuda/_cuda/ccuda.pyx":419
 * cdef void *__cuDeviceGetP2PAttribute = NULL
 * cdef void *__cuGraphicsUnregisterResource = NULL
 * cdef void *__cuGraphicsSubResourceGetMappedArray = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuGraphicsResourceGetMappedMipmappedArray = NULL
 * cdef void *__cuGraphicsResourceGetMappedPointer_v2 = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuGraphicsSubResourceGetMappedArray = NULL;

  /* "cuda/_cuda/ccuda.pyx":420
 * cdef void *__cuGraphicsUnregisterResource = NULL
 * cdef void *__cuGraphicsSubResourceGetMappedArray = NULL
 * cdef void *__cuGraphicsResourceGetMappedMipmappedArray = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuGraphicsResourceGetMappedPointer_v2 = NULL
 * cdef void *__cuGraphicsResourceSetMapFlags_v2 = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuGraphicsResourceGetMappedMipmappedArray = NULL;

  /* "cuda/_cuda/ccuda.pyx":421
 * cdef void *__cuGraphicsSubResourceGetMappedArray = NULL
 * cdef void *__cuGraphicsResourceGetMappedMipmappedArray = NULL
 * cdef void *__cuGraphicsResourceGetMappedPointer_v2 = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuGraphicsResourceSetMapFlags_v2 = NULL
 * cdef void *__cuGraphicsMapResources = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuGraphicsResourceGetMappedPointer_v2 = NULL;

  /* "cuda/_cuda/ccuda.pyx":422
 * cdef void *__cuGraphicsResourceGetMappedMipmappedArray = NULL
 * cdef void *__cuGraphicsResourceGetMappedPointer_v2 = NULL
 * cdef void *__cuGraphicsResourceSetMapFlags_v2 = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuGraphicsMapResources = NULL
 * cdef void *__cuGraphicsUnmapResources = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuGraphicsResourceSetMapFlags_v2 = NULL;

  /* "cuda/_cuda/ccuda.pyx":423
 * cdef void *__cuGraphicsResourceGetMappedPointer_v2 = NULL
 * cdef void *__cuGraphicsResourceSetMapFlags_v2 = NULL
 * cdef void *__cuGraphicsMapResources = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuGraphicsUnmapResources = NULL
 * cdef void *__cuGetProcAddress_v2 = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuGraphicsMapResources = NULL;

  /* "cuda/_cuda/ccuda.pyx":424
 * cdef void *__cuGraphicsResourceSetMapFlags_v2 = NULL
 * cdef void *__cuGraphicsMapResources = NULL
 * cdef void *__cuGraphicsUnmapResources = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuGetProcAddress_v2 = NULL
 * cdef void *__cuCoredumpGetAttribute = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuGraphicsUnmapResources = NULL;

  /* "cuda/_cuda/ccuda.pyx":425
 * cdef void *__cuGraphicsMapResources = NULL
 * cdef void *__cuGraphicsUnmapResources = NULL
 * cdef void *__cuGetProcAddress_v2 = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuCoredumpGetAttribute = NULL
 * cdef void *__cuCoredumpGetAttributeGlobal = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuGetProcAddress_v2 = NULL;

  /* "cuda/_cuda/ccuda.pyx":426
 * cdef void *__cuGraphicsUnmapResources = NULL
 * cdef void *__cuGetProcAddress_v2 = NULL
 * cdef void *__cuCoredumpGetAttribute = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuCoredumpGetAttributeGlobal = NULL
 * cdef void *__cuCoredumpSetAttribute = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuCoredumpGetAttribute = NULL;

  /* "cuda/_cuda/ccuda.pyx":427
 * cdef void *__cuGetProcAddress_v2 = NULL
 * cdef void *__cuCoredumpGetAttribute = NULL
 * cdef void *__cuCoredumpGetAttributeGlobal = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuCoredumpSetAttribute = NULL
 * cdef void *__cuCoredumpSetAttributeGlobal = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuCoredumpGetAttributeGlobal = NULL;

  /* "cuda/_cuda/ccuda.pyx":428
 * cdef void *__cuCoredumpGetAttribute = NULL
 * cdef void *__cuCoredumpGetAttributeGlobal = NULL
 * cdef void *__cuCoredumpSetAttribute = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuCoredumpSetAttributeGlobal = NULL
 * cdef void *__cuGetExportTable = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuCoredumpSetAttribute = NULL;

  /* "cuda/_cuda/ccuda.pyx":429
 * cdef void *__cuCoredumpGetAttributeGlobal = NULL
 * cdef void *__cuCoredumpSetAttribute = NULL
 * cdef void *__cuCoredumpSetAttributeGlobal = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuGetExportTable = NULL
 * cdef void *__cuGreenCtxCreate = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuCoredumpSetAttributeGlobal = NULL;

  /* "cuda/_cuda/ccuda.pyx":430
 * cdef void *__cuCoredumpSetAttribute = NULL
 * cdef void *__cuCoredumpSetAttributeGlobal = NULL
 * cdef void *__cuGetExportTable = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuGreenCtxCreate = NULL
 * cdef void *__cuGreenCtxDestroy = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuGetExportTable = NULL;

  /* "cuda/_cuda/ccuda.pyx":431
 * cdef void *__cuCoredumpSetAttributeGlobal = NULL
 * cdef void *__cuGetExportTable = NULL
 * cdef void *__cuGreenCtxCreate = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuGreenCtxDestroy = NULL
 * cdef void *__cuCtxFromGreenCtx = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuGreenCtxCreate = NULL;

  /* "cuda/_cuda/ccuda.pyx":432
 * cdef void *__cuGetExportTable = NULL
 * cdef void *__cuGreenCtxCreate = NULL
 * cdef void *__cuGreenCtxDestroy = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuCtxFromGreenCtx = NULL
 * cdef void *__cuDeviceGetDevResource = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuGreenCtxDestroy = NULL;

  /* "cuda/_cuda/ccuda.pyx":433
 * cdef void *__cuGreenCtxCreate = NULL
 * cdef void *__cuGreenCtxDestroy = NULL
 * cdef void *__cuCtxFromGreenCtx = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuDeviceGetDevResource = NULL
 * cdef void *__cuCtxGetDevResource = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuCtxFromGreenCtx = NULL;

  /* "cuda/_cuda/ccuda.pyx":434
 * cdef void *__cuGreenCtxDestroy = NULL
 * cdef void *__cuCtxFromGreenCtx = NULL
 * cdef void *__cuDeviceGetDevResource = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuCtxGetDevResource = NULL
 * cdef void *__cuGreenCtxGetDevResource = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuDeviceGetDevResource = NULL;

  /* "cuda/_cuda/ccuda.pyx":435
 * cdef void *__cuCtxFromGreenCtx = NULL
 * cdef void *__cuDeviceGetDevResource = NULL
 * cdef void *__cuCtxGetDevResource = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuGreenCtxGetDevResource = NULL
 * cdef void *__cuDevSmResourceSplitByCount = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuCtxGetDevResource = NULL;

  /* "cuda/_cuda/ccuda.pyx":436
 * cdef void *__cuDeviceGetDevResource = NULL
 * cdef void *__cuCtxGetDevResource = NULL
 * cdef void *__cuGreenCtxGetDevResource = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuDevSmResourceSplitByCount = NULL
 * cdef void *__cuDevResourceGenerateDesc = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuGreenCtxGetDevResource = NULL;

  /* "cuda/_cuda/ccuda.pyx":437
 * cdef void *__cuCtxGetDevResource = NULL
 * cdef void *__cuGreenCtxGetDevResource = NULL
 * cdef void *__cuDevSmResourceSplitByCount = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuDevResourceGenerateDesc = NULL
 * cdef void *__cuGreenCtxRecordEvent = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuDevSmResourceSplitByCount = NULL;

  /* "cuda/_cuda/ccuda.pyx":438
 * cdef void *__cuGreenCtxGetDevResource = NULL
 * cdef void *__cuDevSmResourceSplitByCount = NULL
 * cdef void *__cuDevResourceGenerateDesc = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuGreenCtxRecordEvent = NULL
 * cdef void *__cuGreenCtxWaitEvent = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuDevResourceGenerateDesc = NULL;

  /* "cuda/_cuda/ccuda.pyx":439
 * cdef void *__cuDevSmResourceSplitByCount = NULL
 * cdef void *__cuDevResourceGenerateDesc = NULL
 * cdef void *__cuGreenCtxRecordEvent = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuGreenCtxWaitEvent = NULL
 * cdef void *__cuStreamGetGreenCtx = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuGreenCtxRecordEvent = NULL;

  /* "cuda/_cuda/ccuda.pyx":440
 * cdef void *__cuDevResourceGenerateDesc = NULL
 * cdef void *__cuGreenCtxRecordEvent = NULL
 * cdef void *__cuGreenCtxWaitEvent = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuStreamGetGreenCtx = NULL
 * cdef void *__cuProfilerStart = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuGreenCtxWaitEvent = NULL;

  /* "cuda/_cuda/ccuda.pyx":441
 * cdef void *__cuGreenCtxRecordEvent = NULL
 * cdef void *__cuGreenCtxWaitEvent = NULL
 * cdef void *__cuStreamGetGreenCtx = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuProfilerStart = NULL
 * cdef void *__cuProfilerStop = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuStreamGetGreenCtx = NULL;

  /* "cuda/_cuda/ccuda.pyx":442
 * cdef void *__cuGreenCtxWaitEvent = NULL
 * cdef void *__cuStreamGetGreenCtx = NULL
 * cdef void *__cuProfilerStart = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuProfilerStop = NULL
 * cdef void *__cuGraphicsEGLRegisterImage = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuProfilerStart = NULL;

  /* "cuda/_cuda/ccuda.pyx":443
 * cdef void *__cuStreamGetGreenCtx = NULL
 * cdef void *__cuProfilerStart = NULL
 * cdef void *__cuProfilerStop = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuGraphicsEGLRegisterImage = NULL
 * cdef void *__cuEGLStreamConsumerConnect = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuProfilerStop = NULL;

  /* "cuda/_cuda/ccuda.pyx":444
 * cdef void *__cuProfilerStart = NULL
 * cdef void *__cuProfilerStop = NULL
 * cdef void *__cuGraphicsEGLRegisterImage = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuEGLStreamConsumerConnect = NULL
 * cdef void *__cuEGLStreamConsumerConnectWithFlags = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuGraphicsEGLRegisterImage = NULL;

  /* "cuda/_cuda/ccuda.pyx":445
 * cdef void *__cuProfilerStop = NULL
 * cdef void *__cuGraphicsEGLRegisterImage = NULL
 * cdef void *__cuEGLStreamConsumerConnect = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuEGLStreamConsumerConnectWithFlags = NULL
 * cdef void *__cuEGLStreamConsumerDisconnect = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuEGLStreamConsumerConnect = NULL;

  /* "cuda/_cuda/ccuda.pyx":446
 * cdef void *__cuGraphicsEGLRegisterImage = NULL
 * cdef void *__cuEGLStreamConsumerConnect = NULL
 * cdef void *__cuEGLStreamConsumerConnectWithFlags = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuEGLStreamConsumerDisconnect = NULL
 * cdef void *__cuEGLStreamConsumerAcquireFrame = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuEGLStreamConsumerConnectWithFlags = NULL;

  /* "cuda/_cuda/ccuda.pyx":447
 * cdef void *__cuEGLStreamConsumerConnect = NULL
 * cdef void *__cuEGLStreamConsumerConnectWithFlags = NULL
 * cdef void *__cuEGLStreamConsumerDisconnect = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuEGLStreamConsumerAcquireFrame = NULL
 * cdef void *__cuEGLStreamConsumerReleaseFrame = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuEGLStreamConsumerDisconnect = NULL;

  /* "cuda/_cuda/ccuda.pyx":448
 * cdef void *__cuEGLStreamConsumerConnectWithFlags = NULL
 * cdef void *__cuEGLStreamConsumerDisconnect = NULL
 * cdef void *__cuEGLStreamConsumerAcquireFrame = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuEGLStreamConsumerReleaseFrame = NULL
 * cdef void *__cuEGLStreamProducerConnect = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuEGLStreamConsumerAcquireFrame = NULL;

  /* "cuda/_cuda/ccuda.pyx":449
 * cdef void *__cuEGLStreamConsumerDisconnect = NULL
 * cdef void *__cuEGLStreamConsumerAcquireFrame = NULL
 * cdef void *__cuEGLStreamConsumerReleaseFrame = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuEGLStreamProducerConnect = NULL
 * cdef void *__cuEGLStreamProducerDisconnect = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuEGLStreamConsumerReleaseFrame = NULL;

  /* "cuda/_cuda/ccuda.pyx":450
 * cdef void *__cuEGLStreamConsumerAcquireFrame = NULL
 * cdef void *__cuEGLStreamConsumerReleaseFrame = NULL
 * cdef void *__cuEGLStreamProducerConnect = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuEGLStreamProducerDisconnect = NULL
 * cdef void *__cuEGLStreamProducerPresentFrame = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuEGLStreamProducerConnect = NULL;

  /* "cuda/_cuda/ccuda.pyx":451
 * cdef void *__cuEGLStreamConsumerReleaseFrame = NULL
 * cdef void *__cuEGLStreamProducerConnect = NULL
 * cdef void *__cuEGLStreamProducerDisconnect = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuEGLStreamProducerPresentFrame = NULL
 * cdef void *__cuEGLStreamProducerReturnFrame = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuEGLStreamProducerDisconnect = NULL;

  /* "cuda/_cuda/ccuda.pyx":452
 * cdef void *__cuEGLStreamProducerConnect = NULL
 * cdef void *__cuEGLStreamProducerDisconnect = NULL
 * cdef void *__cuEGLStreamProducerPresentFrame = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuEGLStreamProducerReturnFrame = NULL
 * cdef void *__cuGraphicsResourceGetMappedEglFrame = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuEGLStreamProducerPresentFrame = NULL;

  /* "cuda/_cuda/ccuda.pyx":453
 * cdef void *__cuEGLStreamProducerDisconnect = NULL
 * cdef void *__cuEGLStreamProducerPresentFrame = NULL
 * cdef void *__cuEGLStreamProducerReturnFrame = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuGraphicsResourceGetMappedEglFrame = NULL
 * cdef void *__cuEventCreateFromEGLSync = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuEGLStreamProducerReturnFrame = NULL;

  /* "cuda/_cuda/ccuda.pyx":454
 * cdef void *__cuEGLStreamProducerPresentFrame = NULL
 * cdef void *__cuEGLStreamProducerReturnFrame = NULL
 * cdef void *__cuGraphicsResourceGetMappedEglFrame = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuEventCreateFromEGLSync = NULL
 * cdef void *__cuGraphicsGLRegisterBuffer = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuGraphicsResourceGetMappedEglFrame = NULL;

  /* "cuda/_cuda/ccuda.pyx":455
 * cdef void *__cuEGLStreamProducerReturnFrame = NULL
 * cdef void *__cuGraphicsResourceGetMappedEglFrame = NULL
 * cdef void *__cuEventCreateFromEGLSync = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuGraphicsGLRegisterBuffer = NULL
 * cdef void *__cuGraphicsGLRegisterImage = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuEventCreateFromEGLSync = NULL;

  /* "cuda/_cuda/ccuda.pyx":456
 * cdef void *__cuGraphicsResourceGetMappedEglFrame = NULL
 * cdef void *__cuEventCreateFromEGLSync = NULL
 * cdef void *__cuGraphicsGLRegisterBuffer = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuGraphicsGLRegisterImage = NULL
 * cdef void *__cuGLGetDevices_v2 = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuGraphicsGLRegisterBuffer = NULL;

  /* "cuda/_cuda/ccuda.pyx":457
 * cdef void *__cuEventCreateFromEGLSync = NULL
 * cdef void *__cuGraphicsGLRegisterBuffer = NULL
 * cdef void *__cuGraphicsGLRegisterImage = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuGLGetDevices_v2 = NULL
 * cdef void *__cuVDPAUGetDevice = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuGraphicsGLRegisterImage = NULL;

  /* "cuda/_cuda/ccuda.pyx":458
 * cdef void *__cuGraphicsGLRegisterBuffer = NULL
 * cdef void *__cuGraphicsGLRegisterImage = NULL
 * cdef void *__cuGLGetDevices_v2 = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuVDPAUGetDevice = NULL
 * cdef void *__cuVDPAUCtxCreate_v2 = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuGLGetDevices_v2 = NULL;

  /* "cuda/_cuda/ccuda.pyx":459
 * cdef void *__cuGraphicsGLRegisterImage = NULL
 * cdef void *__cuGLGetDevices_v2 = NULL
 * cdef void *__cuVDPAUGetDevice = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuVDPAUCtxCreate_v2 = NULL
 * cdef void *__cuGraphicsVDPAURegisterVideoSurface = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuVDPAUGetDevice = NULL;

  /* "cuda/_cuda/ccuda.pyx":460
 * cdef void *__cuGLGetDevices_v2 = NULL
 * cdef void *__cuVDPAUGetDevice = NULL
 * cdef void *__cuVDPAUCtxCreate_v2 = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuGraphicsVDPAURegisterVideoSurface = NULL
 * cdef void *__cuGraphicsVDPAURegisterOutputSurface = NULL
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuVDPAUCtxCreate_v2 = NULL;

  /* "cuda/_cuda/ccuda.pyx":461
 * cdef void *__cuVDPAUGetDevice = NULL
 * cdef void *__cuVDPAUCtxCreate_v2 = NULL
 * cdef void *__cuGraphicsVDPAURegisterVideoSurface = NULL             # <<<<<<<<<<<<<<
 * cdef void *__cuGraphicsVDPAURegisterOutputSurface = NULL
 * 
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuGraphicsVDPAURegisterVideoSurface = NULL;

  /* "cuda/_cuda/ccuda.pyx":462
 * cdef void *__cuVDPAUCtxCreate_v2 = NULL
 * cdef void *__cuGraphicsVDPAURegisterVideoSurface = NULL
 * cdef void *__cuGraphicsVDPAURegisterOutputSurface = NULL             # <<<<<<<<<<<<<<
 * 
 * cdef int cuPythonInit() except -1 nogil:
 */
  __pyx_v_4cuda_5_cuda_5ccuda___cuGraphicsVDPAURegisterOutputSurface = NULL;

  /* "cuda/_cuda/ccuda.pyx":1
 * # Copyright 2021-2024 NVIDIA Corporation.  All rights reserved.             # <<<<<<<<<<<<<<
 * #
 * # Please refer to the NVIDIA end user license agreement (EULA) associated
 */
  __pyx_t_2 = __Pyx_PyDict_NewPresized(0); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  if (PyDict_SetItem(__pyx_d, __pyx_n_s_test, __pyx_t_2) < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __Pyx_TraceReturn(Py_None, 0);

  /*--- Wrapped vars code ---*/

  goto __pyx_L0;
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_2);
  if (__pyx_m) {
    if (__pyx_d && stringtab_initialized) {
      __Pyx_AddTraceback("init cuda._cuda.ccuda", __pyx_clineno, __pyx_lineno, __pyx_filename);
    }
    #if !CYTHON_USE_MODULE_STATE
    Py_CLEAR(__pyx_m);
    #else
    Py_DECREF(__pyx_m);
    if (pystate_addmodule_run) {
      PyObject *tp, *value, *tb;
      PyErr_Fetch(&tp, &value, &tb);
      PyState_RemoveModule(&__pyx_moduledef);
      PyErr_Restore(tp, value, tb);
    }
    #endif
  } else if (!PyErr_Occurred()) {
    PyErr_SetString(PyExc_ImportError, "init cuda._cuda.ccuda");
  }
  __pyx_L0:;
  __Pyx_RefNannyFinishContext();
  #if CYTHON_PEP489_MULTI_PHASE_INIT
  return (__pyx_m != NULL) ? 0 : -1;
  #elif PY_MAJOR_VERSION >= 3
  return __pyx_m;
  #else
  return;
  #endif
}
/* #### Code section: cleanup_globals ### */
/* #### Code section: cleanup_module ### */
/* #### Code section: main_method ### */
/* #### Code section: utility_code_pragmas ### */
#ifdef _MSC_VER
#pragma warning( push )
/* Warning 4127: conditional expression is constant
 * Cython uses constant conditional expressions to allow in inline functions to be optimized at
 * compile-time, so this warning is not useful
 */
#pragma warning( disable : 4127 )
#endif



/* #### Code section: utility_code_def ### */

/* --- Runtime support code --- */
/* Refnanny */
#if CYTHON_REFNANNY
static __Pyx_RefNannyAPIStruct *__Pyx_RefNannyImportAPI(const char *modname) {
    PyObject *m = NULL, *p = NULL;
    void *r = NULL;
    m = PyImport_ImportModule(modname);
    if (!m) goto end;
    p = PyObject_GetAttrString(m, "RefNannyAPI");
    if (!p) goto end;
    r = PyLong_AsVoidPtr(p);
end:
    Py_XDECREF(p);
    Py_XDECREF(m);
    return (__Pyx_RefNannyAPIStruct *)r;
}
#endif

/* PyErrExceptionMatches */
#if CYTHON_FAST_THREAD_STATE
static int __Pyx_PyErr_ExceptionMatchesTuple(PyObject *exc_type, PyObject *tuple) {
    Py_ssize_t i, n;
    n = PyTuple_GET_SIZE(tuple);
#if PY_MAJOR_VERSION >= 3
    for (i=0; i<n; i++) {
        if (exc_type == PyTuple_GET_ITEM(tuple, i)) return 1;
    }
#endif
    for (i=0; i<n; i++) {
        if (__Pyx_PyErr_GivenExceptionMatches(exc_type, PyTuple_GET_ITEM(tuple, i))) return 1;
    }
    return 0;
}
static CYTHON_INLINE int __Pyx_PyErr_ExceptionMatchesInState(PyThreadState* tstate, PyObject* err) {
    int result;
    PyObject *exc_type;
#if PY_VERSION_HEX >= 0x030C00A6
    PyObject *current_exception = tstate->current_exception;
    if (unlikely(!current_exception)) return 0;
    exc_type = (PyObject*) Py_TYPE(current_exception);
    if (exc_type == err) return 1;
#else
    exc_type = tstate->curexc_type;
    if (exc_type == err) return 1;
    if (unlikely(!exc_type)) return 0;
#endif
    #if CYTHON_AVOID_BORROWED_REFS
    Py_INCREF(exc_type);
    #endif
    if (unlikely(PyTuple_Check(err))) {
        result = __Pyx_PyErr_ExceptionMatchesTuple(exc_type, err);
    } else {
        result = __Pyx_PyErr_GivenExceptionMatches(exc_type, err);
    }
    #if CYTHON_AVOID_BORROWED_REFS
    Py_DECREF(exc_type);
    #endif
    return result;
}
#endif

/* PyErrFetchRestore */
#if CYTHON_FAST_THREAD_STATE
static CYTHON_INLINE void __Pyx_ErrRestoreInState(PyThreadState *tstate, PyObject *type, PyObject *value, PyObject *tb) {
#if PY_VERSION_HEX >= 0x030C00A6
    PyObject *tmp_value;
    assert(type == NULL || (value != NULL && type == (PyObject*) Py_TYPE(value)));
    if (value) {
        #if CYTHON_COMPILING_IN_CPYTHON
        if (unlikely(((PyBaseExceptionObject*) value)->traceback != tb))
        #endif
            PyException_SetTraceback(value, tb);
    }
    tmp_value = tstate->current_exception;
    tstate->current_exception = value;
    Py_XDECREF(tmp_value);
    Py_XDECREF(type);
    Py_XDECREF(tb);
#else
    PyObject *tmp_type, *tmp_value, *tmp_tb;
    tmp_type = tstate->curexc_type;
    tmp_value = tstate->curexc_value;
    tmp_tb = tstate->curexc_traceback;
    tstate->curexc_type = type;
    tstate->curexc_value = value;
    tstate->curexc_traceback = tb;
    Py_XDECREF(tmp_type);
    Py_XDECREF(tmp_value);
    Py_XDECREF(tmp_tb);
#endif
}
static CYTHON_INLINE void __Pyx_ErrFetchInState(PyThreadState *tstate, PyObject **type, PyObject **value, PyObject **tb) {
#if PY_VERSION_HEX >= 0x030C00A6
    PyObject* exc_value;
    exc_value = tstate->current_exception;
    tstate->current_exception = 0;
    *value = exc_value;
    *type = NULL;
    *tb = NULL;
    if (exc_value) {
        *type = (PyObject*) Py_TYPE(exc_value);
        Py_INCREF(*type);
        #if CYTHON_COMPILING_IN_CPYTHON
        *tb = ((PyBaseExceptionObject*) exc_value)->traceback;
        Py_XINCREF(*tb);
        #else
        *tb = PyException_GetTraceback(exc_value);
        #endif
    }
#else
    *type = tstate->curexc_type;
    *value = tstate->curexc_value;
    *tb = tstate->curexc_traceback;
    tstate->curexc_type = 0;
    tstate->curexc_value = 0;
    tstate->curexc_traceback = 0;
#endif
}
#endif

/* PyObjectGetAttrStr */
#if CYTHON_USE_TYPE_SLOTS
static CYTHON_INLINE PyObject* __Pyx_PyObject_GetAttrStr(PyObject* obj, PyObject* attr_name) {
    PyTypeObject* tp = Py_TYPE(obj);
    if (likely(tp->tp_getattro))
        return tp->tp_getattro(obj, attr_name);
#if PY_MAJOR_VERSION < 3
    if (likely(tp->tp_getattr))
        return tp->tp_getattr(obj, PyString_AS_STRING(attr_name));
#endif
    return PyObject_GetAttr(obj, attr_name);
}
#endif

/* PyObjectGetAttrStrNoError */
#if __PYX_LIMITED_VERSION_HEX < 0x030d00A1
static void __Pyx_PyObject_GetAttrStr_ClearAttributeError(void) {
    __Pyx_PyThreadState_declare
    __Pyx_PyThreadState_assign
    if (likely(__Pyx_PyErr_ExceptionMatches(PyExc_AttributeError)))
        __Pyx_PyErr_Clear();
}
#endif
static CYTHON_INLINE PyObject* __Pyx_PyObject_GetAttrStrNoError(PyObject* obj, PyObject* attr_name) {
    PyObject *result;
#if __PYX_LIMITED_VERSION_HEX >= 0x030d00A1
    (void) PyObject_GetOptionalAttr(obj, attr_name, &result);
    return result;
#else
#if CYTHON_COMPILING_IN_CPYTHON && CYTHON_USE_TYPE_SLOTS && PY_VERSION_HEX >= 0x030700B1
    PyTypeObject* tp = Py_TYPE(obj);
    if (likely(tp->tp_getattro == PyObject_GenericGetAttr)) {
        return _PyObject_GenericGetAttrWithDict(obj, attr_name, NULL, 1);
    }
#endif
    result = __Pyx_PyObject_GetAttrStr(obj, attr_name);
    if (unlikely(!result)) {
        __Pyx_PyObject_GetAttrStr_ClearAttributeError();
    }
    return result;
#endif
}

/* GetBuiltinName */
static PyObject *__Pyx_GetBuiltinName(PyObject *name) {
    PyObject* result = __Pyx_PyObject_GetAttrStrNoError(__pyx_b, name);
    if (unlikely(!result) && !PyErr_Occurred()) {
        PyErr_Format(PyExc_NameError,
#if PY_MAJOR_VERSION >= 3
            "name '%U' is not defined", name);
#else
            "name '%.200s' is not defined", PyString_AS_STRING(name));
#endif
    }
    return result;
}

/* Profile */
#if CYTHON_PROFILE
static int __Pyx_TraceSetupAndCall(PyCodeObject** code,
                                   PyFrameObject** frame,
                                   PyThreadState* tstate,
                                   const char *funcname,
                                   const char *srcfile,
                                   int firstlineno) {
    PyObject *type, *value, *traceback;
    int retval;
    if (*frame == NULL || !CYTHON_PROFILE_REUSE_FRAME) {
        if (*code == NULL) {
            *code = __Pyx_createFrameCodeObject(funcname, srcfile, firstlineno);
            if (*code == NULL) return 0;
        }
        *frame = PyFrame_New(
            tstate,                          /*PyThreadState *tstate*/
            *code,                           /*PyCodeObject *code*/
            __pyx_d,                  /*PyObject *globals*/
            0                                /*PyObject *locals*/
        );
        if (*frame == NULL) return 0;
        if (CYTHON_TRACE && (*frame)->f_trace == NULL) {
            Py_INCREF(Py_None);
            (*frame)->f_trace = Py_None;
        }
#if PY_VERSION_HEX < 0x030400B1
    } else {
        (*frame)->f_tstate = tstate;
#endif
    }
    __Pyx_PyFrame_SetLineNumber(*frame, firstlineno);
    retval = 1;
    __Pyx_EnterTracing(tstate);
    __Pyx_ErrFetchInState(tstate, &type, &value, &traceback);
    #if CYTHON_TRACE
    if (tstate->c_tracefunc)
        retval = tstate->c_tracefunc(tstate->c_traceobj, *frame, PyTrace_CALL, NULL) == 0;
    if (retval && tstate->c_profilefunc)
    #endif
        retval = tstate->c_profilefunc(tstate->c_profileobj, *frame, PyTrace_CALL, NULL) == 0;
    __Pyx_LeaveTracing(tstate);
    if (retval) {
        __Pyx_ErrRestoreInState(tstate, type, value, traceback);
        return __Pyx_IsTracing(tstate, 0, 0) && retval;
    } else {
        Py_XDECREF(type);
        Py_XDECREF(value);
        Py_XDECREF(traceback);
        return -1;
    }
}
static PyCodeObject *__Pyx_createFrameCodeObject(const char *funcname, const char *srcfile, int firstlineno) {
    PyCodeObject *py_code = 0;
#if PY_MAJOR_VERSION >= 3
    py_code = PyCode_NewEmpty(srcfile, funcname, firstlineno);
    if (likely(py_code)) {
        py_code->co_flags |= CO_OPTIMIZED | CO_NEWLOCALS;
    }
#else
    PyObject *py_srcfile = 0;
    PyObject *py_funcname = 0;
    py_funcname = PyString_FromString(funcname);
    if (unlikely(!py_funcname)) goto bad;
    py_srcfile = PyString_FromString(srcfile);
    if (unlikely(!py_srcfile)) goto bad;
    py_code = PyCode_New(
        0,
        0,
        0,
        CO_OPTIMIZED | CO_NEWLOCALS,
        __pyx_empty_bytes,     /*PyObject *code,*/
        __pyx_empty_tuple,     /*PyObject *consts,*/
        __pyx_empty_tuple,     /*PyObject *names,*/
        __pyx_empty_tuple,     /*PyObject *varnames,*/
        __pyx_empty_tuple,     /*PyObject *freevars,*/
        __pyx_empty_tuple,     /*PyObject *cellvars,*/
        py_srcfile,       /*PyObject *filename,*/
        py_funcname,      /*PyObject *name,*/
        firstlineno,
        __pyx_empty_bytes      /*PyObject *lnotab*/
    );
bad:
    Py_XDECREF(py_srcfile);
    Py_XDECREF(py_funcname);
#endif
    return py_code;
}
#endif

/* PyDictVersioning */
#if CYTHON_USE_DICT_VERSIONS && CYTHON_USE_TYPE_SLOTS
static CYTHON_INLINE PY_UINT64_T __Pyx_get_tp_dict_version(PyObject *obj) {
    PyObject *dict = Py_TYPE(obj)->tp_dict;
    return likely(dict) ? __PYX_GET_DICT_VERSION(dict) : 0;
}
static CYTHON_INLINE PY_UINT64_T __Pyx_get_object_dict_version(PyObject *obj) {
    PyObject **dictptr = NULL;
    Py_ssize_t offset = Py_TYPE(obj)->tp_dictoffset;
    if (offset) {
#if CYTHON_COMPILING_IN_CPYTHON
        dictptr = (likely(offset > 0)) ? (PyObject **) ((char *)obj + offset) : _PyObject_GetDictPtr(obj);
#else
        dictptr = _PyObject_GetDictPtr(obj);
#endif
    }
    return (dictptr && *dictptr) ? __PYX_GET_DICT_VERSION(*dictptr) : 0;
}
static CYTHON_INLINE int __Pyx_object_dict_version_matches(PyObject* obj, PY_UINT64_T tp_dict_version, PY_UINT64_T obj_dict_version) {
    PyObject *dict = Py_TYPE(obj)->tp_dict;
    if (unlikely(!dict) || unlikely(tp_dict_version != __PYX_GET_DICT_VERSION(dict)))
        return 0;
    return obj_dict_version == __Pyx_get_object_dict_version(obj);
}
#endif

/* GetModuleGlobalName */
#if CYTHON_USE_DICT_VERSIONS
static PyObject *__Pyx__GetModuleGlobalName(PyObject *name, PY_UINT64_T *dict_version, PyObject **dict_cached_value)
#else
static CYTHON_INLINE PyObject *__Pyx__GetModuleGlobalName(PyObject *name)
#endif
{
    PyObject *result;
#if !CYTHON_AVOID_BORROWED_REFS
#if CYTHON_COMPILING_IN_CPYTHON && PY_VERSION_HEX >= 0x030500A1 && PY_VERSION_HEX < 0x030d0000
    result = _PyDict_GetItem_KnownHash(__pyx_d, name, ((PyASCIIObject *) name)->hash);
    __PYX_UPDATE_DICT_CACHE(__pyx_d, result, *dict_cached_value, *dict_version)
    if (likely(result)) {
        return __Pyx_NewRef(result);
    } else if (unlikely(PyErr_Occurred())) {
        return NULL;
    }
#elif CYTHON_COMPILING_IN_LIMITED_API
    if (unlikely(!__pyx_m)) {
        return NULL;
    }
    result = PyObject_GetAttr(__pyx_m, name);
    if (likely(result)) {
        return result;
    }
#else
    result = PyDict_GetItem(__pyx_d, name);
    __PYX_UPDATE_DICT_CACHE(__pyx_d, result, *dict_cached_value, *dict_version)
    if (likely(result)) {
        return __Pyx_NewRef(result);
    }
#endif
#else
    result = PyObject_GetItem(__pyx_d, name);
    __PYX_UPDATE_DICT_CACHE(__pyx_d, result, *dict_cached_value, *dict_version)
    if (likely(result)) {
        return __Pyx_NewRef(result);
    }
    PyErr_Clear();
#endif
    return __Pyx_GetBuiltinName(name);
}

/* PyObjectCall */
#if CYTHON_COMPILING_IN_CPYTHON
static CYTHON_INLINE PyObject* __Pyx_PyObject_Call(PyObject *func, PyObject *arg, PyObject *kw) {
    PyObject *result;
    ternaryfunc call = Py_TYPE(func)->tp_call;
    if (unlikely(!call))
        return PyObject_Call(func, arg, kw);
    #if PY_MAJOR_VERSION < 3
    if (unlikely(Py_EnterRecursiveCall((char*)" while calling a Python object")))
        return NULL;
    #else
    if (unlikely(Py_EnterRecursiveCall(" while calling a Python object")))
        return NULL;
    #endif
    result = (*call)(func, arg, kw);
    Py_LeaveRecursiveCall();
    if (unlikely(!result) && unlikely(!PyErr_Occurred())) {
        PyErr_SetString(
            PyExc_SystemError,
            "NULL result without error in PyObject_Call");
    }
    return result;
}
#endif

/* decode_c_string */
static CYTHON_INLINE PyObject* __Pyx_decode_c_string(
         const char* cstring, Py_ssize_t start, Py_ssize_t stop,
         const char* encoding, const char* errors,
         PyObject* (*decode_func)(const char *s, Py_ssize_t size, const char *errors)) {
    Py_ssize_t length;
    if (unlikely((start < 0) | (stop < 0))) {
        size_t slen = strlen(cstring);
        if (unlikely(slen > (size_t) PY_SSIZE_T_MAX)) {
            PyErr_SetString(PyExc_OverflowError,
                            "c-string too long to convert to Python");
            return NULL;
        }
        length = (Py_ssize_t) slen;
        if (start < 0) {
            start += length;
            if (start < 0)
                start = 0;
        }
        if (stop < 0)
            stop += length;
    }
    if (unlikely(stop <= start))
        return __Pyx_NewRef(__pyx_empty_unicode);
    length = stop - start;
    cstring += start;
    if (decode_func) {
        return decode_func(cstring, length, errors);
    } else {
        return PyUnicode_Decode(cstring, length, encoding, errors);
    }
}

/* PyFunctionFastCall */
#if CYTHON_FAST_PYCALL && !CYTHON_VECTORCALL
static PyObject* __Pyx_PyFunction_FastCallNoKw(PyCodeObject *co, PyObject **args, Py_ssize_t na,
                                               PyObject *globals) {
    PyFrameObject *f;
    PyThreadState *tstate = __Pyx_PyThreadState_Current;
    PyObject **fastlocals;
    Py_ssize_t i;
    PyObject *result;
    assert(globals != NULL);
    /* XXX Perhaps we should create a specialized
       PyFrame_New() that doesn't take locals, but does
       take builtins without sanity checking them.
       */
    assert(tstate != NULL);
    f = PyFrame_New(tstate, co, globals, NULL);
    if (f == NULL) {
        return NULL;
    }
    fastlocals = __Pyx_PyFrame_GetLocalsplus(f);
    for (i = 0; i < na; i++) {
        Py_INCREF(*args);
        fastlocals[i] = *args++;
    }
    result = PyEval_EvalFrameEx(f,0);
    ++tstate->recursion_depth;
    Py_DECREF(f);
    --tstate->recursion_depth;
    return result;
}
static PyObject *__Pyx_PyFunction_FastCallDict(PyObject *func, PyObject **args, Py_ssize_t nargs, PyObject *kwargs) {
    PyCodeObject *co = (PyCodeObject *)PyFunction_GET_CODE(func);
    PyObject *globals = PyFunction_GET_GLOBALS(func);
    PyObject *argdefs = PyFunction_GET_DEFAULTS(func);
    PyObject *closure;
#if PY_MAJOR_VERSION >= 3
    PyObject *kwdefs;
#endif
    PyObject *kwtuple, **k;
    PyObject **d;
    Py_ssize_t nd;
    Py_ssize_t nk;
    PyObject *result;
    assert(kwargs == NULL || PyDict_Check(kwargs));
    nk = kwargs ? PyDict_Size(kwargs) : 0;
    #if PY_MAJOR_VERSION < 3
    if (unlikely(Py_EnterRecursiveCall((char*)" while calling a Python object"))) {
        return NULL;
    }
    #else
    if (unlikely(Py_EnterRecursiveCall(" while calling a Python object"))) {
        return NULL;
    }
    #endif
    if (
#if PY_MAJOR_VERSION >= 3
            co->co_kwonlyargcount == 0 &&
#endif
            likely(kwargs == NULL || nk == 0) &&
            co->co_flags == (CO_OPTIMIZED | CO_NEWLOCALS | CO_NOFREE)) {
        if (argdefs == NULL && co->co_argcount == nargs) {
            result = __Pyx_PyFunction_FastCallNoKw(co, args, nargs, globals);
            goto done;
        }
        else if (nargs == 0 && argdefs != NULL
                 && co->co_argcount == Py_SIZE(argdefs)) {
            /* function called with no arguments, but all parameters have
               a default value: use default values as arguments .*/
            args = &PyTuple_GET_ITEM(argdefs, 0);
            result =__Pyx_PyFunction_FastCallNoKw(co, args, Py_SIZE(argdefs), globals);
            goto done;
        }
    }
    if (kwargs != NULL) {
        Py_ssize_t pos, i;
        kwtuple = PyTuple_New(2 * nk);
        if (kwtuple == NULL) {
            result = NULL;
            goto done;
        }
        k = &PyTuple_GET_ITEM(kwtuple, 0);
        pos = i = 0;
        while (PyDict_Next(kwargs, &pos, &k[i], &k[i+1])) {
            Py_INCREF(k[i]);
            Py_INCREF(k[i+1]);
            i += 2;
        }
        nk = i / 2;
    }
    else {
        kwtuple = NULL;
        k = NULL;
    }
    closure = PyFunction_GET_CLOSURE(func);
#if PY_MAJOR_VERSION >= 3
    kwdefs = PyFunction_GET_KW_DEFAULTS(func);
#endif
    if (argdefs != NULL) {
        d = &PyTuple_GET_ITEM(argdefs, 0);
        nd = Py_SIZE(argdefs);
    }
    else {
        d = NULL;
        nd = 0;
    }
#if PY_MAJOR_VERSION >= 3
    result = PyEval_EvalCodeEx((PyObject*)co, globals, (PyObject *)NULL,
                               args, (int)nargs,
                               k, (int)nk,
                               d, (int)nd, kwdefs, closure);
#else
    result = PyEval_EvalCodeEx(co, globals, (PyObject *)NULL,
                               args, (int)nargs,
                               k, (int)nk,
                               d, (int)nd, closure);
#endif
    Py_XDECREF(kwtuple);
done:
    Py_LeaveRecursiveCall();
    return result;
}
#endif

/* PyObjectCallMethO */
#if CYTHON_COMPILING_IN_CPYTHON
static CYTHON_INLINE PyObject* __Pyx_PyObject_CallMethO(PyObject *func, PyObject *arg) {
    PyObject *self, *result;
    PyCFunction cfunc;
    cfunc = __Pyx_CyOrPyCFunction_GET_FUNCTION(func);
    self = __Pyx_CyOrPyCFunction_GET_SELF(func);
    #if PY_MAJOR_VERSION < 3
    if (unlikely(Py_EnterRecursiveCall((char*)" while calling a Python object")))
        return NULL;
    #else
    if (unlikely(Py_EnterRecursiveCall(" while calling a Python object")))
        return NULL;
    #endif
    result = cfunc(self, arg);
    Py_LeaveRecursiveCall();
    if (unlikely(!result) && unlikely(!PyErr_Occurred())) {
        PyErr_SetString(
            PyExc_SystemError,
            "NULL result without error in PyObject_Call");
    }
    return result;
}
#endif

/* PyObjectFastCall */
#if PY_VERSION_HEX < 0x03090000 || CYTHON_COMPILING_IN_LIMITED_API
static PyObject* __Pyx_PyObject_FastCall_fallback(PyObject *func, PyObject **args, size_t nargs, PyObject *kwargs) {
    PyObject *argstuple;
    PyObject *result = 0;
    size_t i;
    argstuple = PyTuple_New((Py_ssize_t)nargs);
    if (unlikely(!argstuple)) return NULL;
    for (i = 0; i < nargs; i++) {
        Py_INCREF(args[i]);
        if (__Pyx_PyTuple_SET_ITEM(argstuple, (Py_ssize_t)i, args[i]) < 0) goto bad;
    }
    result = __Pyx_PyObject_Call(func, argstuple, kwargs);
  bad:
    Py_DECREF(argstuple);
    return result;
}
#endif
static CYTHON_INLINE PyObject* __Pyx_PyObject_FastCallDict(PyObject *func, PyObject **args, size_t _nargs, PyObject *kwargs) {
    Py_ssize_t nargs = __Pyx_PyVectorcall_NARGS(_nargs);
#if CYTHON_COMPILING_IN_CPYTHON
    if (nargs == 0 && kwargs == NULL) {
        if (__Pyx_CyOrPyCFunction_Check(func) && likely( __Pyx_CyOrPyCFunction_GET_FLAGS(func) & METH_NOARGS))
            return __Pyx_PyObject_CallMethO(func, NULL);
    }
    else if (nargs == 1 && kwargs == NULL) {
        if (__Pyx_CyOrPyCFunction_Check(func) && likely( __Pyx_CyOrPyCFunction_GET_FLAGS(func) & METH_O))
            return __Pyx_PyObject_CallMethO(func, args[0]);
    }
#endif
    #if PY_VERSION_HEX < 0x030800B1
    #if CYTHON_FAST_PYCCALL
    if (PyCFunction_Check(func)) {
        if (kwargs) {
            return _PyCFunction_FastCallDict(func, args, nargs, kwargs);
        } else {
            return _PyCFunction_FastCallKeywords(func, args, nargs, NULL);
        }
    }
    #if PY_VERSION_HEX >= 0x030700A1
    if (!kwargs && __Pyx_IS_TYPE(func, &PyMethodDescr_Type)) {
        return _PyMethodDescr_FastCallKeywords(func, args, nargs, NULL);
    }
    #endif
    #endif
    #if CYTHON_FAST_PYCALL
    if (PyFunction_Check(func)) {
        return __Pyx_PyFunction_FastCallDict(func, args, nargs, kwargs);
    }
    #endif
    #endif
    if (kwargs == NULL) {
        #if CYTHON_VECTORCALL
        #if PY_VERSION_HEX < 0x03090000
        vectorcallfunc f = _PyVectorcall_Function(func);
        #else
        vectorcallfunc f = PyVectorcall_Function(func);
        #endif
        if (f) {
            return f(func, args, (size_t)nargs, NULL);
        }
        #elif defined(__Pyx_CyFunction_USED) && CYTHON_BACKPORT_VECTORCALL
        if (__Pyx_CyFunction_CheckExact(func)) {
            __pyx_vectorcallfunc f = __Pyx_CyFunction_func_vectorcall(func);
            if (f) return f(func, args, (size_t)nargs, NULL);
        }
        #endif
    }
    if (nargs == 0) {
        return __Pyx_PyObject_Call(func, __pyx_empty_tuple, kwargs);
    }
    #if PY_VERSION_HEX >= 0x03090000 && !CYTHON_COMPILING_IN_LIMITED_API
    return PyObject_VectorcallDict(func, args, (size_t)nargs, kwargs);
    #else
    return __Pyx_PyObject_FastCall_fallback(func, args, (size_t)nargs, kwargs);
    #endif
}

/* PyObjectCallOneArg */
static CYTHON_INLINE PyObject* __Pyx_PyObject_CallOneArg(PyObject *func, PyObject *arg) {
    PyObject *args[2] = {NULL, arg};
    return __Pyx_PyObject_FastCall(func, args+1, 1 | __Pyx_PY_VECTORCALL_ARGUMENTS_OFFSET);
}

/* RaiseException */
#if PY_MAJOR_VERSION < 3
static void __Pyx_Raise(PyObject *type, PyObject *value, PyObject *tb, PyObject *cause) {
    __Pyx_PyThreadState_declare
    CYTHON_UNUSED_VAR(cause);
    Py_XINCREF(type);
    if (!value || value == Py_None)
        value = NULL;
    else
        Py_INCREF(value);
    if (!tb || tb == Py_None)
        tb = NULL;
    else {
        Py_INCREF(tb);
        if (!PyTraceBack_Check(tb)) {
            PyErr_SetString(PyExc_TypeError,
                "raise: arg 3 must be a traceback or None");
            goto raise_error;
        }
    }
    if (PyType_Check(type)) {
#if CYTHON_COMPILING_IN_PYPY
        if (!value) {
            Py_INCREF(Py_None);
            value = Py_None;
        }
#endif
        PyErr_NormalizeException(&type, &value, &tb);
    } else {
        if (value) {
            PyErr_SetString(PyExc_TypeError,
                "instance exception may not have a separate value");
            goto raise_error;
        }
        value = type;
        type = (PyObject*) Py_TYPE(type);
        Py_INCREF(type);
        if (!PyType_IsSubtype((PyTypeObject *)type, (PyTypeObject *)PyExc_BaseException)) {
            PyErr_SetString(PyExc_TypeError,
                "raise: exception class must be a subclass of BaseException");
            goto raise_error;
        }
    }
    __Pyx_PyThreadState_assign
    __Pyx_ErrRestore(type, value, tb);
    return;
raise_error:
    Py_XDECREF(value);
    Py_XDECREF(type);
    Py_XDECREF(tb);
    return;
}
#else
static void __Pyx_Raise(PyObject *type, PyObject *value, PyObject *tb, PyObject *cause) {
    PyObject* owned_instance = NULL;
    if (tb == Py_None) {
        tb = 0;
    } else if (tb && !PyTraceBack_Check(tb)) {
        PyErr_SetString(PyExc_TypeError,
            "raise: arg 3 must be a traceback or None");
        goto bad;
    }
    if (value == Py_None)
        value = 0;
    if (PyExceptionInstance_Check(type)) {
        if (value) {
            PyErr_SetString(PyExc_TypeError,
                "instance exception may not have a separate value");
            goto bad;
        }
        value = type;
        type = (PyObject*) Py_TYPE(value);
    } else if (PyExceptionClass_Check(type)) {
        PyObject *instance_class = NULL;
        if (value && PyExceptionInstance_Check(value)) {
            instance_class = (PyObject*) Py_TYPE(value);
            if (instance_class != type) {
                int is_subclass = PyObject_IsSubclass(instance_class, type);
                if (!is_subclass) {
                    instance_class = NULL;
                } else if (unlikely(is_subclass == -1)) {
                    goto bad;
                } else {
                    type = instance_class;
                }
            }
        }
        if (!instance_class) {
            PyObject *args;
            if (!value)
                args = PyTuple_New(0);
            else if (PyTuple_Check(value)) {
                Py_INCREF(value);
                args = value;
            } else
                args = PyTuple_Pack(1, value);
            if (!args)
                goto bad;
            owned_instance = PyObject_Call(type, args, NULL);
            Py_DECREF(args);
            if (!owned_instance)
                goto bad;
            value = owned_instance;
            if (!PyExceptionInstance_Check(value)) {
                PyErr_Format(PyExc_TypeError,
                             "calling %R should have returned an instance of "
                             "BaseException, not %R",
                             type, Py_TYPE(value));
                goto bad;
            }
        }
    } else {
        PyErr_SetString(PyExc_TypeError,
            "raise: exception class must be a subclass of BaseException");
        goto bad;
    }
    if (cause) {
        PyObject *fixed_cause;
        if (cause == Py_None) {
            fixed_cause = NULL;
        } else if (PyExceptionClass_Check(cause)) {
            fixed_cause = PyObject_CallObject(cause, NULL);
            if (fixed_cause == NULL)
                goto bad;
        } else if (PyExceptionInstance_Check(cause)) {
            fixed_cause = cause;
            Py_INCREF(fixed_cause);
        } else {
            PyErr_SetString(PyExc_TypeError,
                            "exception causes must derive from "
                            "BaseException");
            goto bad;
        }
        PyException_SetCause(value, fixed_cause);
    }
    PyErr_SetObject(type, value);
    if (tb) {
      #if PY_VERSION_HEX >= 0x030C00A6
        PyException_SetTraceback(value, tb);
      #elif CYTHON_FAST_THREAD_STATE
        PyThreadState *tstate = __Pyx_PyThreadState_Current;
        PyObject* tmp_tb = tstate->curexc_traceback;
        if (tb != tmp_tb) {
            Py_INCREF(tb);
            tstate->curexc_traceback = tb;
            Py_XDECREF(tmp_tb);
        }
#else
        PyObject *tmp_type, *tmp_value, *tmp_tb;
        PyErr_Fetch(&tmp_type, &tmp_value, &tmp_tb);
        Py_INCREF(tb);
        PyErr_Restore(tmp_type, tmp_value, tb);
        Py_XDECREF(tmp_tb);
#endif
    }
bad:
    Py_XDECREF(owned_instance);
    return;
}
#endif

/* ErrOccurredWithGIL */
static CYTHON_INLINE int __Pyx_ErrOccurredWithGIL(void) {
  int err;
  #ifdef WITH_THREAD
  PyGILState_STATE _save = PyGILState_Ensure();
  #endif
  err = !!PyErr_Occurred();
  #ifdef WITH_THREAD
  PyGILState_Release(_save);
  #endif
  return err;
}

/* Import */
static PyObject *__Pyx_Import(PyObject *name, PyObject *from_list, int level) {
    PyObject *module = 0;
    PyObject *empty_dict = 0;
    PyObject *empty_list = 0;
    #if PY_MAJOR_VERSION < 3
    PyObject *py_import;
    py_import = __Pyx_PyObject_GetAttrStr(__pyx_b, __pyx_n_s_import);
    if (unlikely(!py_import))
        goto bad;
    if (!from_list) {
        empty_list = PyList_New(0);
        if (unlikely(!empty_list))
            goto bad;
        from_list = empty_list;
    }
    #endif
    empty_dict = PyDict_New();
    if (unlikely(!empty_dict))
        goto bad;
    {
        #if PY_MAJOR_VERSION >= 3
        if (level == -1) {
            if (strchr(__Pyx_MODULE_NAME, '.') != NULL) {
                module = PyImport_ImportModuleLevelObject(
                    name, __pyx_d, empty_dict, from_list, 1);
                if (unlikely(!module)) {
                    if (unlikely(!PyErr_ExceptionMatches(PyExc_ImportError)))
                        goto bad;
                    PyErr_Clear();
                }
            }
            level = 0;
        }
        #endif
        if (!module) {
            #if PY_MAJOR_VERSION < 3
            PyObject *py_level = PyInt_FromLong(level);
            if (unlikely(!py_level))
                goto bad;
            module = PyObject_CallFunctionObjArgs(py_import,
                name, __pyx_d, empty_dict, from_list, py_level, (PyObject *)NULL);
            Py_DECREF(py_level);
            #else
            module = PyImport_ImportModuleLevelObject(
                name, __pyx_d, empty_dict, from_list, level);
            #endif
        }
    }
bad:
    Py_XDECREF(empty_dict);
    Py_XDECREF(empty_list);
    #if PY_MAJOR_VERSION < 3
    Py_XDECREF(py_import);
    #endif
    return module;
}

/* ImportDottedModule */
#if PY_MAJOR_VERSION >= 3
static PyObject *__Pyx__ImportDottedModule_Error(PyObject *name, PyObject *parts_tuple, Py_ssize_t count) {
    PyObject *partial_name = NULL, *slice = NULL, *sep = NULL;
    if (unlikely(PyErr_Occurred())) {
        PyErr_Clear();
    }
    if (likely(PyTuple_GET_SIZE(parts_tuple) == count)) {
        partial_name = name;
    } else {
        slice = PySequence_GetSlice(parts_tuple, 0, count);
        if (unlikely(!slice))
            goto bad;
        sep = PyUnicode_FromStringAndSize(".", 1);
        if (unlikely(!sep))
            goto bad;
        partial_name = PyUnicode_Join(sep, slice);
    }
    PyErr_Format(
#if PY_MAJOR_VERSION < 3
        PyExc_ImportError,
        "No module named '%s'", PyString_AS_STRING(partial_name));
#else
#if PY_VERSION_HEX >= 0x030600B1
        PyExc_ModuleNotFoundError,
#else
        PyExc_ImportError,
#endif
        "No module named '%U'", partial_name);
#endif
bad:
    Py_XDECREF(sep);
    Py_XDECREF(slice);
    Py_XDECREF(partial_name);
    return NULL;
}
#endif
#if PY_MAJOR_VERSION >= 3
static PyObject *__Pyx__ImportDottedModule_Lookup(PyObject *name) {
    PyObject *imported_module;
#if PY_VERSION_HEX < 0x030700A1 || (CYTHON_COMPILING_IN_PYPY && PYPY_VERSION_NUM  < 0x07030400)
    PyObject *modules = PyImport_GetModuleDict();
    if (unlikely(!modules))
        return NULL;
    imported_module = __Pyx_PyDict_GetItemStr(modules, name);
    Py_XINCREF(imported_module);
#else
    imported_module = PyImport_GetModule(name);
#endif
    return imported_module;
}
#endif
#if PY_MAJOR_VERSION >= 3
static PyObject *__Pyx_ImportDottedModule_WalkParts(PyObject *module, PyObject *name, PyObject *parts_tuple) {
    Py_ssize_t i, nparts;
    nparts = PyTuple_GET_SIZE(parts_tuple);
    for (i=1; i < nparts && module; i++) {
        PyObject *part, *submodule;
#if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS
        part = PyTuple_GET_ITEM(parts_tuple, i);
#else
        part = PySequence_ITEM(parts_tuple, i);
#endif
        submodule = __Pyx_PyObject_GetAttrStrNoError(module, part);
#if !(CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS)
        Py_DECREF(part);
#endif
        Py_DECREF(module);
        module = submodule;
    }
    if (unlikely(!module)) {
        return __Pyx__ImportDottedModule_Error(name, parts_tuple, i);
    }
    return module;
}
#endif
static PyObject *__Pyx__ImportDottedModule(PyObject *name, PyObject *parts_tuple) {
#if PY_MAJOR_VERSION < 3
    PyObject *module, *from_list, *star = __pyx_n_s__452;
    CYTHON_UNUSED_VAR(parts_tuple);
    from_list = PyList_New(1);
    if (unlikely(!from_list))
        return NULL;
    Py_INCREF(star);
    PyList_SET_ITEM(from_list, 0, star);
    module = __Pyx_Import(name, from_list, 0);
    Py_DECREF(from_list);
    return module;
#else
    PyObject *imported_module;
    PyObject *module = __Pyx_Import(name, NULL, 0);
    if (!parts_tuple || unlikely(!module))
        return module;
    imported_module = __Pyx__ImportDottedModule_Lookup(name);
    if (likely(imported_module)) {
        Py_DECREF(module);
        return imported_module;
    }
    PyErr_Clear();
    return __Pyx_ImportDottedModule_WalkParts(module, name, parts_tuple);
#endif
}
static PyObject *__Pyx_ImportDottedModule(PyObject *name, PyObject *parts_tuple) {
#if CYTHON_COMPILING_IN_CPYTHON && PY_VERSION_HEX >= 0x030400B1
    PyObject *module = __Pyx__ImportDottedModule_Lookup(name);
    if (likely(module)) {
        PyObject *spec = __Pyx_PyObject_GetAttrStrNoError(module, __pyx_n_s_spec);
        if (likely(spec)) {
            PyObject *unsafe = __Pyx_PyObject_GetAttrStrNoError(spec, __pyx_n_s_initializing);
            if (likely(!unsafe || !__Pyx_PyObject_IsTrue(unsafe))) {
                Py_DECREF(spec);
                spec = NULL;
            }
            Py_XDECREF(unsafe);
        }
        if (likely(!spec)) {
            PyErr_Clear();
            return module;
        }
        Py_DECREF(spec);
        Py_DECREF(module);
    } else if (PyErr_Occurred()) {
        PyErr_Clear();
    }
#endif
    return __Pyx__ImportDottedModule(name, parts_tuple);
}

/* CLineInTraceback */
#ifndef CYTHON_CLINE_IN_TRACEBACK
static int __Pyx_CLineForTraceback(PyThreadState *tstate, int c_line) {
    PyObject *use_cline;
    PyObject *ptype, *pvalue, *ptraceback;
#if CYTHON_COMPILING_IN_CPYTHON
    PyObject **cython_runtime_dict;
#endif
    CYTHON_MAYBE_UNUSED_VAR(tstate);
    if (unlikely(!__pyx_cython_runtime)) {
        return c_line;
    }
    __Pyx_ErrFetchInState(tstate, &ptype, &pvalue, &ptraceback);
#if CYTHON_COMPILING_IN_CPYTHON
    cython_runtime_dict = _PyObject_GetDictPtr(__pyx_cython_runtime);
    if (likely(cython_runtime_dict)) {
        __PYX_PY_DICT_LOOKUP_IF_MODIFIED(
            use_cline, *cython_runtime_dict,
            __Pyx_PyDict_GetItemStr(*cython_runtime_dict, __pyx_n_s_cline_in_traceback))
    } else
#endif
    {
      PyObject *use_cline_obj = __Pyx_PyObject_GetAttrStrNoError(__pyx_cython_runtime, __pyx_n_s_cline_in_traceback);
      if (use_cline_obj) {
        use_cline = PyObject_Not(use_cline_obj) ? Py_False : Py_True;
        Py_DECREF(use_cline_obj);
      } else {
        PyErr_Clear();
        use_cline = NULL;
      }
    }
    if (!use_cline) {
        c_line = 0;
        (void) PyObject_SetAttr(__pyx_cython_runtime, __pyx_n_s_cline_in_traceback, Py_False);
    }
    else if (use_cline == Py_False || (use_cline != Py_True && PyObject_Not(use_cline) != 0)) {
        c_line = 0;
    }
    __Pyx_ErrRestoreInState(tstate, ptype, pvalue, ptraceback);
    return c_line;
}
#endif

/* CodeObjectCache */
#if !CYTHON_COMPILING_IN_LIMITED_API
static int __pyx_bisect_code_objects(__Pyx_CodeObjectCacheEntry* entries, int count, int code_line) {
    int start = 0, mid = 0, end = count - 1;
    if (end >= 0 && code_line > entries[end].code_line) {
        return count;
    }
    while (start < end) {
        mid = start + (end - start) / 2;
        if (code_line < entries[mid].code_line) {
            end = mid;
        } else if (code_line > entries[mid].code_line) {
             start = mid + 1;
        } else {
            return mid;
        }
    }
    if (code_line <= entries[mid].code_line) {
        return mid;
    } else {
        return mid + 1;
    }
}
static PyCodeObject *__pyx_find_code_object(int code_line) {
    PyCodeObject* code_object;
    int pos;
    if (unlikely(!code_line) || unlikely(!__pyx_code_cache.entries)) {
        return NULL;
    }
    pos = __pyx_bisect_code_objects(__pyx_code_cache.entries, __pyx_code_cache.count, code_line);
    if (unlikely(pos >= __pyx_code_cache.count) || unlikely(__pyx_code_cache.entries[pos].code_line != code_line)) {
        return NULL;
    }
    code_object = __pyx_code_cache.entries[pos].code_object;
    Py_INCREF(code_object);
    return code_object;
}
static void __pyx_insert_code_object(int code_line, PyCodeObject* code_object) {
    int pos, i;
    __Pyx_CodeObjectCacheEntry* entries = __pyx_code_cache.entries;
    if (unlikely(!code_line)) {
        return;
    }
    if (unlikely(!entries)) {
        entries = (__Pyx_CodeObjectCacheEntry*)PyMem_Malloc(64*sizeof(__Pyx_CodeObjectCacheEntry));
        if (likely(entries)) {
            __pyx_code_cache.entries = entries;
            __pyx_code_cache.max_count = 64;
            __pyx_code_cache.count = 1;
            entries[0].code_line = code_line;
            entries[0].code_object = code_object;
            Py_INCREF(code_object);
        }
        return;
    }
    pos = __pyx_bisect_code_objects(__pyx_code_cache.entries, __pyx_code_cache.count, code_line);
    if ((pos < __pyx_code_cache.count) && unlikely(__pyx_code_cache.entries[pos].code_line == code_line)) {
        PyCodeObject* tmp = entries[pos].code_object;
        entries[pos].code_object = code_object;
        Py_DECREF(tmp);
        return;
    }
    if (__pyx_code_cache.count == __pyx_code_cache.max_count) {
        int new_max = __pyx_code_cache.max_count + 64;
        entries = (__Pyx_CodeObjectCacheEntry*)PyMem_Realloc(
            __pyx_code_cache.entries, ((size_t)new_max) * sizeof(__Pyx_CodeObjectCacheEntry));
        if (unlikely(!entries)) {
            return;
        }
        __pyx_code_cache.entries = entries;
        __pyx_code_cache.max_count = new_max;
    }
    for (i=__pyx_code_cache.count; i>pos; i--) {
        entries[i] = entries[i-1];
    }
    entries[pos].code_line = code_line;
    entries[pos].code_object = code_object;
    __pyx_code_cache.count++;
    Py_INCREF(code_object);
}
#endif

/* AddTraceback */
#include "compile.h"
#include "frameobject.h"
#include "traceback.h"
#if PY_VERSION_HEX >= 0x030b00a6 && !CYTHON_COMPILING_IN_LIMITED_API
  #ifndef Py_BUILD_CORE
    #define Py_BUILD_CORE 1
  #endif
  #include "internal/pycore_frame.h"
#endif
#if CYTHON_COMPILING_IN_LIMITED_API
static PyObject *__Pyx_PyCode_Replace_For_AddTraceback(PyObject *code, PyObject *scratch_dict,
                                                       PyObject *firstlineno, PyObject *name) {
    PyObject *replace = NULL;
    if (unlikely(PyDict_SetItemString(scratch_dict, "co_firstlineno", firstlineno))) return NULL;
    if (unlikely(PyDict_SetItemString(scratch_dict, "co_name", name))) return NULL;
    replace = PyObject_GetAttrString(code, "replace");
    if (likely(replace)) {
        PyObject *result;
        result = PyObject_Call(replace, __pyx_empty_tuple, scratch_dict);
        Py_DECREF(replace);
        return result;
    }
    PyErr_Clear();
    #if __PYX_LIMITED_VERSION_HEX < 0x030780000
    {
        PyObject *compiled = NULL, *result = NULL;
        if (unlikely(PyDict_SetItemString(scratch_dict, "code", code))) return NULL;
        if (unlikely(PyDict_SetItemString(scratch_dict, "type", (PyObject*)(&PyType_Type)))) return NULL;
        compiled = Py_CompileString(
            "out = type(code)(\n"
            "  code.co_argcount, code.co_kwonlyargcount, code.co_nlocals, code.co_stacksize,\n"
            "  code.co_flags, code.co_code, code.co_consts, code.co_names,\n"
            "  code.co_varnames, code.co_filename, co_name, co_firstlineno,\n"
            "  code.co_lnotab)\n", "<dummy>", Py_file_input);
        if (!compiled) return NULL;
        result = PyEval_EvalCode(compiled, scratch_dict, scratch_dict);
        Py_DECREF(compiled);
        if (!result) PyErr_Print();
        Py_DECREF(result);
        result = PyDict_GetItemString(scratch_dict, "out");
        if (result) Py_INCREF(result);
        return result;
    }
    #else
    return NULL;
    #endif
}
static void __Pyx_AddTraceback(const char *funcname, int c_line,
                               int py_line, const char *filename) {
    PyObject *code_object = NULL, *py_py_line = NULL, *py_funcname = NULL, *dict = NULL;
    PyObject *replace = NULL, *getframe = NULL, *frame = NULL;
    PyObject *exc_type, *exc_value, *exc_traceback;
    int success = 0;
    if (c_line) {
        (void) __pyx_cfilenm;
        (void) __Pyx_CLineForTraceback(__Pyx_PyThreadState_Current, c_line);
    }
    PyErr_Fetch(&exc_type, &exc_value, &exc_traceback);
    code_object = Py_CompileString("_getframe()", filename, Py_eval_input);
    if (unlikely(!code_object)) goto bad;
    py_py_line = PyLong_FromLong(py_line);
    if (unlikely(!py_py_line)) goto bad;
    py_funcname = PyUnicode_FromString(funcname);
    if (unlikely(!py_funcname)) goto bad;
    dict = PyDict_New();
    if (unlikely(!dict)) goto bad;
    {
        PyObject *old_code_object = code_object;
        code_object = __Pyx_PyCode_Replace_For_AddTraceback(code_object, dict, py_py_line, py_funcname);
        Py_DECREF(old_code_object);
    }
    if (unlikely(!code_object)) goto bad;
    getframe = PySys_GetObject("_getframe");
    if (unlikely(!getframe)) goto bad;
    if (unlikely(PyDict_SetItemString(dict, "_getframe", getframe))) goto bad;
    frame = PyEval_EvalCode(code_object, dict, dict);
    if (unlikely(!frame) || frame == Py_None) goto bad;
    success = 1;
  bad:
    PyErr_Restore(exc_type, exc_value, exc_traceback);
    Py_XDECREF(code_object);
    Py_XDECREF(py_py_line);
    Py_XDECREF(py_funcname);
    Py_XDECREF(dict);
    Py_XDECREF(replace);
    if (success) {
        PyTraceBack_Here(
            (struct _frame*)frame);
    }
    Py_XDECREF(frame);
}
#else
static PyCodeObject* __Pyx_CreateCodeObjectForTraceback(
            const char *funcname, int c_line,
            int py_line, const char *filename) {
    PyCodeObject *py_code = NULL;
    PyObject *py_funcname = NULL;
    #if PY_MAJOR_VERSION < 3
    PyObject *py_srcfile = NULL;
    py_srcfile = PyString_FromString(filename);
    if (!py_srcfile) goto bad;
    #endif
    if (c_line) {
        #if PY_MAJOR_VERSION < 3
        py_funcname = PyString_FromFormat( "%s (%s:%d)", funcname, __pyx_cfilenm, c_line);
        if (!py_funcname) goto bad;
        #else
        py_funcname = PyUnicode_FromFormat( "%s (%s:%d)", funcname, __pyx_cfilenm, c_line);
        if (!py_funcname) goto bad;
        funcname = PyUnicode_AsUTF8(py_funcname);
        if (!funcname) goto bad;
        #endif
    }
    else {
        #if PY_MAJOR_VERSION < 3
        py_funcname = PyString_FromString(funcname);
        if (!py_funcname) goto bad;
        #endif
    }
    #if PY_MAJOR_VERSION < 3
    py_code = __Pyx_PyCode_New(
        0,
        0,
        0,
        0,
        0,
        0,
        __pyx_empty_bytes, /*PyObject *code,*/
        __pyx_empty_tuple, /*PyObject *consts,*/
        __pyx_empty_tuple, /*PyObject *names,*/
        __pyx_empty_tuple, /*PyObject *varnames,*/
        __pyx_empty_tuple, /*PyObject *freevars,*/
        __pyx_empty_tuple, /*PyObject *cellvars,*/
        py_srcfile,   /*PyObject *filename,*/
        py_funcname,  /*PyObject *name,*/
        py_line,
        __pyx_empty_bytes  /*PyObject *lnotab*/
    );
    Py_DECREF(py_srcfile);
    #else
    py_code = PyCode_NewEmpty(filename, funcname, py_line);
    #endif
    Py_XDECREF(py_funcname);  // XDECREF since it's only set on Py3 if cline
    return py_code;
bad:
    Py_XDECREF(py_funcname);
    #if PY_MAJOR_VERSION < 3
    Py_XDECREF(py_srcfile);
    #endif
    return NULL;
}
static void __Pyx_AddTraceback(const char *funcname, int c_line,
                               int py_line, const char *filename) {
    PyCodeObject *py_code = 0;
    PyFrameObject *py_frame = 0;
    PyThreadState *tstate = __Pyx_PyThreadState_Current;
    PyObject *ptype, *pvalue, *ptraceback;
    if (c_line) {
        c_line = __Pyx_CLineForTraceback(tstate, c_line);
    }
    py_code = __pyx_find_code_object(c_line ? -c_line : py_line);
    if (!py_code) {
        __Pyx_ErrFetchInState(tstate, &ptype, &pvalue, &ptraceback);
        py_code = __Pyx_CreateCodeObjectForTraceback(
            funcname, c_line, py_line, filename);
        if (!py_code) {
            /* If the code object creation fails, then we should clear the
               fetched exception references and propagate the new exception */
            Py_XDECREF(ptype);
            Py_XDECREF(pvalue);
            Py_XDECREF(ptraceback);
            goto bad;
        }
        __Pyx_ErrRestoreInState(tstate, ptype, pvalue, ptraceback);
        __pyx_insert_code_object(c_line ? -c_line : py_line, py_code);
    }
    py_frame = PyFrame_New(
        tstate,            /*PyThreadState *tstate,*/
        py_code,           /*PyCodeObject *code,*/
        __pyx_d,    /*PyObject *globals,*/
        0                  /*PyObject *locals*/
    );
    if (!py_frame) goto bad;
    __Pyx_PyFrame_SetLineNumber(py_frame, py_line);
    PyTraceBack_Here(py_frame);
bad:
    Py_XDECREF(py_code);
    Py_XDECREF(py_frame);
}
#endif

/* FormatTypeName */
#if CYTHON_COMPILING_IN_LIMITED_API
static __Pyx_TypeName
__Pyx_PyType_GetName(PyTypeObject* tp)
{
    PyObject *name = __Pyx_PyObject_GetAttrStr((PyObject *)tp,
                                               __pyx_n_s_name);
    if (unlikely(name == NULL) || unlikely(!PyUnicode_Check(name))) {
        PyErr_Clear();
        Py_XDECREF(name);
        name = __Pyx_NewRef(__pyx_n_s__453);
    }
    return name;
}
#endif

/* CIntToPy */
static CYTHON_INLINE PyObject* __Pyx_PyInt_From_long(long value) {
#ifdef __Pyx_HAS_GCC_DIAGNOSTIC
#pragma GCC diagnostic push
#pragma GCC diagnostic ignored "-Wconversion"
#endif
    const long neg_one = (long) -1, const_zero = (long) 0;
#ifdef __Pyx_HAS_GCC_DIAGNOSTIC
#pragma GCC diagnostic pop
#endif
    const int is_unsigned = neg_one > const_zero;
    if (is_unsigned) {
        if (sizeof(long) < sizeof(long)) {
            return PyInt_FromLong((long) value);
        } else if (sizeof(long) <= sizeof(unsigned long)) {
            return PyLong_FromUnsignedLong((unsigned long) value);
#ifdef HAVE_LONG_LONG
        } else if (sizeof(long) <= sizeof(unsigned PY_LONG_LONG)) {
            return PyLong_FromUnsignedLongLong((unsigned PY_LONG_LONG) value);
#endif
        }
    } else {
        if (sizeof(long) <= sizeof(long)) {
            return PyInt_FromLong((long) value);
#ifdef HAVE_LONG_LONG
        } else if (sizeof(long) <= sizeof(PY_LONG_LONG)) {
            return PyLong_FromLongLong((PY_LONG_LONG) value);
#endif
        }
    }
    {
        int one = 1; int little = (int)*(unsigned char *)&one;
        unsigned char *bytes = (unsigned char *)&value;
#if !CYTHON_COMPILING_IN_LIMITED_API && PY_VERSION_HEX < 0x030d0000
        return _PyLong_FromByteArray(bytes, sizeof(long),
                                     little, !is_unsigned);
#else
        PyObject *from_bytes, *result = NULL;
        PyObject *py_bytes = NULL, *arg_tuple = NULL, *kwds = NULL, *order_str = NULL;
        from_bytes = PyObject_GetAttrString((PyObject*)&PyLong_Type, "from_bytes");
        if (!from_bytes) return NULL;
        py_bytes = PyBytes_FromStringAndSize((char*)bytes, sizeof(long));
        if (!py_bytes) goto limited_bad;
        order_str = PyUnicode_FromString(little ? "little" : "big");
        if (!order_str) goto limited_bad;
        arg_tuple = PyTuple_Pack(2, py_bytes, order_str);
        if (!arg_tuple) goto limited_bad;
        if (!is_unsigned) {
            kwds = PyDict_New();
            if (!kwds) goto limited_bad;
            if (PyDict_SetItemString(kwds, "signed", __Pyx_NewRef(Py_True))) goto limited_bad;
        }
        result = PyObject_Call(from_bytes, arg_tuple, kwds);
        limited_bad:
        Py_XDECREF(kwds);
        Py_XDECREF(arg_tuple);
        Py_XDECREF(order_str);
        Py_XDECREF(py_bytes);
        Py_XDECREF(from_bytes);
        return result;
#endif
    }
}

/* CIntFromPyVerify */
#define __PYX_VERIFY_RETURN_INT(target_type, func_type, func_value)\
    __PYX__VERIFY_RETURN_INT(target_type, func_type, func_value, 0)
#define __PYX_VERIFY_RETURN_INT_EXC(target_type, func_type, func_value)\
    __PYX__VERIFY_RETURN_INT(target_type, func_type, func_value, 1)
#define __PYX__VERIFY_RETURN_INT(target_type, func_type, func_value, exc)\
    {\
        func_type value = func_value;\
        if (sizeof(target_type) < sizeof(func_type)) {\
            if (unlikely(value != (func_type) (target_type) value)) {\
                func_type zero = 0;\
                if (exc && unlikely(value == (func_type)-1 && PyErr_Occurred()))\
                    return (target_type) -1;\
                if (is_unsigned && unlikely(value < zero))\
                    goto raise_neg_overflow;\
                else\
                    goto raise_overflow;\
            }\
        }\
        return (target_type) value;\
    }

/* CIntFromPy */
static CYTHON_INLINE long __Pyx_PyInt_As_long(PyObject *x) {
#ifdef __Pyx_HAS_GCC_DIAGNOSTIC
#pragma GCC diagnostic push
#pragma GCC diagnostic ignored "-Wconversion"
#endif
    const long neg_one = (long) -1, const_zero = (long) 0;
#ifdef __Pyx_HAS_GCC_DIAGNOSTIC
#pragma GCC diagnostic pop
#endif
    const int is_unsigned = neg_one > const_zero;
#if PY_MAJOR_VERSION < 3
    if (likely(PyInt_Check(x))) {
        if ((sizeof(long) < sizeof(long))) {
            __PYX_VERIFY_RETURN_INT(long, long, PyInt_AS_LONG(x))
        } else {
            long val = PyInt_AS_LONG(x);
            if (is_unsigned && unlikely(val < 0)) {
                goto raise_neg_overflow;
            }
            return (long) val;
        }
    } else
#endif
    if (likely(PyLong_Check(x))) {
        if (is_unsigned) {
#if CYTHON_USE_PYLONG_INTERNALS
            if (unlikely(__Pyx_PyLong_IsNeg(x))) {
                goto raise_neg_overflow;
            } else if (__Pyx_PyLong_IsCompact(x)) {
                __PYX_VERIFY_RETURN_INT(long, __Pyx_compact_upylong, __Pyx_PyLong_CompactValueUnsigned(x))
            } else {
                const digit* digits = __Pyx_PyLong_Digits(x);
                assert(__Pyx_PyLong_DigitCount(x) > 1);
                switch (__Pyx_PyLong_DigitCount(x)) {
                    case 2:
                        if ((8 * sizeof(long) > 1 * PyLong_SHIFT)) {
                            if ((8 * sizeof(unsigned long) > 2 * PyLong_SHIFT)) {
                                __PYX_VERIFY_RETURN_INT(long, unsigned long, (((((unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0])))
                            } else if ((8 * sizeof(long) >= 2 * PyLong_SHIFT)) {
                                return (long) (((((long)digits[1]) << PyLong_SHIFT) | (long)digits[0]));
                            }
                        }
                        break;
                    case 3:
                        if ((8 * sizeof(long) > 2 * PyLong_SHIFT)) {
                            if ((8 * sizeof(unsigned long) > 3 * PyLong_SHIFT)) {
                                __PYX_VERIFY_RETURN_INT(long, unsigned long, (((((((unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0])))
                            } else if ((8 * sizeof(long) >= 3 * PyLong_SHIFT)) {
                                return (long) (((((((long)digits[2]) << PyLong_SHIFT) | (long)digits[1]) << PyLong_SHIFT) | (long)digits[0]));
                            }
                        }
                        break;
                    case 4:
                        if ((8 * sizeof(long) > 3 * PyLong_SHIFT)) {
                            if ((8 * sizeof(unsigned long) > 4 * PyLong_SHIFT)) {
                                __PYX_VERIFY_RETURN_INT(long, unsigned long, (((((((((unsigned long)digits[3]) << PyLong_SHIFT) | (unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0])))
                            } else if ((8 * sizeof(long) >= 4 * PyLong_SHIFT)) {
                                return (long) (((((((((long)digits[3]) << PyLong_SHIFT) | (long)digits[2]) << PyLong_SHIFT) | (long)digits[1]) << PyLong_SHIFT) | (long)digits[0]));
                            }
                        }
                        break;
                }
            }
#endif
#if CYTHON_COMPILING_IN_CPYTHON && PY_VERSION_HEX < 0x030C00A7
            if (unlikely(Py_SIZE(x) < 0)) {
                goto raise_neg_overflow;
            }
#else
            {
                int result = PyObject_RichCompareBool(x, Py_False, Py_LT);
                if (unlikely(result < 0))
                    return (long) -1;
                if (unlikely(result == 1))
                    goto raise_neg_overflow;
            }
#endif
            if ((sizeof(long) <= sizeof(unsigned long))) {
                __PYX_VERIFY_RETURN_INT_EXC(long, unsigned long, PyLong_AsUnsignedLong(x))
#ifdef HAVE_LONG_LONG
            } else if ((sizeof(long) <= sizeof(unsigned PY_LONG_LONG))) {
                __PYX_VERIFY_RETURN_INT_EXC(long, unsigned PY_LONG_LONG, PyLong_AsUnsignedLongLong(x))
#endif
            }
        } else {
#if CYTHON_USE_PYLONG_INTERNALS
            if (__Pyx_PyLong_IsCompact(x)) {
                __PYX_VERIFY_RETURN_INT(long, __Pyx_compact_pylong, __Pyx_PyLong_CompactValue(x))
            } else {
                const digit* digits = __Pyx_PyLong_Digits(x);
                assert(__Pyx_PyLong_DigitCount(x) > 1);
                switch (__Pyx_PyLong_SignedDigitCount(x)) {
                    case -2:
                        if ((8 * sizeof(long) - 1 > 1 * PyLong_SHIFT)) {
                            if ((8 * sizeof(unsigned long) > 2 * PyLong_SHIFT)) {
                                __PYX_VERIFY_RETURN_INT(long, long, -(long) (((((unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0])))
                            } else if ((8 * sizeof(long) - 1 > 2 * PyLong_SHIFT)) {
                                return (long) (((long)-1)*(((((long)digits[1]) << PyLong_SHIFT) | (long)digits[0])));
                            }
                        }
                        break;
                    case 2:
                        if ((8 * sizeof(long) > 1 * PyLong_SHIFT)) {
                            if ((8 * sizeof(unsigned long) > 2 * PyLong_SHIFT)) {
                                __PYX_VERIFY_RETURN_INT(long, unsigned long, (((((unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0])))
                            } else if ((8 * sizeof(long) - 1 > 2 * PyLong_SHIFT)) {
                                return (long) ((((((long)digits[1]) << PyLong_SHIFT) | (long)digits[0])));
                            }
                        }
                        break;
                    case -3:
                        if ((8 * sizeof(long) - 1 > 2 * PyLong_SHIFT)) {
                            if ((8 * sizeof(unsigned long) > 3 * PyLong_SHIFT)) {
                                __PYX_VERIFY_RETURN_INT(long, long, -(long) (((((((unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0])))
                            } else if ((8 * sizeof(long) - 1 > 3 * PyLong_SHIFT)) {
                                return (long) (((long)-1)*(((((((long)digits[2]) << PyLong_SHIFT) | (long)digits[1]) << PyLong_SHIFT) | (long)digits[0])));
                            }
                        }
                        break;
                    case 3:
                        if ((8 * sizeof(long) > 2 * PyLong_SHIFT)) {
                            if ((8 * sizeof(unsigned long) > 3 * PyLong_SHIFT)) {
                                __PYX_VERIFY_RETURN_INT(long, unsigned long, (((((((unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0])))
                            } else if ((8 * sizeof(long) - 1 > 3 * PyLong_SHIFT)) {
                                return (long) ((((((((long)digits[2]) << PyLong_SHIFT) | (long)digits[1]) << PyLong_SHIFT) | (long)digits[0])));
                            }
                        }
                        break;
                    case -4:
                        if ((8 * sizeof(long) - 1 > 3 * PyLong_SHIFT)) {
                            if ((8 * sizeof(unsigned long) > 4 * PyLong_SHIFT)) {
                                __PYX_VERIFY_RETURN_INT(long, long, -(long) (((((((((unsigned long)digits[3]) << PyLong_SHIFT) | (unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0])))
                            } else if ((8 * sizeof(long) - 1 > 4 * PyLong_SHIFT)) {
                                return (long) (((long)-1)*(((((((((long)digits[3]) << PyLong_SHIFT) | (long)digits[2]) << PyLong_SHIFT) | (long)digits[1]) << PyLong_SHIFT) | (long)digits[0])));
                            }
                        }
                        break;
                    case 4:
                        if ((8 * sizeof(long) > 3 * PyLong_SHIFT)) {
                            if ((8 * sizeof(unsigned long) > 4 * PyLong_SHIFT)) {
                                __PYX_VERIFY_RETURN_INT(long, unsigned long, (((((((((unsigned long)digits[3]) << PyLong_SHIFT) | (unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0])))
                            } else if ((8 * sizeof(long) - 1 > 4 * PyLong_SHIFT)) {
                                return (long) ((((((((((long)digits[3]) << PyLong_SHIFT) | (long)digits[2]) << PyLong_SHIFT) | (long)digits[1]) << PyLong_SHIFT) | (long)digits[0])));
                            }
                        }
                        break;
                }
            }
#endif
            if ((sizeof(long) <= sizeof(long))) {
                __PYX_VERIFY_RETURN_INT_EXC(long, long, PyLong_AsLong(x))
#ifdef HAVE_LONG_LONG
            } else if ((sizeof(long) <= sizeof(PY_LONG_LONG))) {
                __PYX_VERIFY_RETURN_INT_EXC(long, PY_LONG_LONG, PyLong_AsLongLong(x))
#endif
            }
        }
        {
            long val;
            PyObject *v = __Pyx_PyNumber_IntOrLong(x);
#if PY_MAJOR_VERSION < 3
            if (likely(v) && !PyLong_Check(v)) {
                PyObject *tmp = v;
                v = PyNumber_Long(tmp);
                Py_DECREF(tmp);
            }
#endif
            if (likely(v)) {
                int ret = -1;
#if PY_VERSION_HEX < 0x030d0000 && !(CYTHON_COMPILING_IN_PYPY || CYTHON_COMPILING_IN_LIMITED_API) || defined(_PyLong_AsByteArray)
                int one = 1; int is_little = (int)*(unsigned char *)&one;
                unsigned char *bytes = (unsigned char *)&val;
                ret = _PyLong_AsByteArray((PyLongObject *)v,
                                           bytes, sizeof(val),
                                           is_little, !is_unsigned);
#else
                PyObject *stepval = NULL, *mask = NULL, *shift = NULL;
                int bits, remaining_bits, is_negative = 0;
                long idigit;
                int chunk_size = (sizeof(long) < 8) ? 30 : 62;
                if (unlikely(!PyLong_CheckExact(v))) {
                    PyObject *tmp = v;
                    v = PyNumber_Long(v);
                    assert(PyLong_CheckExact(v));
                    Py_DECREF(tmp);
                    if (unlikely(!v)) return (long) -1;
                }
#if CYTHON_COMPILING_IN_LIMITED_API && PY_VERSION_HEX < 0x030B0000
                if (Py_SIZE(x) == 0)
                    return (long) 0;
                is_negative = Py_SIZE(x) < 0;
#else
                {
                    int result = PyObject_RichCompareBool(x, Py_False, Py_LT);
                    if (unlikely(result < 0))
                        return (long) -1;
                    is_negative = result == 1;
                }
#endif
                if (is_unsigned && unlikely(is_negative)) {
                    goto raise_neg_overflow;
                } else if (is_negative) {
                    stepval = PyNumber_Invert(v);
                    if (unlikely(!stepval))
                        return (long) -1;
                } else {
                    stepval = __Pyx_NewRef(v);
                }
                val = (long) 0;
                mask = PyLong_FromLong((1L << chunk_size) - 1); if (unlikely(!mask)) goto done;
                shift = PyLong_FromLong(chunk_size); if (unlikely(!shift)) goto done;
                for (bits = 0; bits < (int) sizeof(long) * 8 - chunk_size; bits += chunk_size) {
                    PyObject *tmp, *digit;
                    digit = PyNumber_And(stepval, mask);
                    if (unlikely(!digit)) goto done;
                    idigit = PyLong_AsLong(digit);
                    Py_DECREF(digit);
                    if (unlikely(idigit < 0)) goto done;
                    tmp = PyNumber_Rshift(stepval, shift);
                    if (unlikely(!tmp)) goto done;
                    Py_DECREF(stepval); stepval = tmp;
                    val |= ((long) idigit) << bits;
                    #if CYTHON_COMPILING_IN_LIMITED_API && PY_VERSION_HEX < 0x030B0000
                    if (Py_SIZE(stepval) == 0)
                        goto unpacking_done;
                    #endif
                }
                idigit = PyLong_AsLong(stepval);
                if (unlikely(idigit < 0)) goto done;
                remaining_bits = ((int) sizeof(long) * 8) - bits - (is_unsigned ? 0 : 1);
                if (unlikely(idigit >= (1L << remaining_bits)))
                    goto raise_overflow;
                val |= ((long) idigit) << bits;
            #if CYTHON_COMPILING_IN_LIMITED_API && PY_VERSION_HEX < 0x030B0000
            unpacking_done:
            #endif
                if (!is_unsigned) {
                    if (unlikely(val & (((long) 1) << (sizeof(long) * 8 - 1))))
                        goto raise_overflow;
                    if (is_negative)
                        val = ~val;
                }
                ret = 0;
            done:
                Py_XDECREF(shift);
                Py_XDECREF(mask);
                Py_XDECREF(stepval);
#endif
                Py_DECREF(v);
                if (likely(!ret))
                    return val;
            }
            return (long) -1;
        }
    } else {
        long val;
        PyObject *tmp = __Pyx_PyNumber_IntOrLong(x);
        if (!tmp) return (long) -1;
        val = __Pyx_PyInt_As_long(tmp);
        Py_DECREF(tmp);
        return val;
    }
raise_overflow:
    PyErr_SetString(PyExc_OverflowError,
        "value too large to convert to long");
    return (long) -1;
raise_neg_overflow:
    PyErr_SetString(PyExc_OverflowError,
        "can't convert negative value to long");
    return (long) -1;
}

/* CIntFromPy */
static CYTHON_INLINE int __Pyx_PyInt_As_int(PyObject *x) {
#ifdef __Pyx_HAS_GCC_DIAGNOSTIC
#pragma GCC diagnostic push
#pragma GCC diagnostic ignored "-Wconversion"
#endif
    const int neg_one = (int) -1, const_zero = (int) 0;
#ifdef __Pyx_HAS_GCC_DIAGNOSTIC
#pragma GCC diagnostic pop
#endif
    const int is_unsigned = neg_one > const_zero;
#if PY_MAJOR_VERSION < 3
    if (likely(PyInt_Check(x))) {
        if ((sizeof(int) < sizeof(long))) {
            __PYX_VERIFY_RETURN_INT(int, long, PyInt_AS_LONG(x))
        } else {
            long val = PyInt_AS_LONG(x);
            if (is_unsigned && unlikely(val < 0)) {
                goto raise_neg_overflow;
            }
            return (int) val;
        }
    } else
#endif
    if (likely(PyLong_Check(x))) {
        if (is_unsigned) {
#if CYTHON_USE_PYLONG_INTERNALS
            if (unlikely(__Pyx_PyLong_IsNeg(x))) {
                goto raise_neg_overflow;
            } else if (__Pyx_PyLong_IsCompact(x)) {
                __PYX_VERIFY_RETURN_INT(int, __Pyx_compact_upylong, __Pyx_PyLong_CompactValueUnsigned(x))
            } else {
                const digit* digits = __Pyx_PyLong_Digits(x);
                assert(__Pyx_PyLong_DigitCount(x) > 1);
                switch (__Pyx_PyLong_DigitCount(x)) {
                    case 2:
                        if ((8 * sizeof(int) > 1 * PyLong_SHIFT)) {
                            if ((8 * sizeof(unsigned long) > 2 * PyLong_SHIFT)) {
                                __PYX_VERIFY_RETURN_INT(int, unsigned long, (((((unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0])))
                            } else if ((8 * sizeof(int) >= 2 * PyLong_SHIFT)) {
                                return (int) (((((int)digits[1]) << PyLong_SHIFT) | (int)digits[0]));
                            }
                        }
                        break;
                    case 3:
                        if ((8 * sizeof(int) > 2 * PyLong_SHIFT)) {
                            if ((8 * sizeof(unsigned long) > 3 * PyLong_SHIFT)) {
                                __PYX_VERIFY_RETURN_INT(int, unsigned long, (((((((unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0])))
                            } else if ((8 * sizeof(int) >= 3 * PyLong_SHIFT)) {
                                return (int) (((((((int)digits[2]) << PyLong_SHIFT) | (int)digits[1]) << PyLong_SHIFT) | (int)digits[0]));
                            }
                        }
                        break;
                    case 4:
                        if ((8 * sizeof(int) > 3 * PyLong_SHIFT)) {
                            if ((8 * sizeof(unsigned long) > 4 * PyLong_SHIFT)) {
                                __PYX_VERIFY_RETURN_INT(int, unsigned long, (((((((((unsigned long)digits[3]) << PyLong_SHIFT) | (unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0])))
                            } else if ((8 * sizeof(int) >= 4 * PyLong_SHIFT)) {
                                return (int) (((((((((int)digits[3]) << PyLong_SHIFT) | (int)digits[2]) << PyLong_SHIFT) | (int)digits[1]) << PyLong_SHIFT) | (int)digits[0]));
                            }
                        }
                        break;
                }
            }
#endif
#if CYTHON_COMPILING_IN_CPYTHON && PY_VERSION_HEX < 0x030C00A7
            if (unlikely(Py_SIZE(x) < 0)) {
                goto raise_neg_overflow;
            }
#else
            {
                int result = PyObject_RichCompareBool(x, Py_False, Py_LT);
                if (unlikely(result < 0))
                    return (int) -1;
                if (unlikely(result == 1))
                    goto raise_neg_overflow;
            }
#endif
            if ((sizeof(int) <= sizeof(unsigned long))) {
                __PYX_VERIFY_RETURN_INT_EXC(int, unsigned long, PyLong_AsUnsignedLong(x))
#ifdef HAVE_LONG_LONG
            } else if ((sizeof(int) <= sizeof(unsigned PY_LONG_LONG))) {
                __PYX_VERIFY_RETURN_INT_EXC(int, unsigned PY_LONG_LONG, PyLong_AsUnsignedLongLong(x))
#endif
            }
        } else {
#if CYTHON_USE_PYLONG_INTERNALS
            if (__Pyx_PyLong_IsCompact(x)) {
                __PYX_VERIFY_RETURN_INT(int, __Pyx_compact_pylong, __Pyx_PyLong_CompactValue(x))
            } else {
                const digit* digits = __Pyx_PyLong_Digits(x);
                assert(__Pyx_PyLong_DigitCount(x) > 1);
                switch (__Pyx_PyLong_SignedDigitCount(x)) {
                    case -2:
                        if ((8 * sizeof(int) - 1 > 1 * PyLong_SHIFT)) {
                            if ((8 * sizeof(unsigned long) > 2 * PyLong_SHIFT)) {
                                __PYX_VERIFY_RETURN_INT(int, long, -(long) (((((unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0])))
                            } else if ((8 * sizeof(int) - 1 > 2 * PyLong_SHIFT)) {
                                return (int) (((int)-1)*(((((int)digits[1]) << PyLong_SHIFT) | (int)digits[0])));
                            }
                        }
                        break;
                    case 2:
                        if ((8 * sizeof(int) > 1 * PyLong_SHIFT)) {
                            if ((8 * sizeof(unsigned long) > 2 * PyLong_SHIFT)) {
                                __PYX_VERIFY_RETURN_INT(int, unsigned long, (((((unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0])))
                            } else if ((8 * sizeof(int) - 1 > 2 * PyLong_SHIFT)) {
                                return (int) ((((((int)digits[1]) << PyLong_SHIFT) | (int)digits[0])));
                            }
                        }
                        break;
                    case -3:
                        if ((8 * sizeof(int) - 1 > 2 * PyLong_SHIFT)) {
                            if ((8 * sizeof(unsigned long) > 3 * PyLong_SHIFT)) {
                                __PYX_VERIFY_RETURN_INT(int, long, -(long) (((((((unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0])))
                            } else if ((8 * sizeof(int) - 1 > 3 * PyLong_SHIFT)) {
                                return (int) (((int)-1)*(((((((int)digits[2]) << PyLong_SHIFT) | (int)digits[1]) << PyLong_SHIFT) | (int)digits[0])));
                            }
                        }
                        break;
                    case 3:
                        if ((8 * sizeof(int) > 2 * PyLong_SHIFT)) {
                            if ((8 * sizeof(unsigned long) > 3 * PyLong_SHIFT)) {
                                __PYX_VERIFY_RETURN_INT(int, unsigned long, (((((((unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0])))
                            } else if ((8 * sizeof(int) - 1 > 3 * PyLong_SHIFT)) {
                                return (int) ((((((((int)digits[2]) << PyLong_SHIFT) | (int)digits[1]) << PyLong_SHIFT) | (int)digits[0])));
                            }
                        }
                        break;
                    case -4:
                        if ((8 * sizeof(int) - 1 > 3 * PyLong_SHIFT)) {
                            if ((8 * sizeof(unsigned long) > 4 * PyLong_SHIFT)) {
                                __PYX_VERIFY_RETURN_INT(int, long, -(long) (((((((((unsigned long)digits[3]) << PyLong_SHIFT) | (unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0])))
                            } else if ((8 * sizeof(int) - 1 > 4 * PyLong_SHIFT)) {
                                return (int) (((int)-1)*(((((((((int)digits[3]) << PyLong_SHIFT) | (int)digits[2]) << PyLong_SHIFT) | (int)digits[1]) << PyLong_SHIFT) | (int)digits[0])));
                            }
                        }
                        break;
                    case 4:
                        if ((8 * sizeof(int) > 3 * PyLong_SHIFT)) {
                            if ((8 * sizeof(unsigned long) > 4 * PyLong_SHIFT)) {
                                __PYX_VERIFY_RETURN_INT(int, unsigned long, (((((((((unsigned long)digits[3]) << PyLong_SHIFT) | (unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0])))
                            } else if ((8 * sizeof(int) - 1 > 4 * PyLong_SHIFT)) {
                                return (int) ((((((((((int)digits[3]) << PyLong_SHIFT) | (int)digits[2]) << PyLong_SHIFT) | (int)digits[1]) << PyLong_SHIFT) | (int)digits[0])));
                            }
                        }
                        break;
                }
            }
#endif
            if ((sizeof(int) <= sizeof(long))) {
                __PYX_VERIFY_RETURN_INT_EXC(int, long, PyLong_AsLong(x))
#ifdef HAVE_LONG_LONG
            } else if ((sizeof(int) <= sizeof(PY_LONG_LONG))) {
                __PYX_VERIFY_RETURN_INT_EXC(int, PY_LONG_LONG, PyLong_AsLongLong(x))
#endif
            }
        }
        {
            int val;
            PyObject *v = __Pyx_PyNumber_IntOrLong(x);
#if PY_MAJOR_VERSION < 3
            if (likely(v) && !PyLong_Check(v)) {
                PyObject *tmp = v;
                v = PyNumber_Long(tmp);
                Py_DECREF(tmp);
            }
#endif
            if (likely(v)) {
                int ret = -1;
#if PY_VERSION_HEX < 0x030d0000 && !(CYTHON_COMPILING_IN_PYPY || CYTHON_COMPILING_IN_LIMITED_API) || defined(_PyLong_AsByteArray)
                int one = 1; int is_little = (int)*(unsigned char *)&one;
                unsigned char *bytes = (unsigned char *)&val;
                ret = _PyLong_AsByteArray((PyLongObject *)v,
                                           bytes, sizeof(val),
                                           is_little, !is_unsigned);
#else
                PyObject *stepval = NULL, *mask = NULL, *shift = NULL;
                int bits, remaining_bits, is_negative = 0;
                long idigit;
                int chunk_size = (sizeof(long) < 8) ? 30 : 62;
                if (unlikely(!PyLong_CheckExact(v))) {
                    PyObject *tmp = v;
                    v = PyNumber_Long(v);
                    assert(PyLong_CheckExact(v));
                    Py_DECREF(tmp);
                    if (unlikely(!v)) return (int) -1;
                }
#if CYTHON_COMPILING_IN_LIMITED_API && PY_VERSION_HEX < 0x030B0000
                if (Py_SIZE(x) == 0)
                    return (int) 0;
                is_negative = Py_SIZE(x) < 0;
#else
                {
                    int result = PyObject_RichCompareBool(x, Py_False, Py_LT);
                    if (unlikely(result < 0))
                        return (int) -1;
                    is_negative = result == 1;
                }
#endif
                if (is_unsigned && unlikely(is_negative)) {
                    goto raise_neg_overflow;
                } else if (is_negative) {
                    stepval = PyNumber_Invert(v);
                    if (unlikely(!stepval))
                        return (int) -1;
                } else {
                    stepval = __Pyx_NewRef(v);
                }
                val = (int) 0;
                mask = PyLong_FromLong((1L << chunk_size) - 1); if (unlikely(!mask)) goto done;
                shift = PyLong_FromLong(chunk_size); if (unlikely(!shift)) goto done;
                for (bits = 0; bits < (int) sizeof(int) * 8 - chunk_size; bits += chunk_size) {
                    PyObject *tmp, *digit;
                    digit = PyNumber_And(stepval, mask);
                    if (unlikely(!digit)) goto done;
                    idigit = PyLong_AsLong(digit);
                    Py_DECREF(digit);
                    if (unlikely(idigit < 0)) goto done;
                    tmp = PyNumber_Rshift(stepval, shift);
                    if (unlikely(!tmp)) goto done;
                    Py_DECREF(stepval); stepval = tmp;
                    val |= ((int) idigit) << bits;
                    #if CYTHON_COMPILING_IN_LIMITED_API && PY_VERSION_HEX < 0x030B0000
                    if (Py_SIZE(stepval) == 0)
                        goto unpacking_done;
                    #endif
                }
                idigit = PyLong_AsLong(stepval);
                if (unlikely(idigit < 0)) goto done;
                remaining_bits = ((int) sizeof(int) * 8) - bits - (is_unsigned ? 0 : 1);
                if (unlikely(idigit >= (1L << remaining_bits)))
                    goto raise_overflow;
                val |= ((int) idigit) << bits;
            #if CYTHON_COMPILING_IN_LIMITED_API && PY_VERSION_HEX < 0x030B0000
            unpacking_done:
            #endif
                if (!is_unsigned) {
                    if (unlikely(val & (((int) 1) << (sizeof(int) * 8 - 1))))
                        goto raise_overflow;
                    if (is_negative)
                        val = ~val;
                }
                ret = 0;
            done:
                Py_XDECREF(shift);
                Py_XDECREF(mask);
                Py_XDECREF(stepval);
#endif
                Py_DECREF(v);
                if (likely(!ret))
                    return val;
            }
            return (int) -1;
        }
    } else {
        int val;
        PyObject *tmp = __Pyx_PyNumber_IntOrLong(x);
        if (!tmp) return (int) -1;
        val = __Pyx_PyInt_As_int(tmp);
        Py_DECREF(tmp);
        return val;
    }
raise_overflow:
    PyErr_SetString(PyExc_OverflowError,
        "value too large to convert to int");
    return (int) -1;
raise_neg_overflow:
    PyErr_SetString(PyExc_OverflowError,
        "can't convert negative value to int");
    return (int) -1;
}

/* FastTypeChecks */
#if CYTHON_COMPILING_IN_CPYTHON
static int __Pyx_InBases(PyTypeObject *a, PyTypeObject *b) {
    while (a) {
        a = __Pyx_PyType_GetSlot(a, tp_base, PyTypeObject*);
        if (a == b)
            return 1;
    }
    return b == &PyBaseObject_Type;
}
static CYTHON_INLINE int __Pyx_IsSubtype(PyTypeObject *a, PyTypeObject *b) {
    PyObject *mro;
    if (a == b) return 1;
    mro = a->tp_mro;
    if (likely(mro)) {
        Py_ssize_t i, n;
        n = PyTuple_GET_SIZE(mro);
        for (i = 0; i < n; i++) {
            if (PyTuple_GET_ITEM(mro, i) == (PyObject *)b)
                return 1;
        }
        return 0;
    }
    return __Pyx_InBases(a, b);
}
static CYTHON_INLINE int __Pyx_IsAnySubtype2(PyTypeObject *cls, PyTypeObject *a, PyTypeObject *b) {
    PyObject *mro;
    if (cls == a || cls == b) return 1;
    mro = cls->tp_mro;
    if (likely(mro)) {
        Py_ssize_t i, n;
        n = PyTuple_GET_SIZE(mro);
        for (i = 0; i < n; i++) {
            PyObject *base = PyTuple_GET_ITEM(mro, i);
            if (base == (PyObject *)a || base == (PyObject *)b)
                return 1;
        }
        return 0;
    }
    return __Pyx_InBases(cls, a) || __Pyx_InBases(cls, b);
}
#if PY_MAJOR_VERSION == 2
static int __Pyx_inner_PyErr_GivenExceptionMatches2(PyObject *err, PyObject* exc_type1, PyObject* exc_type2) {
    PyObject *exception, *value, *tb;
    int res;
    __Pyx_PyThreadState_declare
    __Pyx_PyThreadState_assign
    __Pyx_ErrFetch(&exception, &value, &tb);
    res = exc_type1 ? PyObject_IsSubclass(err, exc_type1) : 0;
    if (unlikely(res == -1)) {
        PyErr_WriteUnraisable(err);
        res = 0;
    }
    if (!res) {
        res = PyObject_IsSubclass(err, exc_type2);
        if (unlikely(res == -1)) {
            PyErr_WriteUnraisable(err);
            res = 0;
        }
    }
    __Pyx_ErrRestore(exception, value, tb);
    return res;
}
#else
static CYTHON_INLINE int __Pyx_inner_PyErr_GivenExceptionMatches2(PyObject *err, PyObject* exc_type1, PyObject *exc_type2) {
    if (exc_type1) {
        return __Pyx_IsAnySubtype2((PyTypeObject*)err, (PyTypeObject*)exc_type1, (PyTypeObject*)exc_type2);
    } else {
        return __Pyx_IsSubtype((PyTypeObject*)err, (PyTypeObject*)exc_type2);
    }
}
#endif
static int __Pyx_PyErr_GivenExceptionMatchesTuple(PyObject *exc_type, PyObject *tuple) {
    Py_ssize_t i, n;
    assert(PyExceptionClass_Check(exc_type));
    n = PyTuple_GET_SIZE(tuple);
#if PY_MAJOR_VERSION >= 3
    for (i=0; i<n; i++) {
        if (exc_type == PyTuple_GET_ITEM(tuple, i)) return 1;
    }
#endif
    for (i=0; i<n; i++) {
        PyObject *t = PyTuple_GET_ITEM(tuple, i);
        #if PY_MAJOR_VERSION < 3
        if (likely(exc_type == t)) return 1;
        #endif
        if (likely(PyExceptionClass_Check(t))) {
            if (__Pyx_inner_PyErr_GivenExceptionMatches2(exc_type, NULL, t)) return 1;
        } else {
        }
    }
    return 0;
}
static CYTHON_INLINE int __Pyx_PyErr_GivenExceptionMatches(PyObject *err, PyObject* exc_type) {
    if (likely(err == exc_type)) return 1;
    if (likely(PyExceptionClass_Check(err))) {
        if (likely(PyExceptionClass_Check(exc_type))) {
            return __Pyx_inner_PyErr_GivenExceptionMatches2(err, NULL, exc_type);
        } else if (likely(PyTuple_Check(exc_type))) {
            return __Pyx_PyErr_GivenExceptionMatchesTuple(err, exc_type);
        } else {
        }
    }
    return PyErr_GivenExceptionMatches(err, exc_type);
}
static CYTHON_INLINE int __Pyx_PyErr_GivenExceptionMatches2(PyObject *err, PyObject *exc_type1, PyObject *exc_type2) {
    assert(PyExceptionClass_Check(exc_type1));
    assert(PyExceptionClass_Check(exc_type2));
    if (likely(err == exc_type1 || err == exc_type2)) return 1;
    if (likely(PyExceptionClass_Check(err))) {
        return __Pyx_inner_PyErr_GivenExceptionMatches2(err, exc_type1, exc_type2);
    }
    return (PyErr_GivenExceptionMatches(err, exc_type1) || PyErr_GivenExceptionMatches(err, exc_type2));
}
#endif

/* CheckBinaryVersion */
static unsigned long __Pyx_get_runtime_version(void) {
#if __PYX_LIMITED_VERSION_HEX >= 0x030B00A4
    return Py_Version & ~0xFFUL;
#else
    const char* rt_version = Py_GetVersion();
    unsigned long version = 0;
    unsigned long factor = 0x01000000UL;
    unsigned int digit = 0;
    int i = 0;
    while (factor) {
        while ('0' <= rt_version[i] && rt_version[i] <= '9') {
            digit = digit * 10 + (unsigned int) (rt_version[i] - '0');
            ++i;
        }
        version += factor * digit;
        if (rt_version[i] != '.')
            break;
        digit = 0;
        factor >>= 8;
        ++i;
    }
    return version;
#endif
}
static int __Pyx_check_binary_version(unsigned long ct_version, unsigned long rt_version, int allow_newer) {
    const unsigned long MAJOR_MINOR = 0xFFFF0000UL;
    if ((rt_version & MAJOR_MINOR) == (ct_version & MAJOR_MINOR))
        return 0;
    if (likely(allow_newer && (rt_version & MAJOR_MINOR) > (ct_version & MAJOR_MINOR)))
        return 1;
    {
        char message[200];
        PyOS_snprintf(message, sizeof(message),
                      "compile time Python version %d.%d "
                      "of module '%.100s' "
                      "%s "
                      "runtime version %d.%d",
                       (int) (ct_version >> 24), (int) ((ct_version >> 16) & 0xFF),
                       __Pyx_MODULE_NAME,
                       (allow_newer) ? "was newer than" : "does not match",
                       (int) (rt_version >> 24), (int) ((rt_version >> 16) & 0xFF)
       );
        return PyErr_WarnEx(NULL, message, 1);
    }
}

/* FunctionExport */
static int __Pyx_ExportFunction(const char *name, void (*f)(void), const char *sig) {
    PyObject *d = 0;
    PyObject *cobj = 0;
    union {
        void (*fp)(void);
        void *p;
    } tmp;
    d = PyObject_GetAttrString(__pyx_m, (char *)"__pyx_capi__");
    if (!d) {
        PyErr_Clear();
        d = PyDict_New();
        if (!d)
            goto bad;
        Py_INCREF(d);
        if (PyModule_AddObject(__pyx_m, (char *)"__pyx_capi__", d) < 0)
            goto bad;
    }
    tmp.fp = f;
    cobj = PyCapsule_New(tmp.p, sig, 0);
    if (!cobj)
        goto bad;
    if (PyDict_SetItemString(d, name, cobj) < 0)
        goto bad;
    Py_DECREF(cobj);
    Py_DECREF(d);
    return 0;
bad:
    Py_XDECREF(cobj);
    Py_XDECREF(d);
    return -1;
}

/* FunctionImport */
#ifndef __PYX_HAVE_RT_ImportFunction_3_0_7
#define __PYX_HAVE_RT_ImportFunction_3_0_7
static int __Pyx_ImportFunction_3_0_7(PyObject *module, const char *funcname, void (**f)(void), const char *sig) {
    PyObject *d = 0;
    PyObject *cobj = 0;
    union {
        void (*fp)(void);
        void *p;
    } tmp;
    d = PyObject_GetAttrString(module, (char *)"__pyx_capi__");
    if (!d)
        goto bad;
    cobj = PyDict_GetItemString(d, funcname);
    if (!cobj) {
        PyErr_Format(PyExc_ImportError,
            "%.200s does not export expected C function %.200s",
                PyModule_GetName(module), funcname);
        goto bad;
    }
    if (!PyCapsule_IsValid(cobj, sig)) {
        PyErr_Format(PyExc_TypeError,
            "C function %.200s.%.200s has wrong signature (expected %.500s, got %.500s)",
             PyModule_GetName(module), funcname, sig, PyCapsule_GetName(cobj));
        goto bad;
    }
    tmp.p = PyCapsule_GetPointer(cobj, sig);
    *f = tmp.fp;
    if (!(*f))
        goto bad;
    Py_DECREF(d);
    return 0;
bad:
    Py_XDECREF(d);
    return -1;
}
#endif

/* InitStrings */
#if PY_MAJOR_VERSION >= 3
static int __Pyx_InitString(__Pyx_StringTabEntry t, PyObject **str) {
    if (t.is_unicode | t.is_str) {
        if (t.intern) {
            *str = PyUnicode_InternFromString(t.s);
        } else if (t.encoding) {
            *str = PyUnicode_Decode(t.s, t.n - 1, t.encoding, NULL);
        } else {
            *str = PyUnicode_FromStringAndSize(t.s, t.n - 1);
        }
    } else {
        *str = PyBytes_FromStringAndSize(t.s, t.n - 1);
    }
    if (!*str)
        return -1;
    if (PyObject_Hash(*str) == -1)
        return -1;
    return 0;
}
#endif
static int __Pyx_InitStrings(__Pyx_StringTabEntry *t) {
    while (t->p) {
        #if PY_MAJOR_VERSION >= 3
        __Pyx_InitString(*t, t->p);
        #else
        if (t->is_unicode) {
            *t->p = PyUnicode_DecodeUTF8(t->s, t->n - 1, NULL);
        } else if (t->intern) {
            *t->p = PyString_InternFromString(t->s);
        } else {
            *t->p = PyString_FromStringAndSize(t->s, t->n - 1);
        }
        if (!*t->p)
            return -1;
        if (PyObject_Hash(*t->p) == -1)
            return -1;
        #endif
        ++t;
    }
    return 0;
}

#include <string.h>
static CYTHON_INLINE Py_ssize_t __Pyx_ssize_strlen(const char *s) {
    size_t len = strlen(s);
    if (unlikely(len > (size_t) PY_SSIZE_T_MAX)) {
        PyErr_SetString(PyExc_OverflowError, "byte string is too long");
        return -1;
    }
    return (Py_ssize_t) len;
}
static CYTHON_INLINE PyObject* __Pyx_PyUnicode_FromString(const char* c_str) {
    Py_ssize_t len = __Pyx_ssize_strlen(c_str);
    if (unlikely(len < 0)) return NULL;
    return __Pyx_PyUnicode_FromStringAndSize(c_str, len);
}
static CYTHON_INLINE PyObject* __Pyx_PyByteArray_FromString(const char* c_str) {
    Py_ssize_t len = __Pyx_ssize_strlen(c_str);
    if (unlikely(len < 0)) return NULL;
    return PyByteArray_FromStringAndSize(c_str, len);
}
static CYTHON_INLINE const char* __Pyx_PyObject_AsString(PyObject* o) {
    Py_ssize_t ignore;
    return __Pyx_PyObject_AsStringAndSize(o, &ignore);
}
#if __PYX_DEFAULT_STRING_ENCODING_IS_ASCII || __PYX_DEFAULT_STRING_ENCODING_IS_DEFAULT
#if !CYTHON_PEP393_ENABLED
static const char* __Pyx_PyUnicode_AsStringAndSize(PyObject* o, Py_ssize_t *length) {
    char* defenc_c;
    PyObject* defenc = _PyUnicode_AsDefaultEncodedString(o, NULL);
    if (!defenc) return NULL;
    defenc_c = PyBytes_AS_STRING(defenc);
#if __PYX_DEFAULT_STRING_ENCODING_IS_ASCII
    {
        char* end = defenc_c + PyBytes_GET_SIZE(defenc);
        char* c;
        for (c = defenc_c; c < end; c++) {
            if ((unsigned char) (*c) >= 128) {
                PyUnicode_AsASCIIString(o);
                return NULL;
            }
        }
    }
#endif
    *length = PyBytes_GET_SIZE(defenc);
    return defenc_c;
}
#else
static CYTHON_INLINE const char* __Pyx_PyUnicode_AsStringAndSize(PyObject* o, Py_ssize_t *length) {
    if (unlikely(__Pyx_PyUnicode_READY(o) == -1)) return NULL;
#if __PYX_DEFAULT_STRING_ENCODING_IS_ASCII
    if (likely(PyUnicode_IS_ASCII(o))) {
        *length = PyUnicode_GET_LENGTH(o);
        return PyUnicode_AsUTF8(o);
    } else {
        PyUnicode_AsASCIIString(o);
        return NULL;
    }
#else
    return PyUnicode_AsUTF8AndSize(o, length);
#endif
}
#endif
#endif
static CYTHON_INLINE const char* __Pyx_PyObject_AsStringAndSize(PyObject* o, Py_ssize_t *length) {
#if __PYX_DEFAULT_STRING_ENCODING_IS_ASCII || __PYX_DEFAULT_STRING_ENCODING_IS_DEFAULT
    if (
#if PY_MAJOR_VERSION < 3 && __PYX_DEFAULT_STRING_ENCODING_IS_ASCII
            __Pyx_sys_getdefaultencoding_not_ascii &&
#endif
            PyUnicode_Check(o)) {
        return __Pyx_PyUnicode_AsStringAndSize(o, length);
    } else
#endif
#if (!CYTHON_COMPILING_IN_PYPY && !CYTHON_COMPILING_IN_LIMITED_API) || (defined(PyByteArray_AS_STRING) && defined(PyByteArray_GET_SIZE))
    if (PyByteArray_Check(o)) {
        *length = PyByteArray_GET_SIZE(o);
        return PyByteArray_AS_STRING(o);
    } else
#endif
    {
        char* result;
        int r = PyBytes_AsStringAndSize(o, &result, length);
        if (unlikely(r < 0)) {
            return NULL;
        } else {
            return result;
        }
    }
}
static CYTHON_INLINE int __Pyx_PyObject_IsTrue(PyObject* x) {
   int is_true = x == Py_True;
   if (is_true | (x == Py_False) | (x == Py_None)) return is_true;
   else return PyObject_IsTrue(x);
}
static CYTHON_INLINE int __Pyx_PyObject_IsTrueAndDecref(PyObject* x) {
    int retval;
    if (unlikely(!x)) return -1;
    retval = __Pyx_PyObject_IsTrue(x);
    Py_DECREF(x);
    return retval;
}
static PyObject* __Pyx_PyNumber_IntOrLongWrongResultType(PyObject* result, const char* type_name) {
    __Pyx_TypeName result_type_name = __Pyx_PyType_GetName(Py_TYPE(result));
#if PY_MAJOR_VERSION >= 3
    if (PyLong_Check(result)) {
        if (PyErr_WarnFormat(PyExc_DeprecationWarning, 1,
                "__int__ returned non-int (type " __Pyx_FMT_TYPENAME ").  "
                "The ability to return an instance of a strict subclass of int is deprecated, "
                "and may be removed in a future version of Python.",
                result_type_name)) {
            __Pyx_DECREF_TypeName(result_type_name);
            Py_DECREF(result);
            return NULL;
        }
        __Pyx_DECREF_TypeName(result_type_name);
        return result;
    }
#endif
    PyErr_Format(PyExc_TypeError,
                 "__%.4s__ returned non-%.4s (type " __Pyx_FMT_TYPENAME ")",
                 type_name, type_name, result_type_name);
    __Pyx_DECREF_TypeName(result_type_name);
    Py_DECREF(result);
    return NULL;
}
static CYTHON_INLINE PyObject* __Pyx_PyNumber_IntOrLong(PyObject* x) {
#if CYTHON_USE_TYPE_SLOTS
  PyNumberMethods *m;
#endif
  const char *name = NULL;
  PyObject *res = NULL;
#if PY_MAJOR_VERSION < 3
  if (likely(PyInt_Check(x) || PyLong_Check(x)))
#else
  if (likely(PyLong_Check(x)))
#endif
    return __Pyx_NewRef(x);
#if CYTHON_USE_TYPE_SLOTS
  m = Py_TYPE(x)->tp_as_number;
  #if PY_MAJOR_VERSION < 3
  if (m && m->nb_int) {
    name = "int";
    res = m->nb_int(x);
  }
  else if (m && m->nb_long) {
    name = "long";
    res = m->nb_long(x);
  }
  #else
  if (likely(m && m->nb_int)) {
    name = "int";
    res = m->nb_int(x);
  }
  #endif
#else
  if (!PyBytes_CheckExact(x) && !PyUnicode_CheckExact(x)) {
    res = PyNumber_Int(x);
  }
#endif
  if (likely(res)) {
#if PY_MAJOR_VERSION < 3
    if (unlikely(!PyInt_Check(res) && !PyLong_Check(res))) {
#else
    if (unlikely(!PyLong_CheckExact(res))) {
#endif
        return __Pyx_PyNumber_IntOrLongWrongResultType(res, name);
    }
  }
  else if (!PyErr_Occurred()) {
    PyErr_SetString(PyExc_TypeError,
                    "an integer is required");
  }
  return res;
}
static CYTHON_INLINE Py_ssize_t __Pyx_PyIndex_AsSsize_t(PyObject* b) {
  Py_ssize_t ival;
  PyObject *x;
#if PY_MAJOR_VERSION < 3
  if (likely(PyInt_CheckExact(b))) {
    if (sizeof(Py_ssize_t) >= sizeof(long))
        return PyInt_AS_LONG(b);
    else
        return PyInt_AsSsize_t(b);
  }
#endif
  if (likely(PyLong_CheckExact(b))) {
    #if CYTHON_USE_PYLONG_INTERNALS
    if (likely(__Pyx_PyLong_IsCompact(b))) {
        return __Pyx_PyLong_CompactValue(b);
    } else {
      const digit* digits = __Pyx_PyLong_Digits(b);
      const Py_ssize_t size = __Pyx_PyLong_SignedDigitCount(b);
      switch (size) {
         case 2:
           if (8 * sizeof(Py_ssize_t) > 2 * PyLong_SHIFT) {
             return (Py_ssize_t) (((((size_t)digits[1]) << PyLong_SHIFT) | (size_t)digits[0]));
           }
           break;
         case -2:
           if (8 * sizeof(Py_ssize_t) > 2 * PyLong_SHIFT) {
             return -(Py_ssize_t) (((((size_t)digits[1]) << PyLong_SHIFT) | (size_t)digits[0]));
           }
           break;
         case 3:
           if (8 * sizeof(Py_ssize_t) > 3 * PyLong_SHIFT) {
             return (Py_ssize_t) (((((((size_t)digits[2]) << PyLong_SHIFT) | (size_t)digits[1]) << PyLong_SHIFT) | (size_t)digits[0]));
           }
           break;
         case -3:
           if (8 * sizeof(Py_ssize_t) > 3 * PyLong_SHIFT) {
             return -(Py_ssize_t) (((((((size_t)digits[2]) << PyLong_SHIFT) | (size_t)digits[1]) << PyLong_SHIFT) | (size_t)digits[0]));
           }
           break;
         case 4:
           if (8 * sizeof(Py_ssize_t) > 4 * PyLong_SHIFT) {
             return (Py_ssize_t) (((((((((size_t)digits[3]) << PyLong_SHIFT) | (size_t)digits[2]) << PyLong_SHIFT) | (size_t)digits[1]) << PyLong_SHIFT) | (size_t)digits[0]));
           }
           break;
         case -4:
           if (8 * sizeof(Py_ssize_t) > 4 * PyLong_SHIFT) {
             return -(Py_ssize_t) (((((((((size_t)digits[3]) << PyLong_SHIFT) | (size_t)digits[2]) << PyLong_SHIFT) | (size_t)digits[1]) << PyLong_SHIFT) | (size_t)digits[0]));
           }
           break;
      }
    }
    #endif
    return PyLong_AsSsize_t(b);
  }
  x = PyNumber_Index(b);
  if (!x) return -1;
  ival = PyInt_AsSsize_t(x);
  Py_DECREF(x);
  return ival;
}
static CYTHON_INLINE Py_hash_t __Pyx_PyIndex_AsHash_t(PyObject* o) {
  if (sizeof(Py_hash_t) == sizeof(Py_ssize_t)) {
    return (Py_hash_t) __Pyx_PyIndex_AsSsize_t(o);
#if PY_MAJOR_VERSION < 3
  } else if (likely(PyInt_CheckExact(o))) {
    return PyInt_AS_LONG(o);
#endif
  } else {
    Py_ssize_t ival;
    PyObject *x;
    x = PyNumber_Index(o);
    if (!x) return -1;
    ival = PyInt_AsLong(x);
    Py_DECREF(x);
    return ival;
  }
}
static CYTHON_INLINE PyObject * __Pyx_PyBool_FromLong(long b) {
  return b ? __Pyx_NewRef(Py_True) : __Pyx_NewRef(Py_False);
}
static CYTHON_INLINE PyObject * __Pyx_PyInt_FromSize_t(size_t ival) {
    return PyInt_FromSize_t(ival);
}


/* #### Code section: utility_code_pragmas_end ### */
#ifdef _MSC_VER
#pragma warning( pop )
#endif



/* #### Code section: end ### */
#endif /* Py_PYTHON_H */
